Example usage for org.springframework.orm.jpa.persistenceunit MutablePersistenceUnitInfo getProperties

List of usage examples for org.springframework.orm.jpa.persistenceunit MutablePersistenceUnitInfo getProperties

Introduction

In this page you can find the example usage for org.springframework.orm.jpa.persistenceunit MutablePersistenceUnitInfo getProperties.

Prototype

@Override
    public Properties getProperties() 

Source Link

Usage

From source file:it.scoppelletti.programmerpower.data.spi.PersistenceUnitPropertySetConfigurator.java

/**
 * Applica il contributo alla configurazione.
 *
 * <P>Questa implementazione del metodo {@code configure} imposta
 * sull&rsquo;unit&agrave; di persistenza {@code info} le propriet&agrave;
 * impostate sul profilo di configurazione {@code config} (sovrascrivendo
 * le propriet&agrave; eventualmente gi&agrave; impostate).</P>
 * //from w w  w  .  j a  v a 2 s  . c o  m
 * @param info   Unit&agrave; di persistenza.
 * @param config Nome del profilo di configurazione.
 */
public void configure(MutablePersistenceUnitInfo info, String config) {
    Properties cfgProps, jpaProps;
    ConfigGroup cfgGroup;

    if (Strings.isNullOrEmpty(config)) {
        return;
    }

    myLogger.debug("Persistence Unit Configuration: {}.", config);
    cfgGroup = new ConfigGroup(DataUtils.CONFIG_DATA);
    cfgProps = cfgGroup.getProperties(config);
    if (cfgProps == null) {
        return;
    }

    jpaProps = info.getProperties();
    jpaProps.putAll(cfgProps);
    info.setProperties(jpaProps);
}

From source file:net.nan21.dnet.core.business.spring.DnetPersistenceUnitPostProcessor.java

@Override
public void postProcessPersistenceUnitInfo(MutablePersistenceUnitInfo pui) {

    List<String> classes = puiClasses.get(pui.getPersistenceUnitName());
    if (classes == null) {
        classes = new ArrayList<String>();
        puiClasses.put(pui.getPersistenceUnitName(), classes);
    }/*w  ww .  ja  v a 2  s.  c o  m*/
    pui.getManagedClassNames().addAll(classes);

    // final List<String> names = pui.getManagedClassNames();
    classes.addAll(pui.getManagedClassNames());

    if (this.persistenceUnitName.equals(pui.getPersistenceUnitName())) {
        final Properties properties = pui.getProperties();

        for (final Map.Entry<Object, Object> entries : this.persistenceProperties.entrySet()) {
            properties.put(entries.getKey(), entries.getValue());
        }

    }
}

From source file:com.brienwheeler.lib.db.MergingPersistenceUnitPostProcessorTest.java

@Test
public void testPostProcess() {
    MutablePersistenceUnitInfo info1 = new MutablePersistenceUnitInfo();
    info1.setPersistenceUnitName(TEST_PU_NAME);
    List<String> classes1 = new ArrayList<String>();
    classes1.add("com.brienwheeler.lib.db.domain.SimpleEntity");
    ReflectionTestUtils.setField(info1, "managedClassNames", classes1);

    MutablePersistenceUnitInfo info2 = new MutablePersistenceUnitInfo();
    info2.setPersistenceUnitName(TEST_PU_NAME);
    List<String> classes2 = new ArrayList<String>();
    classes2.add("com.brienwheeler.lib.db.domain.SimpleEntity2");
    ReflectionTestUtils.setField(info2, "managedClassNames", classes2);

    persistenceUnitPostProcessor.postProcessPersistenceUnitInfo(info1);
    persistenceUnitPostProcessor.postProcessPersistenceUnitInfo(info2);

    Assert.assertEquals(2, info2.getManagedClassNames().size());
    Assert.assertEquals(0, info1.getProperties().size());
    Assert.assertEquals(0, info2.getProperties().size());
}

From source file:com.brienwheeler.lib.db.MergingPersistenceUnitPostProcessorTest.java

@Test
public void testPostProcessWithProperties() {
    Properties properties = new Properties();
    properties.setProperty(TEST_PROPERTY_NAME, TEST_PROPERTY_VALUE);
    persistenceUnitPostProcessor.setProperties(properties);

    MutablePersistenceUnitInfo info1 = new MutablePersistenceUnitInfo();
    info1.setPersistenceUnitName(TEST_PU_NAME);
    List<String> classes1 = new ArrayList<String>();
    classes1.add("com.brienwheeler.lib.db.domain.SimpleEntity");
    ReflectionTestUtils.setField(info1, "managedClassNames", classes1);

    MutablePersistenceUnitInfo info2 = new MutablePersistenceUnitInfo();
    info2.setPersistenceUnitName(TEST_PU_NAME);
    List<String> classes2 = new ArrayList<String>();
    classes2.add("com.brienwheeler.lib.db.domain.SimpleEntity2");
    ReflectionTestUtils.setField(info2, "managedClassNames", classes2);

    persistenceUnitPostProcessor.postProcessPersistenceUnitInfo(info1);
    persistenceUnitPostProcessor.postProcessPersistenceUnitInfo(info2);

    Assert.assertEquals(2, info2.getManagedClassNames().size());
    Assert.assertSame(properties, info1.getProperties());
    Assert.assertSame(properties, info2.getProperties());
}

From source file:fr.paris.lutece.util.jpa.JPAPersistenceUnitPostProcessor.java

/**
 * Show PUI infos/*from  ww  w  . j ava  2 s . com*/
 * @param pui PersistenceUnitInfo
 */
private void dumpPersistenceUnitInfo(MutablePersistenceUnitInfo pui) {
    _Log.debug("Dumping content for PersistenceUnitInfo of " + pui.getPersistenceUnitName());

    _Log.debug("** getTransactionType : " + pui.getTransactionType());
    _Log.debug("** getPersistenceProviderClassName : " + pui.getPersistenceProviderClassName());
    _Log.debug("** getPersistenceProviderPackageName : " + pui.getPersistenceProviderPackageName());
    _Log.debug("** getPersistenceUnitName : " + pui.getPersistenceUnitName());
    _Log.debug("** getPersistenceXMLSchemaVersion : " + pui.getPersistenceXMLSchemaVersion());
    _Log.debug("** getJtaDataSource : " + pui.getJtaDataSource());
    _Log.debug("** getManagedClassNames : " + pui.getManagedClassNames());
    _Log.debug("** getMappingFileNames : " + pui.getMappingFileNames());
    _Log.debug("** getNonJtaDataSource : " + pui.getNonJtaDataSource());
    _Log.debug("** getPersistenceUnitRootUrl :" + pui.getPersistenceUnitRootUrl());
    _Log.debug("** getProperties : " + pui.getProperties());
}

From source file:org.broadleafcommerce.common.extensibility.jpa.MergePersistenceUnitManager.java

@Override
protected void postProcessPersistenceUnitInfo(MutablePersistenceUnitInfo newPU) {
    super.postProcessPersistenceUnitInfo(newPU);
    ConfigurationOnlyState state = ConfigurationOnlyState.getState();
    String persistenceUnitName = newPU.getPersistenceUnitName();
    MutablePersistenceUnitInfo pui = getMergedUnit(persistenceUnitName, newPU);

    List<String> managedClassNames = newPU.getManagedClassNames();
    for (String managedClassName : managedClassNames) {
        if (!pui.getManagedClassNames().contains(managedClassName)) {
            pui.addManagedClassName(managedClassName);
        }//  ww  w . ja va 2s. c  om
    }
    List<String> mappingFileNames = newPU.getMappingFileNames();
    for (String mappingFileName : mappingFileNames) {
        if (!pui.getMappingFileNames().contains(mappingFileName)) {
            pui.addMappingFileName(mappingFileName);
        }
    }
    pui.setExcludeUnlistedClasses(newPU.excludeUnlistedClasses());
    for (URL url : newPU.getJarFileUrls()) {
        // Avoid duplicate class scanning by Ejb3Configuration. Do not re-add the URL to the list of jars for this
        // persistence unit or duplicate the persistence unit root URL location (both types of locations are scanned)
        if (!pui.getJarFileUrls().contains(url) && !pui.getPersistenceUnitRootUrl().equals(url)) {
            pui.addJarFileUrl(url);
        }
    }
    if (pui.getProperties() == null) {
        pui.setProperties(newPU.getProperties());
    } else {
        Properties props = newPU.getProperties();
        if (props != null) {
            for (Object key : props.keySet()) {
                pui.getProperties().put(key, props.get(key));
                for (BroadleafClassTransformer transformer : classTransformers) {
                    try {
                        transformer.compileJPAProperties(props, key);
                    } catch (Exception e) {
                        throw new RuntimeException(e);
                    }
                }
            }
        }
    }
    if (state == null || !state.isConfigurationOnly()) {
        if (newPU.getJtaDataSource() != null) {
            pui.setJtaDataSource(newPU.getJtaDataSource());
        }
        if (newPU.getNonJtaDataSource() != null) {
            pui.setNonJtaDataSource(newPU.getNonJtaDataSource());
        }
    } else {
        pui.getProperties().setProperty("hibernate.hbm2ddl.auto", "none");
        pui.getProperties().setProperty("hibernate.temp.use_jdbc_metadata_defaults", "false");
    }
    pui.setTransactionType(newPU.getTransactionType());
    if (newPU.getPersistenceProviderClassName() != null) {
        pui.setPersistenceProviderClassName(newPU.getPersistenceProviderClassName());
    }
    if (newPU.getPersistenceProviderPackageName() != null) {
        pui.setPersistenceProviderPackageName(newPU.getPersistenceProviderPackageName());
    }
}