package org.ourgrid.peer.business.dao; import org.ourgrid.peer.business.dao.statistics.JobDAO; import org.ourgrid.peer.business.dao.statistics.LoginDAO; import org.ourgrid.peer.business.dao.statistics.PeerDAO; import org.ourgrid.peer.business.dao.statistics.WorkerDAO; import org.ourgrid.peer.communication.dao.PeerCertificationDAO; import org.ourgrid.peer.dao.AllocationDAO; import org.ourgrid.peer.dao.DiscoveryServiceClientDAO; import org.ourgrid.peer.dao.trust.TrustCommunitiesDAO; public class PeerDAOFactory { private static PeerDAOFactory daoFactory; private PeerDAO peerDAO; private JobDAO jobDAO; private LoginDAO loginDAO; private UsersDAO usersDAO; private AccountingDAO accountingDAO; private WorkerDAO workerDAO; private LocalWorkersDAO localWorkersDAO; private DiscoveryServiceClientDAO discoveryServiceClientDAO; private AllocationDAO allocationDAO; private ConsumerDAO consumerDAO; private RequestDAO requestDAO; private TrustCommunitiesDAO trustCommunitiesDAO; private PeerCertificationDAO peerCertificationDAO; private PeerPropertiesDAO peerPropertiesDAO; private PeerDAOFactory() {} public static PeerDAOFactory getInstance() { if (daoFactory == null) daoFactory = new PeerDAOFactory(); return daoFactory; } public TrustCommunitiesDAO getTrustCommunitiesDAO() { if (trustCommunitiesDAO == null) { trustCommunitiesDAO = new TrustCommunitiesDAO(); } return trustCommunitiesDAO; } public RequestDAO getRequestDAO() { if (requestDAO == null) { requestDAO = new RequestDAO(); } return requestDAO; } public PeerPropertiesDAO getPeerPropertiesDAO() { if (peerPropertiesDAO == null) { peerPropertiesDAO = new PeerPropertiesDAO(); } return peerPropertiesDAO; } public PeerDAO getPeerDAO() { if (peerDAO == null) { peerDAO = new PeerDAO(); } return peerDAO; } public JobDAO getJobDAO() { if (jobDAO == null) { jobDAO = new JobDAO(); } return jobDAO; } public LoginDAO getLoginDAO() { if (loginDAO == null) { loginDAO = new LoginDAO(); } return loginDAO; } public UsersDAO getUsersDAO() { if (usersDAO == null) { usersDAO = new UsersDAO(); } return usersDAO; } public WorkerDAO getWorkerDAO() { if (workerDAO == null) { workerDAO = new WorkerDAO(); } return workerDAO; } public AccountingDAO getAccountingDAO() { if (accountingDAO == null) { accountingDAO = new AccountingDAO(); } return accountingDAO; } public LocalWorkersDAO getLocalWorkersDAO() { if (localWorkersDAO == null) { localWorkersDAO = new LocalWorkersDAO(); } return localWorkersDAO; } public AllocationDAO getAllocationDAO() { if (allocationDAO == null) { allocationDAO = new AllocationDAO(); } return allocationDAO; } public DiscoveryServiceClientDAO getDiscoveryServiceClientDAO() { if (discoveryServiceClientDAO == null) { discoveryServiceClientDAO = new DiscoveryServiceClientDAO(); } return discoveryServiceClientDAO; } public ConsumerDAO getConsumerDAO() { if (consumerDAO == null) { consumerDAO = new ConsumerDAO(); } return consumerDAO; } public PeerCertificationDAO getPeerCertificationDAO() { if (peerCertificationDAO == null) { peerCertificationDAO = new PeerCertificationDAO(); } return peerCertificationDAO; } public void reset() { peerDAO = null; jobDAO = null; loginDAO = null; usersDAO = null; workerDAO = null; accountingDAO = null; localWorkersDAO = null; discoveryServiceClientDAO = null; consumerDAO = null; trustCommunitiesDAO = null; allocationDAO = null; peerCertificationDAO = null; peerPropertiesDAO = null; requestDAO = null; } }