test_class.declarator: manager
test_class.modifier: private
test_class.original_string: private SessionManager manager;
test_class.type: SessionManager
test_class.var_name: manager
test_class.declarator: repository
test_class.modifier: private
test_class.original_string: private SessionRepository repository;
test_class.type: SessionRepository
test_class.var_name: repository
test_class.declarator: notifier
test_class.modifier: private
test_class.original_string: private SessionNotifier notifier;
test_class.type: SessionNotifier
test_class.var_name: notifier
test_class.declarator: sessionConfiguration
test_class.modifier: private
test_class.original_string: private SessionConfiguration sessionConfiguration;
test_class.type: SessionConfiguration
test_class.var_name: sessionConfiguration
test_class.declarator: sessionData
test_class.modifier: private
test_class.original_string: private SessionData sessionData;
test_class.type: SessionData
test_class.var_name: sessionData
test_class.declarator: factory
test_class.modifier: private
test_class.original_string: private SessionFactory factory;
test_class.type: SessionFactory
test_class.var_name: factory
test_class.declarator: transaction
test_class.modifier: private
test_class.original_string: private CommitTransaction transaction;
test_class.type: CommitTransaction
test_class.var_name: transaction
test_class.file: session-replacement/src/test/java/com/amadeus/session/TestRepositoryBackedSession.java
test_class.identifier: TestRepositoryBackedSession
test_case.body: @Test
    public void testGetAttributeNamesWithValues() {
      RepositoryBackedSession rbs = new RepositoryBackedSession(sessionData, manager, factory);
      rbs.setAttribute("Test", "value");
      rbs.setAttribute("TestChanged", "valueOriginal");
      rbs.setAttribute("TestChanged", "valueFinal");
      rbs.setAttribute("TestToDelete", "value");
      rbs.removeAttribute("TestToDelete");
      List<String> list = rbs.getAttributeNamesWithValues();
      assertThat(list, hasItems("Test", "TestChanged"));
      assertThat(list, not(hasItems("TestToDelete")));
    }
test_case.class_method_signature: TestRepositoryBackedSession.testGetAttributeNamesWithValues()
test_case.full_signature: @Test public void testGetAttributeNamesWithValues()
test_case.identifier: testGetAttributeNamesWithValues
test_case.invocations: setAttribute setAttribute setAttribute setAttribute removeAttribute getAttributeNamesWithValues assertThat hasItems assertThat not hasItems
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testGetAttributeNamesWithValues()
focal_class.declarator: logger = LoggerFactory.getLogger(RepositoryBackedSession.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger logger = LoggerFactory.getLogger(RepositoryBackedSession.class);
focal_class.type: Logger
focal_class.var_name: logger
focal_class.declarator: invalid
focal_class.modifier: private
focal_class.original_string: private boolean invalid;
focal_class.type: boolean
focal_class.var_name: invalid
focal_class.declarator: invalidateOnCommit
focal_class.modifier: private
focal_class.original_string: private boolean invalidateOnCommit;
focal_class.type: boolean
focal_class.var_name: invalidateOnCommit
focal_class.declarator: sessionData
focal_class.modifier: private final
focal_class.original_string: private final SessionData sessionData;
focal_class.type: SessionData
focal_class.var_name: sessionData
focal_class.declarator: committer
focal_class.modifier: private final
focal_class.original_string: private final Committer committer;
focal_class.type: Committer
focal_class.var_name: committer
focal_class.declarator: concurrentUses
focal_class.modifier: private final
focal_class.original_string: private final AtomicInteger concurrentUses;
focal_class.type: AtomicInteger
focal_class.var_name: concurrentUses
focal_class.declarator: lockedForUse
focal_class.modifier: private final
focal_class.original_string: private final AtomicBoolean lockedForUse;
focal_class.type: AtomicBoolean
focal_class.var_name: lockedForUse
focal_class.declarator: forceCommit
focal_class.modifier: private final
focal_class.original_string: private final boolean forceCommit;
focal_class.type: boolean
focal_class.var_name: forceCommit
focal_class.declarator: manager
focal_class.modifier: protected final
focal_class.original_string: protected final SessionManager manager;
focal_class.type: SessionManager
focal_class.var_name: manager
focal_class.declarator: replicateOnGet
focal_class.modifier: private final
focal_class.original_string: private final boolean replicateOnGet;
focal_class.type: boolean
focal_class.var_name: replicateOnGet
focal_class.declarator: attrs
focal_class.modifier: protected final
focal_class.original_string: protected final ConcurrentHashMap<String, Attribute> attrs;
focal_class.type: ConcurrentHashMap<String, Attribute>
focal_class.var_name: attrs
focal_class.declarator: dirty
focal_class.modifier: private
focal_class.original_string: private boolean dirty;
focal_class.type: boolean
focal_class.var_name: dirty
focal_class.declarator: committed
focal_class.modifier: private
focal_class.original_string: private boolean committed;
focal_class.type: boolean
focal_class.var_name: committed
focal_class.declarator: factory
focal_class.modifier: private
focal_class.original_string: private SessionFactory factory;
focal_class.type: SessionFactory
focal_class.var_name: factory
focal_class.file: session-replacement/src/main/java/com/amadeus/session/RepositoryBackedSession.java
focal_class.identifier: RepositoryBackedSession
focal_class.class_method_signature: RepositoryBackedSession.RepositoryBackedSession(SessionData sessionData, SessionManager manager, SessionFactory factory)
focal_class.full_signature: public  RepositoryBackedSession(SessionData sessionData, SessionManager manager, SessionFactory factory)
focal_class.identifier: RepositoryBackedSession
focal_class.modifiers: public
focal_class.parameters: (SessionData sessionData, SessionManager manager, SessionFactory factory)
focal_class.signature:  RepositoryBackedSession(SessionData sessionData, SessionManager manager, SessionFactory factory)
focal_class.class_method_signature: RepositoryBackedSession.RepositoryBackedSession(RepositoryBackedSession linked)
focal_class.full_signature: protected  RepositoryBackedSession(RepositoryBackedSession linked)
focal_class.identifier: RepositoryBackedSession
focal_class.modifiers: protected
focal_class.parameters: (RepositoryBackedSession linked)
focal_class.signature:  RepositoryBackedSession(RepositoryBackedSession linked)
focal_class.class_method_signature: RepositoryBackedSession.setMaxInactiveInterval(int maxInactiveInterval)
focal_class.full_signature: public void setMaxInactiveInterval(int maxInactiveInterval)
focal_class.identifier: setMaxInactiveInterval
focal_class.modifiers: public
focal_class.parameters: (int maxInactiveInterval)
focal_class.return: void
focal_class.signature: void setMaxInactiveInterval(int maxInactiveInterval)
focal_class.class_method_signature: RepositoryBackedSession.getAttribute(String key)
focal_class.full_signature: public Object getAttribute(String key)
focal_class.identifier: getAttribute
focal_class.modifiers: public
focal_class.parameters: (String key)
focal_class.return: Object
focal_class.signature: Object getAttribute(String key)
focal_class.class_method_signature: RepositoryBackedSession.replicateOnGet(Object obj)
focal_class.full_signature:  boolean replicateOnGet(Object obj)
focal_class.identifier: replicateOnGet
focal_class.parameters: (Object obj)
focal_class.return: boolean
focal_class.signature: boolean replicateOnGet(Object obj)
focal_class.class_method_signature: RepositoryBackedSession.isImmutableType(Object obj)
focal_class.full_signature: static boolean isImmutableType(Object obj)
focal_class.identifier: isImmutableType
focal_class.modifiers: static
focal_class.parameters: (Object obj)
focal_class.return: boolean
focal_class.signature: boolean isImmutableType(Object obj)
focal_class.class_method_signature: RepositoryBackedSession.getAttributeNames()
focal_class.full_signature: @SuppressWarnings({ "rawtypes" }) public Enumeration getAttributeNames()
focal_class.identifier: getAttributeNames
focal_class.modifiers: @SuppressWarnings({ "rawtypes" }) public
focal_class.parameters: ()
focal_class.return: Enumeration
focal_class.signature: Enumeration getAttributeNames()
focal_class.class_method_signature: RepositoryBackedSession.getAttributeNamesWithValues()
focal_class.full_signature: public List<String> getAttributeNamesWithValues()
focal_class.identifier: getAttributeNamesWithValues
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: List<String>
focal_class.signature: List<String> getAttributeNamesWithValues()
focal_class.class_method_signature: RepositoryBackedSession.getCreationTime()
focal_class.full_signature: public long getCreationTime()
focal_class.identifier: getCreationTime
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: long
focal_class.signature: long getCreationTime()
focal_class.class_method_signature: RepositoryBackedSession.getId()
focal_class.full_signature: public String getId()
focal_class.identifier: getId
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getId()
focal_class.class_method_signature: RepositoryBackedSession.getLastAccessedTime()
focal_class.full_signature: public long getLastAccessedTime()
focal_class.identifier: getLastAccessedTime
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: long
focal_class.signature: long getLastAccessedTime()
focal_class.class_method_signature: RepositoryBackedSession.getMaxInactiveInterval()
focal_class.full_signature: public int getMaxInactiveInterval()
focal_class.identifier: getMaxInactiveInterval
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getMaxInactiveInterval()
focal_class.class_method_signature: RepositoryBackedSession.invalidate()
focal_class.full_signature: public void invalidate()
focal_class.identifier: invalidate
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void invalidate()
focal_class.class_method_signature: RepositoryBackedSession.doInvalidate(boolean expired)
focal_class.full_signature: public void doInvalidate(boolean expired)
focal_class.identifier: doInvalidate
focal_class.modifiers: public
focal_class.parameters: (boolean expired)
focal_class.return: void
focal_class.signature: void doInvalidate(boolean expired)
focal_class.class_method_signature: RepositoryBackedSession.invalidateOrNotify(boolean expired)
focal_class.full_signature: private boolean invalidateOrNotify(boolean expired)
focal_class.identifier: invalidateOrNotify
focal_class.modifiers: private
focal_class.parameters: (boolean expired)
focal_class.return: boolean
focal_class.signature: boolean invalidateOrNotify(boolean expired)
focal_class.class_method_signature: RepositoryBackedSession.isUsed()
focal_class.full_signature: private boolean isUsed()
focal_class.identifier: isUsed
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isUsed()
focal_class.class_method_signature: RepositoryBackedSession.wipeInvalidSession()
focal_class.full_signature:  void wipeInvalidSession()
focal_class.identifier: wipeInvalidSession
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void wipeInvalidSession()
focal_class.class_method_signature: RepositoryBackedSession.finishInvalidation(boolean canRemove)
focal_class.full_signature: private void finishInvalidation(boolean canRemove)
focal_class.identifier: finishInvalidation
focal_class.modifiers: private
focal_class.parameters: (boolean canRemove)
focal_class.return: void
focal_class.signature: void finishInvalidation(boolean canRemove)
focal_class.class_method_signature: RepositoryBackedSession.getAllRepositoryKeys()
focal_class.full_signature: private Set<String> getAllRepositoryKeys()
focal_class.identifier: getAllRepositoryKeys
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: Set<String>
focal_class.signature: Set<String> getAllRepositoryKeys()
focal_class.class_method_signature: RepositoryBackedSession.loadAllAttributes()
focal_class.full_signature: private void loadAllAttributes()
focal_class.identifier: loadAllAttributes
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void loadAllAttributes()
focal_class.class_method_signature: RepositoryBackedSession.retrieveAttribute(String key, Attribute attribute)
focal_class.full_signature: private Attribute retrieveAttribute(String key, Attribute attribute)
focal_class.identifier: retrieveAttribute
focal_class.modifiers: private
focal_class.parameters: (String key, Attribute attribute)
focal_class.return: Attribute
focal_class.signature: Attribute retrieveAttribute(String key, Attribute attribute)
focal_class.class_method_signature: RepositoryBackedSession.isNew()
focal_class.full_signature: public boolean isNew()
focal_class.identifier: isNew
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isNew()
focal_class.class_method_signature: RepositoryBackedSession.removeAttribute(String name)
focal_class.full_signature: public void removeAttribute(String name)
focal_class.identifier: removeAttribute
focal_class.modifiers: public
focal_class.parameters: (String name)
focal_class.return: void
focal_class.signature: void removeAttribute(String name)
focal_class.class_method_signature: RepositoryBackedSession.getAttributeFromCache(String name)
focal_class.full_signature: public Attribute getAttributeFromCache(String name)
focal_class.identifier: getAttributeFromCache
focal_class.modifiers: public
focal_class.parameters: (String name)
focal_class.return: Attribute
focal_class.signature: Attribute getAttributeFromCache(String name)
focal_class.class_method_signature: RepositoryBackedSession.setAttribute(String key, Object value)
focal_class.full_signature: public void setAttribute(String key, Object value)
focal_class.identifier: setAttribute
focal_class.modifiers: public
focal_class.parameters: (String key, Object value)
focal_class.return: void
focal_class.signature: void setAttribute(String key, Object value)
focal_class.class_method_signature: RepositoryBackedSession.assertValid()
focal_class.full_signature: private void assertValid()
focal_class.identifier: assertValid
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void assertValid()
focal_class.class_method_signature: RepositoryBackedSession.commit()
focal_class.full_signature: public synchronized void commit()
focal_class.identifier: commit
focal_class.modifiers: public synchronized
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void commit()
focal_class.class_method_signature: RepositoryBackedSession.checkUsedAndLock()
focal_class.full_signature:  boolean checkUsedAndLock()
focal_class.identifier: checkUsedAndLock
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean checkUsedAndLock()
focal_class.class_method_signature: RepositoryBackedSession.committed()
focal_class.full_signature: protected void committed()
focal_class.identifier: committed
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void committed()
focal_class.class_method_signature: RepositoryBackedSession.isValid()
focal_class.full_signature: public boolean isValid()
focal_class.identifier: isValid
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isValid()
focal_class.class_method_signature: RepositoryBackedSession.isExpired()
focal_class.full_signature: public boolean isExpired()
focal_class.identifier: isExpired
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isExpired()
focal_class.class_method_signature: RepositoryBackedSession.isDirty()
focal_class.full_signature: public boolean isDirty()
focal_class.identifier: isDirty
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isDirty()
focal_class.class_method_signature: RepositoryBackedSession.getCommitter()
focal_class.full_signature: public Runnable getCommitter()
focal_class.identifier: getCommitter
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Runnable
focal_class.signature: Runnable getCommitter()
focal_class.class_method_signature: RepositoryBackedSession.getSessionData()
focal_class.full_signature: public SessionData getSessionData()
focal_class.identifier: getSessionData
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: SessionData
focal_class.signature: SessionData getSessionData()
focal_class.class_method_signature: RepositoryBackedSession.isCommitted()
focal_class.full_signature: public boolean isCommitted()
focal_class.identifier: isCommitted
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isCommitted()
focal_class.class_method_signature: RepositoryBackedSession.setCommitted(boolean committed)
focal_class.full_signature: public void setCommitted(boolean committed)
focal_class.identifier: setCommitted
focal_class.modifiers: public
focal_class.parameters: (boolean committed)
focal_class.return: void
focal_class.signature: void setCommitted(boolean committed)
focal_class.class_method_signature: RepositoryBackedSession.getSessionManager()
focal_class.full_signature: public SessionManager getSessionManager()
focal_class.identifier: getSessionManager
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: SessionManager
focal_class.signature: SessionManager getSessionManager()
focal_class.class_method_signature: RepositoryBackedSession.getConcurrentUses()
focal_class.full_signature: public int getConcurrentUses()
focal_class.identifier: getConcurrentUses
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getConcurrentUses()
focal_method.body: public List<String> getAttributeNamesWithValues() {
      ArrayList<String> keys = new ArrayList<>(attrs.size());
      for (Map.Entry<String, Attribute> entry : attrs.entrySet()) {
        if (entry.getValue().value != null) {
          keys.add(entry.getKey());
        }
      }
      return keys;
    }
focal_method.class_method_signature: RepositoryBackedSession.getAttributeNamesWithValues()
focal_method.full_signature: public List<String> getAttributeNamesWithValues()
focal_method.identifier: getAttributeNamesWithValues
focal_method.invocations: size entrySet getValue add getKey
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: List<String>
focal_method.signature: List<String> getAttributeNamesWithValues()