@Scope(ScopeConstants.PERTHREAD) public static EntityManagerManager buildEntityManagerManager(final EntityManagerSource entityManagerSource, final PerthreadManager perthreadManager, final Logger logger) { final EntityManagerManagerImpl service = new EntityManagerManagerImpl(entityManagerSource, logger); perthreadManager.addThreadCleanupListener(service); return service; }
@Scope(ScopeConstants.PERTHREAD) public static EntityManagerManager buildEntityManagerManager(final EntityManagerSource entityManagerSource, final PerthreadManager perthreadManager, final Logger logger) { final EntityManagerManagerImpl service = new EntityManagerManagerImpl(entityManagerSource, logger); perthreadManager.addThreadCleanupListener(service); return service; }
/** * The session manager manages sessions on a per-thread/per-request basis. Any active transaction will be rolled * back at {@linkplain org.apache.tapestry5.ioc.Registry#cleanupThread() thread cleanup time}. The thread is * cleaned up automatically in a Tapestry web application. */ @Scope(ScopeConstants.PERTHREAD) public static HibernateSessionManager buildHibernateSessionManager(HibernateSessionSource sessionSource, PerthreadManager perthreadManager) { HibernateSessionManagerImpl service = new HibernateSessionManagerImpl(sessionSource); perthreadManager.addThreadCleanupListener(service); return service; }
/** * The session manager manages sessions on a per-thread/per-request basis. Any active transaction will be rolled * back at {@linkplain org.apache.tapestry5.ioc.Registry#cleanupThread() thread cleanup time}. The thread is * cleaned up automatically in a Tapestry web application. */ @Scope(ScopeConstants.PERTHREAD) public static HibernateSessionManager buildHibernateSessionManager(HibernateSessionSource sessionSource, PerthreadManager perthreadManager) { HibernateSessionManagerImpl service = new HibernateSessionManagerImpl(sessionSource); perthreadManager.addThreadCleanupListener(service); return service; }
@Scope(ScopeConstants.PERTHREAD) public static MultipartDecoder buildMultipartDecoder(PerthreadManager perthreadManager, RegistryShutdownHub shutdownHub, @Autobuild MultipartDecoderImpl multipartDecoder) { // This is proabably overkill since the FileCleaner should catch temporary files, but lets // be safe. perthreadManager.addThreadCleanupListener(multipartDecoder); if (needToAddShutdownListener.getAndSet(false)) { shutdownHub.addRegistryShutdownListener(new Runnable() { @Override public void run() { FileCleaner.exitWhenFinished(); } }); } return multipartDecoder; }
@Scope(ScopeConstants.PERTHREAD) public static MultipartDecoder buildMultipartDecoder(PerthreadManager perthreadManager, RegistryShutdownHub shutdownHub, @Autobuild MultipartDecoderImpl multipartDecoder) { // This is proabably overkill since the FileCleaner should catch temporary files, but lets // be safe. perthreadManager.addThreadCleanupListener(multipartDecoder); if (needToAddShutdownListener.getAndSet(false)) { shutdownHub.addRegistryShutdownListener(new Runnable() { @Override public void run() { FileCleaner.exitWhenFinished(); } }); } return multipartDecoder; }
@Scope(ScopeConstants.PERTHREAD) public static MongoDB buildMongoDB(Logger logger, final MongoDBSource mongoDBSource, PerthreadManager perthreadManager, @Symbol(MongoDBSymbols.DEFAULT_DB_NAME) String defaultDbName, @Symbol(MongoDBSymbols.CONSISTENT_REQUEST) boolean consistentRequest, @Symbol(MongoDBSymbols.SECURE_MODE) boolean secureMode, @Symbol(MongoDBSymbols.DB_USERNAME) String dbUsername, @Symbol(MongoDBSymbols.DB_PASSWORD) String dbPassword) { final MongoDBImpl mongoDB = new MongoDBImpl(logger, mongoDBSource, defaultDbName, consistentRequest, secureMode, dbUsername, dbPassword); perthreadManager.addThreadCleanupListener(mongoDB); return mongoDB; }