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

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

Introduction

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

Prototype

@SuppressWarnings({ "UnusedDeclaration" })
public StandardServiceRegistryBuilder addInitiator(StandardServiceInitiator initiator) 

Source Link

Document

Adds a service initiator.

Usage

From source file:com.blazebit.persistence.integration.hibernate.Hibernate43Integrator.java

License:Apache License

@Override
public void prepareServices(final StandardServiceRegistryBuilder serviceRegistryBuilder) {
    final StrategySelector strategySelector = serviceRegistryBuilder.getBootstrapServiceRegistry()
            .getService(StrategySelector.class);
    serviceRegistryBuilder.addService(StrategySelector.class, new StrategySelector() {
        @Override//from  www  .  j  av  a2s  .  c o m
        public <T> void registerStrategyImplementor(Class<T> aClass, String s, Class<? extends T> aClass1) {
            strategySelector.registerStrategyImplementor(aClass, s, aClass1);
        }

        @Override
        public <T> void unRegisterStrategyImplementor(Class<T> aClass, Class<? extends T> aClass1) {
            strategySelector.unRegisterStrategyImplementor(aClass, aClass1);
        }

        @Override
        public <T> Class<? extends T> selectStrategyImplementor(Class<T> aClass, String s) {
            return strategySelector.selectStrategyImplementor(aClass, s);
        }

        @Override
        public <T> T resolveStrategy(Class<T> aClass, Object o) {
            if (MultiTableBulkIdStrategy.class == aClass) {
                if (o == null) {
                    ServiceRegistry serviceRegistry = SERVICE_REGISTRY_ACCESS.get();
                    SERVICE_REGISTRY_ACCESS.remove();
                    return (T) new CustomMultiTableBulkIdStrategy(serviceRegistry.getService(JdbcServices.class)
                            .getDialect().supportsTemporaryTables() ? TemporaryTableBulkIdStrategy.INSTANCE
                                    : new PersistentTableBulkIdStrategy());
                } else {
                    LOG.warning(
                            "Can't replace hibernate.hql.bulk_id_strategy because it was overridden by the user with: "
                                    + o);
                }
            }
            return strategySelector.resolveStrategy(aClass, o);
        }

        @Override
        public <T> T resolveDefaultableStrategy(Class<T> aClass, Object o, T t) {
            return strategySelector.resolveDefaultableStrategy(aClass, o, t);
        }
    });
    serviceRegistryBuilder.addInitiator(new StandardServiceInitiator<Database>() {
        @Override
        public Database initiateService(@SuppressWarnings("rawtypes") Map configurationValues,
                ServiceRegistryImplementor registry) {
            return null;
        }

        @Override
        public Class<Database> getServiceInitiated() {
            return Database.class;
        }
    });
}

From source file:com.blazebit.persistence.integration.hibernate.Hibernate52ServiceContributor.java

License:Apache License

@Override
public void contribute(StandardServiceRegistryBuilder serviceRegistryBuilder) {
    serviceRegistryBuilder.addInitiator(new StandardServiceInitiator<Database>() {
        @Override//w w w  . j ava  2  s .c  om
        public Database initiateService(@SuppressWarnings("rawtypes") Map configurationValues,
                ServiceRegistryImplementor registry) {
            return null;
        }

        @Override
        public Class<Database> getServiceInitiated() {
            return Database.class;
        }
    });
}

From source file:com.blazebit.persistence.integration.hibernate.Hibernate5ServiceContributor.java

License:Apache License

@Override
public void contribute(StandardServiceRegistryBuilder serviceRegistryBuilder) {
    serviceRegistryBuilder.addInitiator(new StandardServiceInitiator<Database>() {
        @Override//  w w w.  j a  v a 2 s  . c  om
        public Database initiateService(Map configurationValues, ServiceRegistryImplementor registry) {
            return null;
        }

        @Override
        public Class<Database> getServiceInitiated() {
            return Database.class;
        }
    });
}

From source file:org.audit4j.integration.hibernate.bootstrap.AuditServiceContributor.java

License:Apache License

@Override
public void contribute(StandardServiceRegistryBuilder serviceRegistryBuilder) {
    serviceRegistryBuilder.addInitiator(AuditServiceInitiator.INSTANCE);
}

From source file:org.jboss.as.jpa.hibernate5.service.ServiceContributorImpl.java

License:LGPL

@Override
public void contribute(StandardServiceRegistryBuilder serviceRegistryBuilder) {
    serviceRegistryBuilder.addInitiator(new CustomJtaPlatformInitiator());
    serviceRegistryBuilder.addInitiator(new CustomRegionFactoryInitiator());
}