Example usage for org.hibernate.cfg Configuration setSessionFactoryObserver

List of usage examples for org.hibernate.cfg Configuration setSessionFactoryObserver

Introduction

In this page you can find the example usage for org.hibernate.cfg Configuration setSessionFactoryObserver.

Prototype

public void setSessionFactoryObserver(SessionFactoryObserver sessionFactoryObserver) 

Source Link

Usage

From source file:Baari.DbAccess.java

public void alustaHibernate() {

    Configuration config = new Configuration().configure("Baari/hibernate.cfg.xml");

    StandardServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
            .applySettings(config.getProperties()).build();

    //StandardServiceRegistryBuilder builder
    //       = new StandardServiceRegistryBuilder().applySettings(config.getProperties());
    istuntotehdas = config.buildSessionFactory(serviceRegistry);

    config.setSessionFactoryObserver(new SessionFactoryObserver() {
        @Override//  w w  w .  java 2 s .com
        public void sessionFactoryCreated(SessionFactory factory) {
        }

        @Override
        public void sessionFactoryClosed(SessionFactory factory) {
            ((StandardServiceRegistryImpl) serviceRegistry).destroy();
        }
    });

    alustettu = true;

}

From source file:com.storenotes.util.HibernateStuff.java

public HibernateStuff() {
    Configuration config = new Configuration();

    config.addAnnotatedClass(com.storenotes.domain.Employee.class);
    config.addAnnotatedClass(com.storenotes.domain.StoreSection.class);
    config.addAnnotatedClass(com.storenotes.domain.Task.class);

    config = config.configure();/*from  ww  w . j av  a  2  s .c om*/

    new SchemaExport(config).create(true, true);

    StandardServiceRegistryBuilder serviceRegistryBuilder = new StandardServiceRegistryBuilder();
    serviceRegistryBuilder.applySettings(config.getProperties());

    final ServiceRegistry serviceRegistry = serviceRegistryBuilder.build();

    config.setSessionFactoryObserver(new SessionFactoryObserver() {
        @Override
        public void sessionFactoryCreated(SessionFactory factory) {
        }

        @Override
        public void sessionFactoryClosed(SessionFactory factory) {
            System.out.println("sessionFactoryClosed()");
            ((StandardServiceRegistryImpl) serviceRegistry).destroy();
        }
    });

    this.sessionFactory = config.buildSessionFactory(serviceRegistry);
}

From source file:org.exoplatform.services.organization.idm.CustomHibernateServiceImpl.java

License:Open Source License

protected SessionFactory buildSessionFactory() {
    Configuration conf = getHibernateConfiguration();

    BootstrapServiceRegistry bootstrapRegistry = createHibernateBootstrapServiceRegistry();

    final ServiceRegistry serviceRegistry = new ServiceRegistryBuilder(bootstrapRegistry)
            .applySettings(conf.getProperties()).buildServiceRegistry();
    conf.setSessionFactoryObserver(new SessionFactoryObserver() {
        @Override//from ww  w  .  j a v a2 s .  c o m
        public void sessionFactoryCreated(SessionFactory factory) {
        }

        @Override
        public void sessionFactoryClosed(SessionFactory factory) {
            ((StandardServiceRegistryImpl) serviceRegistry).destroy();
        }
    });

    final ClassLoader old = SecurityHelper.doPrivilegedAction(new PrivilegedAction<ClassLoader>() {
        public ClassLoader run() {
            return Thread.currentThread().getContextClassLoader();
        }
    });

    try {
        SecurityHelper.doPrivilegedAction(new PrivilegedAction<Void>() {
            public Void run() {
                DelegatingClassLoader cl = new DelegatingClassLoader(old,
                        org.picketlink.idm.api.IdentitySessionFactory.class.getClassLoader());
                Thread.currentThread().setContextClassLoader(cl);
                return null;
            }
        });
        return conf.buildSessionFactory(serviceRegistry);
    } finally {
        if (old != null) {
            SecurityHelper.doPrivilegedAction(new PrivilegedAction<Void>() {
                public Void run() {
                    Thread.currentThread().setContextClassLoader(old);
                    return null;
                }
            });
        }
    }
}