@Override public void endCommandScopedEntityManager() { EntityManager cmdScopedEntityManager = (EntityManager) env.get( EnvironmentName.CMD_SCOPED_ENTITY_MANAGER ); if(cmdScopedEntityManager != null && cmdScopedEntityManager.isOpen()) { cmdScopedEntityManager.clear(); } super.endCommandScopedEntityManager(); }
public void dispose() { resetApplicationScopedPersistenceContext(); if ( this.internalCmdScopedEntityManagerFlag ) { EntityManager cmdScopedEntityManager = getInternalCommandScopedEntityManager(); if ( cmdScopedEntityManager != null && cmdScopedEntityManager.isOpen() ) { cmdScopedEntityManager.close(); } this.env.set( EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, null ); this.txm.putResource(EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, null ); this.internalCmdScopedEntityManagerFlag = false; } }
public void endCommandScopedEntityManager() { EntityManager cmdScopedEntityManager = getInternalCommandScopedEntityManager(); if ( this.internalCmdScopedEntityManagerFlag ) { if (cmdScopedEntityManager != null && cmdScopedEntityManager.isOpen()) { cmdScopedEntityManager.clear(); } this.env.set( EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, null ); } }
public EntityManager getCommandScopedEntityManager() { // first check if there is already cmd scoped entity manager as transactional resource EntityManager cmdScopedEntityManager = getInternalCommandScopedEntityManager(); if ( cmdScopedEntityManager == null) { cmdScopedEntityManager = (EntityManager) env.get( EnvironmentName.CMD_SCOPED_ENTITY_MANAGER ); if (cmdScopedEntityManager != null) { this.txm.putResource(EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, cmdScopedEntityManager ); } if ( cmdScopedEntityManager == null) { internalCmdScopedEntityManagerFlag = true; cmdScopedEntityManager = this.emf.createEntityManager(); // no need to call joinTransaction as it will do so if one already exists this.env.set( EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, cmdScopedEntityManager ); this.txm.putResource(EnvironmentName.CMD_SCOPED_ENTITY_MANAGER, cmdScopedEntityManager ); } else { internalCmdScopedEntityManagerFlag = false; } } cmdScopedEntityManager.joinTransaction(); if (this.appScopedEntityManager != null) { this.appScopedEntityManager.joinTransaction(); } return cmdScopedEntityManager; }
@Override public void endCommandScopedEntityManager() { EntityManager cmdScopedEntityManager = (EntityManager) env.get( EnvironmentName.CMD_SCOPED_ENTITY_MANAGER ); if(cmdScopedEntityManager != null && cmdScopedEntityManager.isOpen()) { cmdScopedEntityManager.clear(); } super.endCommandScopedEntityManager(); }