Example usage for org.hibernate.mapping PersistentClass getJpaEntityName

List of usage examples for org.hibernate.mapping PersistentClass getJpaEntityName

Introduction

In this page you can find the example usage for org.hibernate.mapping PersistentClass getJpaEntityName.

Prototype

public String getJpaEntityName() 

Source Link

Usage

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

License:Apache License

@Override
public void integrate(Configuration configuration, SessionFactoryImplementor sessionFactory,
        SessionFactoryServiceRegistry serviceRegistry) {
    Class<?> valuesEntity;//from  w w w. j a  v a2 s.  co  m
    boolean registerValuesEntity = true;
    try {
        valuesEntity = Class.forName("com.blazebit.persistence.impl.function.entity.ValuesEntity");
    } catch (ClassNotFoundException e) {
        throw new RuntimeException("Are you missing blaze-persistence-core-impl on the classpath?", e);
    }

    Iterator<PersistentClass> iter = configuration.getClassMappings();
    while (iter.hasNext()) {
        PersistentClass clazz = iter.next();
        Class<?> entityClass = clazz.getMappedClass();

        if (entityClass != null && entityClass.isAnnotationPresent(CTE.class)) {
            clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName());
        }
    }

    if (registerValuesEntity) {
        // Register values entity if wasn't found
        configuration.addAnnotatedClass(valuesEntity);
        configuration.buildMappings();
        PersistentClass clazz = configuration.getClassMapping(valuesEntity.getName());
        clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName());
    }

    serviceRegistry.locateServiceBinding(PersisterClassResolver.class)
            .setService(new CustomPersisterClassResolver());
    serviceRegistry.locateServiceBinding(Database.class)
            .setService(new SimpleDatabase(configuration.getTableMappings(), sessionFactory.getDialect(),
                    new SimpleTableNameFormatter(), configuration.buildMapping()));
}

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

License:Apache License

@Override
public void integrate(Configuration configuration, SessionFactoryImplementor sessionFactory,
        SessionFactoryServiceRegistry serviceRegistry) {
    Class<?> valuesEntity;/*from   w  ww. j  a  v  a2s. c o  m*/
    boolean registerValuesEntity = true;
    try {
        valuesEntity = Class.forName("com.blazebit.persistence.impl.function.entity.ValuesEntity");
    } catch (ClassNotFoundException e) {
        throw new RuntimeException("Are you missing blaze-persistence-core-impl on the classpath?", e);
    }

    Iterator<PersistentClass> iter = configuration.getClassMappings();
    while (iter.hasNext()) {
        PersistentClass clazz = iter.next();
        Class<?> entityClass = clazz.getMappedClass();
        if (valuesEntity.equals(entityClass)) {
            registerValuesEntity = false;
        }

        if (entityClass != null && entityClass.isAnnotationPresent(CTE.class)) {
            clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName());
        }
    }

    if (registerValuesEntity) {
        // Register values entity if wasn't found
        configuration.addAnnotatedClass(valuesEntity);
        configuration.buildMappings();
        PersistentClass clazz = configuration.getClassMapping(valuesEntity.getName());
        clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName());
    }

    serviceRegistry.locateServiceBinding(PersisterClassResolver.class)
            .setService(new CustomPersisterClassResolver());
    serviceRegistry.locateServiceBinding(Database.class)
            .setService(new SimpleDatabase(configuration.getTableMappings(), sessionFactory.getDialect(),
                    new SimpleTableNameFormatter(), configuration.buildMapping()));
}

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  ww .j a  v  a  2 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());
        }//from   w  w w  . ja va 2  s .  co 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());
        }/*w w w.ja  va2s.  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));
}