package eu.eudat.logic.services.operations; import eu.eudat.data.dao.entities.*; import eu.eudat.data.dao.entities.security.CredentialDao; import eu.eudat.data.dao.entities.security.UserTokenDao; public interface DatabaseRepository { DataRepositoryDao getDataRepositoryDao(); DatasetDao getDatasetDao(); DatasetProfileDao getDatasetProfileDao(); DMPDao getDmpDao(); OrganisationDao getOrganisationDao(); GrantDao getGrantDao(); RegistryDao getRegistryDao(); ResearcherDao getResearcherDao(); ServiceDao getServiceDao(); UserInfoDao getUserInfoDao(); UserRoleDao getUserRoleDao(); InvitationDao getInvitationDao(); CredentialDao getCredentialDao(); UserTokenDao getUserTokenDao(); ExternalDatasetDao getExternalDatasetDao(); UserDmpDao getUserDmpDao(); ContentDao getContentDao(); DMPProfileDao getDmpProfileDao(); DatasetExternalDatasetDao getDatasetExternalDatasetDao(); DatasetServiceDao getDatasetServiceDao(); LoginConfirmationEmailDao getLoginConfirmationEmailDao(); ProjectDao getProjectDao(); FunderDao getFunderDao(); LockDao getLockDao(); NotificationDao getNotificationDao(); UserAssociationDao getUserAssociationDao(); DoiFunderDao getDoiFunderDao(); void detachEntity(T entity); }