Example usage for org.hibernate.boot.registry StandardServiceRegistryBuilder destroy

List of usage examples for org.hibernate.boot.registry StandardServiceRegistryBuilder destroy

Introduction

In this page you can find the example usage for org.hibernate.boot.registry StandardServiceRegistryBuilder destroy.

Prototype

public static void destroy(ServiceRegistry serviceRegistry) 

Source Link

Document

Destroy a service registry.

Usage

From source file:com.sdm.core.hibernate.HibernateConnector.java

public static synchronized void init() {
    LOG.info("Creating new hibernate instance....");
    final StandardServiceRegistry registry = new StandardServiceRegistryBuilder().configure().build();
    try {//from   w  w w .j  a v a 2s.com
        mainFactory = new MetadataSources(registry).buildMetadata().buildSessionFactory();
        instance_count++;
        LOG.info("Current Hibernate Instance Count : " + instance_count);
    } catch (Exception e) {
        LOG.error(e);
        StandardServiceRegistryBuilder.destroy(registry);
        throw e;
    }
}

From source file:com.tremolosecurity.idp.providers.OpenIDConnectIdP.java

License:Apache License

private void initializeHibernate(String driver, String user, String password, String url, String dialect,
        int maxCons, int maxIdleCons, String validationQuery, String mappingFile, String createSchema) {
    StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder();

    Configuration config = new Configuration();
    config.setProperty("hibernate.connection.driver_class", driver);
    config.setProperty("hibernate.connection.password", password);
    config.setProperty("hibernate.connection.url", url);
    config.setProperty("hibernate.connection.username", user);
    config.setProperty("hibernate.dialect", dialect);

    if (createSchema == null || createSchema.equalsIgnoreCase("true")) {
        config.setProperty("hibernate.hbm2ddl.auto", "update");
    }//from w  w  w  . j a va  2 s.c om

    config.setProperty("show_sql", "true");
    config.setProperty("hibernate.current_session_context_class", "thread");

    config.setProperty("hibernate.c3p0.max_size", Integer.toString(maxCons));
    config.setProperty("hibernate.c3p0.maxIdleTimeExcessConnections", Integer.toString(maxIdleCons));

    if (validationQuery != null && !validationQuery.isEmpty()) {
        config.setProperty("hibernate.c3p0.testConnectionOnCheckout", "true");
    }
    config.setProperty("hibernate.c3p0.autoCommitOnClose", "true");

    //config.setProperty("hibernate.c3p0.debugUnreturnedConnectionStackTraces", "true");
    //config.setProperty("hibernate.c3p0.unreturnedConnectionTimeout", "30");

    if (validationQuery == null) {
        validationQuery = "SELECT 1";
    }
    config.setProperty("hibernate.c3p0.preferredTestQuery", validationQuery);

    LoadedConfig lc = null;

    if (mappingFile == null || mappingFile.trim().isEmpty()) {
        JaxbCfgHibernateConfiguration jaxbCfg = new JaxbCfgHibernateConfiguration();
        jaxbCfg.setSessionFactory(new JaxbCfgSessionFactory());

        JaxbCfgMappingReferenceType mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(OIDCSession.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        lc = LoadedConfig.consume(jaxbCfg);
    } else {
        lc = LoadedConfig.baseline();
    }

    StandardServiceRegistry registry = builder.configure(lc).applySettings(config.getProperties()).build();
    try {
        if (mappingFile == null || mappingFile.trim().isEmpty()) {
            sessionFactory = new MetadataSources(registry).buildMetadata().buildSessionFactory();
        } else {
            sessionFactory = new MetadataSources(registry).addResource(mappingFile).buildMetadata()
                    .buildSessionFactory();
        }

        GlobalEntries.getGlobalEntries().getConfigManager().addThread(new StopableThread() {

            @Override
            public void run() {

            }

            @Override
            public void stop() {
                logger.info("Stopping hibernate");
                sessionFactory.close();

            }

        });
    } catch (Exception e) {
        e.printStackTrace();
        // The registry would be destroyed by the SessionFactory, but we had trouble building the SessionFactory
        // so destroy it manually.
        StandardServiceRegistryBuilder.destroy(registry);
    }
}

From source file:com.tremolosecurity.provisioning.core.ProvisioningEngineImpl.java

License:Apache License

private void initializeHibernate(ApprovalDBType adbt) {
    StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder();

    Configuration config = new Configuration();
    config.setProperty("hibernate.connection.driver_class", adbt.getDriver());
    config.setProperty("hibernate.connection.password", adbt.getPassword());
    config.setProperty("hibernate.connection.url", adbt.getUrl());
    config.setProperty("hibernate.connection.username", adbt.getUser());
    config.setProperty("hibernate.dialect", adbt.getHibernateDialect());

    if (adbt.isHibernateCreateSchema() == null || adbt.isHibernateCreateSchema()) {
        config.setProperty("hibernate.hbm2ddl.auto", "update");
    }//from   w  w  w  .  j a  va 2s .  com
    config.setProperty("show_sql", "true");
    config.setProperty("hibernate.current_session_context_class", "thread");

    config.setProperty("hibernate.c3p0.max_size", Integer.toString(adbt.getMaxConns()));
    config.setProperty("hibernate.c3p0.maxIdleTimeExcessConnections", Integer.toString(adbt.getMaxIdleConns()));

    if (adbt.getValidationQuery() != null && !adbt.getValidationQuery().isEmpty()) {
        config.setProperty("hibernate.c3p0.testConnectionOnCheckout", "true");
    }
    config.setProperty("hibernate.c3p0.autoCommitOnClose", "true");

    if (adbt.getHibernateProperty() != null) {
        for (ParamType pt : adbt.getHibernateProperty()) {
            config.setProperty(pt.getName(), pt.getValue());
        }
    }

    //config.setProperty("hibernate.c3p0.debugUnreturnedConnectionStackTraces", "true");
    //config.setProperty("hibernate.c3p0.unreturnedConnectionTimeout", "30");

    String validationQuery = adbt.getValidationQuery();
    if (validationQuery == null) {
        validationQuery = "SELECT 1";
    }
    config.setProperty("hibernate.c3p0.preferredTestQuery", validationQuery);

    LoadedConfig lc = null;

    if (adbt.getHibernateConfig() == null || adbt.getHibernateConfig().trim().isEmpty()) {
        JaxbCfgHibernateConfiguration jaxbCfg = new JaxbCfgHibernateConfiguration();
        jaxbCfg.setSessionFactory(new JaxbCfgSessionFactory());

        JaxbCfgMappingReferenceType mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(AllowedApprovers.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(Approvals.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(ApproverAttributes.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(Approvers.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(AuditLogs.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(AuditLogType.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(Escalation.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(Targets.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(UserAttributes.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(Users.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(WorkflowParameters.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(Workflows.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        lc = LoadedConfig.consume(jaxbCfg);
    } else {
        lc = LoadedConfig.baseline();
    }

    StandardServiceRegistry registry = builder.configure(lc).applySettings(config.getProperties()).build();
    try {
        sessionFactory = null;

        if (adbt.getHibernateConfig() == null || adbt.getHibernateConfig().trim().isEmpty()) {
            sessionFactory = new MetadataSources(registry).buildMetadata().buildSessionFactory();
        } else {

            sessionFactory = new MetadataSources(registry).addResource(adbt.getHibernateConfig())
                    .buildMetadata().buildSessionFactory();
        }

        this.cfgMgr.addThread(new StopableThread() {

            @Override
            public void run() {
                // TODO Auto-generated method stub

            }

            @Override
            public void stop() {
                logger.info("Stopping hibernate");
                sessionFactory.close();

            }

        });

        org.hibernate.Session session = sessionFactory.openSession();

        this.auditLogTypes = new HashMap<String, AuditLogType>();

        List<AuditLogType> alts = session.createCriteria(AuditLogType.class).list();
        if (alts.size() == 0) {
            session.beginTransaction();
            AuditLogType alt = new AuditLogType();
            alt.setName("Add");
            session.save(alt);

            this.auditLogTypes.put("add", alt);

            alt = new AuditLogType();
            alt.setName("Delete");
            session.save(alt);

            this.auditLogTypes.put("delete", alt);

            alt = new AuditLogType();
            alt.setName("Replace");
            session.save(alt);

            this.auditLogTypes.put("replace", alt);

            session.getTransaction().commit();
        } else {
            for (AuditLogType alt : alts) {
                this.auditLogTypes.put(alt.getName().toLowerCase(), alt);
            }
        }

        session.close();

    } catch (Exception e) {
        e.printStackTrace();
        // The registry would be destroyed by the SessionFactory, but we had trouble building the SessionFactory
        // so destroy it manually.
        StandardServiceRegistryBuilder.destroy(registry);
    }
}

From source file:com.tremolosecurity.proxy.auth.PasswordReset.java

License:Apache License

private void initializeHibernate(String driver, String user, String password, String url, String dialect,
        int maxCons, int maxIdleCons, String validationQuery, String mappingFile, String createSchema) {
    StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder();

    Configuration config = new Configuration();
    config.setProperty("hibernate.connection.driver_class", driver);
    config.setProperty("hibernate.connection.password", password);
    config.setProperty("hibernate.connection.url", url);
    config.setProperty("hibernate.connection.username", user);
    config.setProperty("hibernate.dialect", dialect);

    if (createSchema == null || createSchema.equalsIgnoreCase("true")) {
        config.setProperty("hibernate.hbm2ddl.auto", "update");
    }/*  w ww  .j  a v a  2 s  .  co m*/

    config.setProperty("show_sql", "true");
    config.setProperty("hibernate.current_session_context_class", "thread");

    config.setProperty("hibernate.c3p0.max_size", Integer.toString(maxCons));
    config.setProperty("hibernate.c3p0.maxIdleTimeExcessConnections", Integer.toString(maxIdleCons));

    if (validationQuery != null && !validationQuery.isEmpty()) {
        config.setProperty("hibernate.c3p0.testConnectionOnCheckout", "true");
    }

    config.setProperty("hibernate.c3p0.autoCommitOnClose", "true");

    //config.setProperty("hibernate.c3p0.debugUnreturnedConnectionStackTraces", "true");
    //config.setProperty("hibernate.c3p0.unreturnedConnectionTimeout", "30");

    if (validationQuery == null) {
        validationQuery = "SELECT 1";
    }
    config.setProperty("hibernate.c3p0.preferredTestQuery", validationQuery);

    LoadedConfig lc = null;

    if (mappingFile == null || mappingFile.trim().isEmpty()) {

        JaxbCfgHibernateConfiguration jaxbCfg = new JaxbCfgHibernateConfiguration();
        jaxbCfg.setSessionFactory(new JaxbCfgSessionFactory());

        JaxbCfgMappingReferenceType mrt = new JaxbCfgMappingReferenceType();
        mrt.setClazz(PasswordResetRequest.class.getName());
        jaxbCfg.getSessionFactory().getMapping().add(mrt);

        lc = LoadedConfig.consume(jaxbCfg);
    } else {
        lc = LoadedConfig.baseline();
    }

    StandardServiceRegistry registry = builder.configure(lc).applySettings(config.getProperties()).build();
    try {
        sessionFactory = null;

        if (mappingFile == null || mappingFile.trim().isEmpty()) {
            sessionFactory = new MetadataSources(registry).buildMetadata().buildSessionFactory();
        } else {
            sessionFactory = new MetadataSources(registry).addResource(mappingFile).buildMetadata()
                    .buildSessionFactory();
        }

        this.cfgMgr.addThread(new StopableThread() {

            @Override
            public void run() {
                // TODO Auto-generated method stub

            }

            @Override
            public void stop() {
                logger.info("Stopping hibernate");
                sessionFactory.close();

            }

        });
    } catch (Exception e) {
        e.printStackTrace();
        // The registry would be destroyed by the SessionFactory, but we had trouble building the SessionFactory
        // so destroy it manually.
        StandardServiceRegistryBuilder.destroy(registry);
    }
}

From source file:damhibgym.NewHibernateUtil.java

public static void close() {
    StandardServiceRegistryBuilder.destroy(serviceRegistry);
}

From source file:dani.java.examenm06uf4.controller.DirectorDAO.java

void closeRegistry() {
    if (serviceRegistry != null) {
        StandardServiceRegistryBuilder.destroy(serviceRegistry);
    }
}

From source file:ee.ria.xroad.common.db.HibernateUtil.java

License:Open Source License

private static void closeSessionFactory(SessionFactoryCtx ctx) {
    try {/*from ww w .j a va 2  s.  com*/
        ctx.getSessionFactory().getCurrentSession().close();
    } catch (HibernateException e) {
        log.error("Error closing session", e);
    }

    try {
        ctx.getSessionFactory().close();
    } catch (HibernateException e) {
        log.error("Error closing session factory", e);
    }

    StandardServiceRegistryBuilder.destroy(ctx.getServiceRegistry());
}

From source file:erufu.wizardo.rawsviewer.db.HibernateUtil.java

private static SessionFactory init() {
    final StandardServiceRegistry registry = new StandardServiceRegistryBuilder().configure() // configures settings from hibernate.cfg.xml
            .build();//from w w w  .j a  va 2 s. c o m
    try {
        return new MetadataSources(registry).buildMetadata().buildSessionFactory();
    } catch (Exception e) {
        StandardServiceRegistryBuilder.destroy(registry);
        throw new RuntimeException(e);
    }

}

From source file:hibis.tester.Tester.java

License:Open Source License

@Override
protected void setUp() throws Exception {
    // A SessionFactory is set up once for an application!
    final StandardServiceRegistry registry = new StandardServiceRegistryBuilder().configure() // configures
            // settings
            // from
            // hibernate.cfg.xml
            .build();/*w ww  . j a  v  a  2  s. c o  m*/
    try {
        sessionFactory = new MetadataSources(registry).buildMetadata().buildSessionFactory();
    } catch (Exception e) {
        // The registry would be destroyed by the SessionFactory, but we had
        // trouble building the SessionFactory
        // so destroy it manually.
        System.err.println(e.getMessage());
        StandardServiceRegistryBuilder.destroy(registry);
    }
}

From source file:it.scrs.miner.util.DbSession.java

public static void destroyService() {
    StandardServiceRegistryBuilder.destroy(se.getSessionFactoryOptions().getServiceRegistry());
}