Example usage for javax.persistence EntityManagerFactory toString

List of usage examples for javax.persistence EntityManagerFactory toString

Introduction

In this page you can find the example usage for javax.persistence EntityManagerFactory toString.

Prototype

public String toString() 

Source Link

Document

Returns a string representation of the object.

Usage

From source file:fr.paris.lutece.portal.service.jpa.JPAStartupService.java

/**
 * Initialize JPA objects (Datasource, Persistence Unit Manager, Entity Manager Factory,
 * Transaction Manager) for each pool./* ww w.  j  av a  2  s. c o m*/
 */
public void process() {
    ReferenceList list = new ReferenceList();
    AppConnectionService.getPoolList(list);

    Map<String, EntityManagerFactory> mapFactories = new HashMap<String, EntityManagerFactory>();
    List<PlatformTransactionManager> listTransactionManagers = new ArrayList<PlatformTransactionManager>();
    _log.info("JPA Startup Service : Initializing JPA objects ...");

    String strDialectProperty = AppPropertiesService.getProperty(JPA_DIALECT_PROPERTY);

    for (ReferenceItem poolItem : list) {
        String strPoolname = poolItem.getCode();

        DataSource ds = AppConnectionService.getPoolManager().getDataSource(strPoolname);
        _log.info("JPA Startup Service : DataSource retrieved for pool : " + strPoolname);
        _log.debug("> DS : " + ds.toString());

        DefaultPersistenceUnitManager pum = new DefaultPersistenceUnitManager();
        pum.setDefaultDataSource(ds);

        PersistenceUnitPostProcessor[] postProcessors = { new JPAPersistenceUnitPostProcessor() };
        pum.setPersistenceUnitPostProcessors(postProcessors);

        pum.afterPropertiesSet();

        _log.info("JPA Startup Service : Persistence Unit Manager for pool : " + strPoolname);
        _log.debug("> PUM : " + pum.toString());

        LocalContainerEntityManagerFactoryBean lcemfb = new LocalContainerEntityManagerFactoryBean();
        lcemfb.setDataSource(ds);
        lcemfb.setPersistenceUnitManager(pum);
        lcemfb.setPersistenceUnitName("jpaLuteceUnit");

        JpaDialect jpaDialect = (JpaDialect) SpringContextService.getBean("jpaDialect");
        lcemfb.setJpaDialect(jpaDialect);

        Map mapJpaProperties = (Map) SpringContextService.getBean("jpaPropertiesMap");
        lcemfb.setJpaPropertyMap(mapJpaProperties);

        String strDialect = AppPropertiesService.getProperty(poolItem.getName() + ".dialect");

        // replace default dialect if <poolname>.dialect is specified
        if (StringUtils.isNotBlank(strDialect)) {
            mapJpaProperties.put(strDialectProperty, strDialect);
        }

        _log.debug("Using dialect " + mapJpaProperties.get(strDialectProperty) + " for pool "
                + poolItem.getName());

        JpaVendorAdapter jpaVendorAdapter = (JpaVendorAdapter) SpringContextService.getBean("jpaVendorAdapter");
        lcemfb.setJpaVendorAdapter(jpaVendorAdapter);

        lcemfb.afterPropertiesSet();

        EntityManagerFactory emf = lcemfb.getNativeEntityManagerFactory();
        _log.info("JPA Startup Service : EntityManagerFactory created for pool : " + strPoolname);
        _log.debug("> EMF : " + emf.toString());

        JpaTransactionManager tm = new JpaTransactionManager();
        tm.setEntityManagerFactory(emf);
        tm.setJpaDialect(jpaDialect);
        _log.debug("> JpaDialect " + jpaDialect);
        tm.afterPropertiesSet();
        _log.info("JPA Startup Service : JPA TransactionManager created for pool : " + strPoolname);
        _log.debug("> TM : " + tm.toString());

        mapFactories.put(strPoolname, emf);
        listTransactionManagers.add(tm);
    }

    EntityManagerService ems = (EntityManagerService) SpringContextService.getBean("entityManagerService");
    ems.setMapFactories(mapFactories);

    ChainedTransactionManager ctm = (ChainedTransactionManager) SpringContextService
            .getBean("transactionManager");
    ctm.setTransactionManagers(listTransactionManagers);
    _log.info("JPA Startup Service : completed successfully");
}

From source file:org.seedstack.spring.internal.SpringEntityManagerLink.java

private String getUnitName(EntityManagerFactory emf) {
    Map<String, Object> properties = emf.getProperties();

    String unitName = String.valueOf(properties.get(HIBERNATE_UNIT_NAME_PROPERTY));
    if (StringUtils.isBlank(unitName)) {
        unitName = String.valueOf(properties.get(GENERIC_UNIT_NAME_PROPERTY));
    } else if (StringUtils.isBlank(unitName)) {
        throw SeedException.createNew(SpringErrorCode.UNABLE_TO_RESOLVE_JPA_UNIT).put("entityManagerFactory",
                emf.toString());/* ww w . j  a  v  a  2 s  .co  m*/
    }

    return unitName;
}