Example usage for org.hibernate.boot.spi MetadataBuildingOptions getServiceRegistry

List of usage examples for org.hibernate.boot.spi MetadataBuildingOptions getServiceRegistry

Introduction

In this page you can find the example usage for org.hibernate.boot.spi MetadataBuildingOptions getServiceRegistry.

Prototype

StandardServiceRegistry getServiceRegistry();

Source Link

Document

Access to the service registry.

Usage

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

License:Apache License

@Override
public void contribute(InFlightMetadataCollector metadataCollector, IndexView jandexIndex) {
    ServiceBinding.ServiceLifecycleOwner lifecycleOwner = (ServiceBinding.ServiceLifecycleOwner) metadataCollector
            .getMetadataBuildingOptions().getServiceRegistry();
    lifecycleOwner// w ww  .  j  av a 2s .c o m
            .configureService(new ServiceBinding<>(lifecycleOwner, Hibernate52MetadataContributor.class, this));
    Object existingStrategy = configurationValues.get("hibernate.hql.bulk_id_strategy");
    if (existingStrategy == null) {
        JdbcServices jdbcService = metadataCollector.getMetadataBuildingOptions().getServiceRegistry()
                .getService(JdbcServices.class);
        MultiTableBulkIdStrategy defaultMultiTableBulkIdStrategy = jdbcService.getDialect()
                .getDefaultMultiTableBulkIdStrategy();
        configurationValues.put("hibernate.hql.bulk_id_strategy",
                new CustomMultiTableBulkIdStrategy(defaultMultiTableBulkIdStrategy));
    } else {
        LOG.warning("Can't replace hibernate.hql.bulk_id_strategy because it was overridden by the user with: "
                + existingStrategy);
    }
    // Skip if already registered
    if (metadataCollector
            .getEntityBinding("com.blazebit.persistence.impl.function.entity.ValuesEntity") != null) {
        return;
    }

    MetadataBuildingOptions options = metadataCollector.getMetadataBuildingOptions();
    final ClassLoaderService classLoaderService = options.getServiceRegistry()
            .getService(ClassLoaderService.class);

    final ClassLoaderAccess classLoaderAccess = new ClassLoaderAccessImpl(options.getTempClassLoader(),
            classLoaderService);

    MetadataBuildingContext metadataBuildingContext = new MetadataBuildingContextRootImpl(options,
            classLoaderAccess, metadataCollector);

    addEntity("com.blazebit.persistence.impl.function.entity.ValuesEntity", metadataBuildingContext);
}

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

License:Apache License

@Override
public void contribute(InFlightMetadataCollector metadataCollector, IndexView jandexIndex) {
    ServiceBinding.ServiceLifecycleOwner lifecycleOwner = (ServiceBinding.ServiceLifecycleOwner) metadataCollector
            .getMetadataBuildingOptions().getServiceRegistry();
    lifecycleOwner// w  ww .  j a va  2s .  c om
            .configureService(new ServiceBinding<>(lifecycleOwner, Hibernate5MetadataContributor.class, this));
    Object existingStrategy = configurationValues.get("hibernate.hql.bulk_id_strategy");
    if (existingStrategy == null) {
        JdbcServices jdbcService = metadataCollector.getMetadataBuildingOptions().getServiceRegistry()
                .getService(JdbcServices.class);
        MultiTableBulkIdStrategy defaultMultiTableBulkIdStrategy = jdbcService.getDialect()
                .getDefaultMultiTableBulkIdStrategy();
        configurationValues.put("hibernate.hql.bulk_id_strategy",
                new CustomMultiTableBulkIdStrategy(defaultMultiTableBulkIdStrategy));
    } else {
        LOG.warning("Can't replace hibernate.hql.bulk_id_strategy because it was overridden by the user with: "
                + existingStrategy);
    }
    // Skip if already registered
    if (metadataCollector
            .getEntityBinding("com.blazebit.persistence.impl.function.entity.ValuesEntity") != null) {
        return;
    }

    MetadataBuildingOptions options = metadataCollector.getMetadataBuildingOptions();
    final ClassLoaderService classLoaderService = options.getServiceRegistry()
            .getService(ClassLoaderService.class);

    final ClassLoaderAccess classLoaderAccess = new ClassLoaderAccessImpl(options.getTempClassLoader(),
            classLoaderService);

    MetadataBuildingContext metadataBuildingContext = new MetadataBuildingContextRootImpl(options,
            classLoaderAccess, metadataCollector);

    addEntity("com.blazebit.persistence.impl.function.entity.ValuesEntity", metadataBuildingContext);
}

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

License:Apache License

@Override
public void contribute(InFlightMetadataCollector metadataCollector, IndexView jandexIndex) {
    // Skip if already registered
    if (metadataCollector
            .getEntityBinding("com.blazebit.persistence.impl.function.entity.ValuesEntity") != null) {
        return;//  www  .  j  a  va2 s . c  o m
    }

    MetadataBuildingOptions options = metadataCollector.getMetadataBuildingOptions();
    final ClassLoaderService classLoaderService = options.getServiceRegistry()
            .getService(ClassLoaderService.class);

    final ClassLoaderAccess classLoaderAccess = new ClassLoaderAccessImpl(options.getTempClassLoader(),
            classLoaderService);

    MetadataBuildingContext metadataBuildingContext = new MetadataBuildingContextRootImpl(options,
            classLoaderAccess, metadataCollector);

    addEntity("com.blazebit.persistence.impl.function.entity.ValuesEntity", metadataBuildingContext);
}

From source file:org.grails.orm.hibernate.cfg.GrailsDomainBinder.java

License:Apache License

@Override
public void contribute(InFlightMetadataCollector metadataCollector, IndexView jandexIndex) {
    MetadataBuildingOptions options = metadataCollector.getMetadataBuildingOptions();
    ClassLoaderService classLoaderService = options.getServiceRegistry().getService(ClassLoaderService.class);

    final ClassLoaderAccess classLoaderAccess = new ClassLoaderAccessImpl(options.getTempClassLoader(),
            classLoaderService);//w w  w  .  j a v  a  2s  . c  o  m

    this.metadataBuildingContext = new MetadataBuildingContextRootImpl(options, classLoaderAccess,
            metadataCollector);

    java.util.Collection<PersistentEntity> persistentEntities = hibernateMappingContext.getPersistentEntities();
    for (PersistentEntity persistentEntity : persistentEntities) {
        if (!persistentEntity.getJavaClass().isAnnotationPresent(Entity.class)) {
            if (ConnectionSourcesSupport.usesConnectionSource(persistentEntity, dataSourceName)
                    && persistentEntity.isRoot()) {
                bindRoot((HibernatePersistentEntity) persistentEntity, metadataCollector, sessionFactoryName);
            }
        }
    }
}