1 /** 2 * 2007, Digitalis Informatica. All rights reserved. Distribuicao e Gestao de Informatica, Lda. Estrada de Paco de Arcos 3 * num.9 - Piso -1 2780-666 Paco de Arcos Telefone: (351) 21 4408990 Fax: (351) 21 4408999 http://www.digitalis.pt 4 */ 5 6 package pt.digitalis.dif.controller.security.managers; 7 8 import java.util.Map; 9 10 import pt.digitalis.dif.controller.security.objects.IDIFGroup; 11 import pt.digitalis.dif.controller.security.objects.IDIFUser; 12 import pt.digitalis.dif.exception.security.IdentityManagerException; 13 14 /** 15 * Defines the expected behavior for an identity manager. This manager supports users {@link IDIFUser} and groups 16 * {@link IDIFGroup}. 17 * 18 * @author Rodrigo Gon�alves <a href="mailto:rgoncalves@digitalis.pt">rgoncalves@digitalis.pt</a><br/> 19 * @author Luis Pinto <a href="lpinto@digitalis.pt">lpinto@digitalis.pt</a><br/> 20 * @author Pedro Viegas <a href="mailto:pviegas@digitalis.pt">pviegas@digitalis.pt</a><br/> 21 * @author Fábio Souto <a href="mailto:fsouto@digitalis.pt">fsouto@digitalis.pt</a><br/> 22 * @created 2007/12/04 23 */ 24 public interface IIdentityManagerPrivate extends IIdentityManager { 25 26 /** 27 * Persists an attribute value on a given user on the underlying repository. 28 * 29 * @param userID 30 * the ID of the user to update 31 * @param attributeID 32 * the ID of the attribute to update 33 * @param attributeValue 34 * the value of the attribute to update 35 * @throws IdentityManagerException 36 * if the attribute can't be updated 37 */ 38 public void persistUserAttribute(String userID, String attributeID, Object attributeValue) 39 throws IdentityManagerException; 40 41 /** 42 * Persists all attributes values on a given user on the underlying repository. 43 * 44 * @param userID 45 * the ID of the user to update 46 * @param attributes 47 * the attributes to update 48 * @throws IdentityManagerException 49 * if the attribute can't be updated 50 */ 51 public void persistUserAttributes(String userID, Map<String, Object> attributes) throws IdentityManagerException; 52 53 }