public static void savePersistenceProviderInDeploymentUnit( DeploymentUnit deploymentUnit, final List<PersistenceProvider> providerList, final List<PersistenceProviderAdaptor> adaptorList) { deploymentUnit = DeploymentUtils.getTopDeploymentUnit(deploymentUnit); PersistenceProviderDeploymentHolder persistenceProviderDeploymentHolder = getPersistenceProviderDeploymentHolder(deploymentUnit); if (persistenceProviderDeploymentHolder == null) { persistenceProviderDeploymentHolder = new PersistenceProviderDeploymentHolder(providerList, adaptorList); deploymentUnit.putAttachment(JpaAttachments.DEPLOYED_PERSISTENCE_PROVIDER, persistenceProviderDeploymentHolder); } else { synchronized (persistenceProviderDeploymentHolder.providerMap) { for(PersistenceProvider persistenceProvider : providerList){ persistenceProviderDeploymentHolder.providerMap.put(persistenceProvider.getClass().getName(), persistenceProvider); } } if (adaptorList != null) { persistenceProviderDeploymentHolder.adapterList.addAll(adaptorList); } } }
public static void savePersistenceProviderInDeploymentUnit( DeploymentUnit deploymentUnit, final List<PersistenceProvider> providerList, final List<PersistenceProviderAdaptor> adaptorList) { deploymentUnit = DeploymentUtils.getTopDeploymentUnit(deploymentUnit); PersistenceProviderDeploymentHolder persistenceProviderDeploymentHolder = getPersistenceProviderDeploymentHolder(deploymentUnit); if (persistenceProviderDeploymentHolder == null) { persistenceProviderDeploymentHolder = new PersistenceProviderDeploymentHolder(providerList, adaptorList); deploymentUnit.putAttachment(JpaAttachments.DEPLOYED_PERSISTENCE_PROVIDER, persistenceProviderDeploymentHolder); } else { synchronized (persistenceProviderDeploymentHolder.providerMap) { for(PersistenceProvider persistenceProvider : providerList){ persistenceProviderDeploymentHolder.providerMap.put(persistenceProvider.getClass().getName(), persistenceProvider); } } if (adaptorList != null) { persistenceProviderDeploymentHolder.adapterList.addAll(adaptorList); } } }
public static void finishDeploy(final DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); PersistenceProviderDeploymentHolder persistenceProviderDeploymentHolder = PersistenceProviderDeploymentHolder.getPersistenceProviderDeploymentHolder(deploymentUnit); Map<String, PersistenceProvider> providerMap = persistenceProviderDeploymentHolder != null ? persistenceProviderDeploymentHolder.getProviders() : null; if (providerMap != null) { Set<ClassLoader> deploymentClassLoaders = allDeploymentModuleClassLoaders(deploymentUnit); synchronized (providerMap){ for(Map.Entry<String, PersistenceProvider> kv: providerMap.entrySet()){ PersistenceProviderResolverImpl.getInstance().addDeploymentSpecificPersistenceProvider(kv.getValue(), deploymentClassLoaders); } } } }
public static void finishDeploy(final DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); PersistenceProviderDeploymentHolder persistenceProviderDeploymentHolder = PersistenceProviderDeploymentHolder.getPersistenceProviderDeploymentHolder(deploymentUnit); Map<String, PersistenceProvider> providerMap = persistenceProviderDeploymentHolder != null ? persistenceProviderDeploymentHolder.getProviders() : null; if (providerMap != null) { Set<ClassLoader> deploymentClassLoaders = allDeploymentModuleClassLoaders(deploymentUnit); synchronized (providerMap){ for(Map.Entry<String, PersistenceProvider> kv: providerMap.entrySet()){ PersistenceProviderResolverImpl.getInstance().addDeploymentSpecificPersistenceProvider(kv.getValue(), deploymentClassLoaders); } } } }