Example usage for org.hibernate.boot.spi InFlightMetadataCollector addImport

List of usage examples for org.hibernate.boot.spi InFlightMetadataCollector addImport

Introduction

In this page you can find the example usage for org.hibernate.boot.spi InFlightMetadataCollector addImport.

Prototype

void addImport(String entityName, String rename) throws DuplicateMappingException;

Source Link

Document

Adds an import (HQL entity rename).

Usage

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

License:Apache License

/**
 * Binds the specified persistant class to the runtime model based on the
 * properties defined in the domain class
 *
 * @param domainClass     The Grails domain class
 * @param persistentClass The persistant class
 * @param mappings        Existing mappings
 *//*from   w  w  w.j  a  v  a 2  s  . co m*/
protected void bindClass(PersistentEntity domainClass, PersistentClass persistentClass,
        InFlightMetadataCollector mappings) {

    // set lazy loading for now
    persistentClass.setLazy(true);
    final String entityName = domainClass.getName();
    persistentClass.setEntityName(entityName);
    persistentClass.setJpaEntityName(unqualify(entityName));
    persistentClass.setProxyInterfaceName(entityName);
    persistentClass.setClassName(entityName);
    persistentClass.addTuplizer(EntityMode.POJO, GroovyAwarePojoEntityTuplizer.class.getName());

    // set dynamic insert to false
    persistentClass.setDynamicInsert(false);
    // set dynamic update to false
    persistentClass.setDynamicUpdate(false);
    // set select before update to false
    persistentClass.setSelectBeforeUpdate(false);

    // add import to mappings
    String en = persistentClass.getEntityName();
    if (mappings.getMetadataBuildingOptions().getMappingDefaults().isAutoImportEnabled()
            && en.indexOf('.') > 0) {
        String unqualified = unqualify(en);
        mappings.addImport(unqualified, en);
    }
}