private synchronized void recreateEntityManagerFactory(ClassLoader newClassLoader) { if (businessDataModelRepository.isBDMDeployed()) { log.debug("Recreating entity factory for classloader {} on tenant {}", newClassLoader, tenantId); final ClassLoader currentClassLoader = Thread.currentThread().getContextClassLoader(); try { Thread.currentThread().setContextClassLoader(newClassLoader); entityManagerFactory.close(); entityManagerFactory = createEntityManagerFactory(); } finally { Thread.currentThread().setContextClassLoader(currentClassLoader); } log.debug("Entity factory recreated"); } }
private synchronized void recreateEntityManagerFactory(ClassLoader newClassLoader) { if (businessDataModelRepository.isBDMDeployed()) { log.debug("Recreating entity factory for classloader {} on tenant {}", newClassLoader, tenantId); final ClassLoader currentClassLoader = Thread.currentThread().getContextClassLoader(); try { Thread.currentThread().setContextClassLoader(newClassLoader); entityManagerFactory.close(); entityManagerFactory = createEntityManagerFactory(); } finally { Thread.currentThread().setContextClassLoader(currentClassLoader); } log.debug("Entity factory recreated"); } }
@Override public void start() { if (businessDataModelRepository.isBDMDeployed()) { log.debug("Creating entity factory on tenant {}", tenantId); entityManagerFactory = createEntityManagerFactory(); log.debug("Entity factory created"); } classLoaderService.addListener(ScopeType.TENANT.name(), tenantId, this); }
@Override public void start() { if (businessDataModelRepository.isBDMDeployed()) { log.debug("Creating entity factory on tenant {}", tenantId); entityManagerFactory = createEntityManagerFactory(); log.debug("Entity factory created"); } classLoaderService.addListener(ScopeType.TENANT.name(), tenantId, this); }