Example usage for org.hibernate.engine.spi SessionFactoryImplementor getJdbcServices

List of usage examples for org.hibernate.engine.spi SessionFactoryImplementor getJdbcServices

Introduction

In this page you can find the example usage for org.hibernate.engine.spi SessionFactoryImplementor getJdbcServices.

Prototype

JdbcServices getJdbcServices();

Source Link

Document

Get the JdbcServices.

Usage

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

License:Apache License

@Override
public void integrate(Metadata metadata, SessionFactoryImplementor sessionFactory,
        SessionFactoryServiceRegistry serviceRegistry) {
    // TODO: remember metadata for exact column types
    for (PersistentClass clazz : metadata.getEntityBindings()) {
        Class<?> entityClass = clazz.getMappedClass();

        if (entityClass != null && entityClass.isAnnotationPresent(CTE.class)) {
            clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName());
        }//from  w w w .  j  av  a2  s  . c  om
    }

    serviceRegistry.locateServiceBinding(PersisterClassResolver.class)
            .setService(new CustomPersisterClassResolver());
    TableNameFormatter formatter = new NativeTableNameFormatter(
            sessionFactory.getJdbcServices().getJdbcEnvironment().getQualifiedObjectNameFormatter());
    serviceRegistry.locateServiceBinding(Database.class)
            .setService(new SimpleDatabase(getTableIterator(metadata.getDatabase().getNamespaces()),
                    sessionFactory.getDialect(), formatter, metadata));
}

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

License:Apache License

@Override
public void integrate(Metadata metadata, SessionFactoryImplementor sessionFactory,
        SessionFactoryServiceRegistry serviceRegistry) {
    for (PersistentClass clazz : metadata.getEntityBindings()) {
        Class<?> entityClass = clazz.getMappedClass();

        if (entityClass != null && entityClass.isAnnotationPresent(CTE.class)) {
            clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName());
        }/* w  w  w.  j  a v a  2s. c o  m*/
    }

    serviceRegistry.locateServiceBinding(PersisterClassResolver.class)
            .setService(new CustomPersisterClassResolver());
    TableNameFormatter formatter = new NativeTableNameFormatter(
            sessionFactory.getJdbcServices().getJdbcEnvironment().getQualifiedObjectNameFormatter());
    serviceRegistry.locateServiceBinding(Database.class)
            .setService(new SimpleDatabase(getTableIterator(metadata.getDatabase().getNamespaces()),
                    sessionFactory.getDialect(), formatter, metadata));
}

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

License:Apache License

@Override
public void integrate(Metadata metadata, SessionFactoryImplementor sessionFactory,
        SessionFactoryServiceRegistry serviceRegistry) {
    for (PersistentClass clazz : metadata.getEntityBindings()) {
        Class<?> entityClass = clazz.getMappedClass();

        if (entityClass != null && entityClass.isAnnotationPresent(CTE.class)) {
            clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName());
        }/*from ww  w  . j a  v a2  s  .  c o m*/
    }

    serviceRegistry.locateServiceBinding(PersisterClassResolver.class)
            .setService(new CustomPersisterClassResolver());
    TableNameFormatter formatter = new NativeTableNameFormatter(
            sessionFactory.getJdbcServices().getJdbcEnvironment().getQualifiedObjectNameFormatter());
    serviceRegistry.locateServiceBinding(Database.class)
            .setService(new SimpleDatabase(getTableIterator(metadata.getDatabase().getNamespaces()),
                    sessionFactory.getJdbcServices().getDialect(), formatter, metadata));
}