test_class.declarator: sessionFactory
test_class.modifier: private
test_class.original_string: private SessionFactory sessionFactory;
test_class.type: SessionFactory
test_class.var_name: sessionFactory
test_class.declarator: session
test_class.modifier: private
test_class.original_string: private Session session;
test_class.type: Session
test_class.var_name: session
test_class.file: dddlib-persistence/dddlib-persistence-hibernate/src/test/java/org/dayatang/persistence/hibernate/SessionProviderTest.java
test_class.identifier: SessionProviderTest
test_case.body: @Test
      public void testConstructorSessionFactory() {
          SessionProvider instance = new SessionProvider(sessionFactory);
          Session session2 = instance.getSession();
          assertSame(session2, session);
          Session session3 = instance.getSession();
          assertSame(session3, session);
      }
test_case.class_method_signature: SessionProviderTest.testConstructorSessionFactory()
test_case.full_signature: @Test public void testConstructorSessionFactory()
test_case.identifier: testConstructorSessionFactory
test_case.invocations: getSession assertSame getSession assertSame
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testConstructorSessionFactory()
focal_class.declarator: sessionHolder = new ThreadLocal<Session>()
focal_class.modifier: private final
focal_class.original_string: private final ThreadLocal<Session> sessionHolder = new ThreadLocal<Session>();
focal_class.type: ThreadLocal<Session>
focal_class.var_name: sessionHolder
focal_class.declarator: sessionFactory
focal_class.modifier: private
focal_class.original_string: private SessionFactory sessionFactory;
focal_class.type: SessionFactory
focal_class.var_name: sessionFactory
focal_class.file: dddlib-persistence/dddlib-persistence-hibernate/src/main/java/org/dayatang/persistence/hibernate/SessionProvider.java
focal_class.identifier: SessionProvider
focal_class.class_method_signature: SessionProvider.SessionProvider()
focal_class.full_signature: public  SessionProvider()
focal_class.identifier: SessionProvider
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  SessionProvider()
focal_class.class_method_signature: SessionProvider.SessionProvider(Session session)
focal_class.full_signature: public  SessionProvider(Session session)
focal_class.identifier: SessionProvider
focal_class.modifiers: public
focal_class.parameters: (Session session)
focal_class.signature:  SessionProvider(Session session)
focal_class.class_method_signature: SessionProvider.SessionProvider(SessionFactory sessionFactory)
focal_class.full_signature: public  SessionProvider(SessionFactory sessionFactory)
focal_class.identifier: SessionProvider
focal_class.modifiers: public
focal_class.parameters: (SessionFactory sessionFactory)
focal_class.signature:  SessionProvider(SessionFactory sessionFactory)
focal_class.class_method_signature: SessionProvider.getSession()
focal_class.full_signature: public Session getSession()
focal_class.identifier: getSession
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Session
focal_class.signature: Session getSession()
focal_class.class_method_signature: SessionProvider.getSessionFromIoC()
focal_class.full_signature: private Session getSessionFromIoC()
focal_class.identifier: getSessionFromIoC
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: Session
focal_class.signature: Session getSessionFromIoC()
focal_method.body: public Session getSession() {
          Session result = sessionHolder.get();
          if (result != null && result.isOpen()) {
              return result;
          }
          result = getSessionFromIoC();
          sessionHolder.set(result);
          return result;
      }
focal_method.class_method_signature: SessionProvider.getSession()
focal_method.full_signature: public Session getSession()
focal_method.identifier: getSession
focal_method.invocations: get isOpen getSessionFromIoC set
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: Session
focal_method.signature: Session getSession()