package uk.ac.ebi.fg.myequivalents.managers.interfaces; /** * The abstract factory for the MyEquivalents managers. This returns the managers needed to access the MyEquivalents * system. Several concrete implementations are available (e.g., DbManagerFactory, WsCliManagerFactory). * * <dl><dt>date</dt><dd>Nov 26, 2012</dd></dl> * @author Marco Brandizi * */ public interface ManagerFactory { /** Works with the anonymous user */ public EntityMappingManager newEntityMappingManager (); /** Gets an {@link EntityMappingManager} where the parameter used is logged-in and made active */ public EntityMappingManager newEntityMappingManager ( String email, String apiPassword ); /** Works with the anonymous user */ public ServiceManager newServiceManager (); /** Gets an {@link ServiceManager} where the parameter used is logged-in and made active */ public ServiceManager newServiceManager ( String email, String apiPassword ); /** Gets an {@link AccessControlManager} where the parameter used is logged-in and made active */ public AccessControlManager newAccessControlManager ( String email, String apiPassword ); /** * This variant authenticate a user with its user password (not the API one), which is needed for operations like * modifcation of user details. */ public AccessControlManager newAccessControlManagerFullAuth ( String email, String userPassword ); /** * Provides with a {@link BackupManager}. */ public BackupManager newBackupManager ( String email, String apiPassword ); }