package com.constellio.model.services.users; import java.util.List; import java.util.Map; import org.joda.time.LocalDateTime; import com.constellio.data.dao.managers.StatefulService; import com.constellio.model.entities.security.global.UserCredential; import com.constellio.model.entities.security.global.UserCredentialStatus; public interface UserCredentialsManager extends StatefulService { UserCredential create(String username, String firstName, String lastName, String email, List<String> globalGroups, List<String> collections, UserCredentialStatus status); UserCredential create(String username, String firstName, String lastName, String email, List<String> globalGroups, List<String> collections, UserCredentialStatus status, String domain, List<String> msExchDelegateListBL, String dn); UserCredential create(String username, String firstName, String lastName, String email, String serviceKey, boolean systemAdmin, List<String> globalGroups, List<String> collections, Map<String, LocalDateTime> tokens, UserCredentialStatus status); UserCredential create(String username, String firstName, String lastName, String email, String serviceKey, boolean systemAdmin, List<String> globalGroups, List<String> collections, Map<String, LocalDateTime> tokens, UserCredentialStatus status, String domain, List<String> msExchDelegateListBL, String dn); UserCredential create(String username, String firstName, String lastName, String email, List<String> personalEmails, String serviceKey, boolean systemAdmin, List<String> globalGroups, List<String> collections, Map<String, LocalDateTime> tokens, UserCredentialStatus status, String domain, List<String> msExchDelegateListBL, String dn); UserCredential create(String username, String firstName, String lastName, String email, List<String> personalEmails, String serviceKey, boolean systemAdmin, List<String> globalGroups, List<String> collections, Map<String, LocalDateTime> tokens, UserCredentialStatus status, String domain, List<String> msExchDelegateListBL, String dn, String jobTitle, String phone, String fax, String address); void addUpdate(UserCredential userCredential); UserCredential getUserCredential(String username); List<UserCredential> getUserCredentials(); List<UserCredential> getActiveUserCredentials(); List<UserCredential> getSuspendedUserCredentials(); List<UserCredential> getPendingApprovalUserCredentials(); List<UserCredential> getDeletedUserCredentials(); List<UserCredential> getUserCredentialsInGlobalGroup(String group); void removeCollection(String collection); void removeToken(String token); void removeUserCredentialFromCollection(UserCredential userCredential, String collection); void removeGroup(String codeGroup); String getUsernameByServiceKey(String serviceKey); String getServiceKeyByToken(String token); void removeTimedOutTokens(); void rewrite(); }