atg.security
Class RepositoryAccount

java.lang.Object
  extended by atg.security.RepositoryAccount
All Implemented Interfaces:
Account, AccountTypes, atg.security.I18nAccount
Direct Known Subclasses:
LDAPRepositoryAccount

public class RepositoryAccount
extends java.lang.Object
implements atg.security.I18nAccount, AccountTypes

An Account object that is persisted by a repository.


Field Summary
static java.lang.String CLASS_VERSION
           
 
Fields inherited from interface atg.security.AccountTypes
ANY_ACCOUNT, GROUP_ACCOUNT, LOGIN_ACCOUNT, PRIVILEGE_ACCOUNT
 
Method Summary
 void addGroup(java.lang.String pNewGroupName)
          Makes this account a member of a new group.
 AccountManager getAccountManager()
          Returns the account manager associated with this account.
 java.lang.String getAccountName()
          Returns the name of the account.
 int getAccountType()
          Returns the account type.
 java.lang.String getAttribute(java.lang.String pAttributeName)
          Retrieves the string value of a given attribute.
 java.util.Map getAttributes()
          Retrieves a mapping of all defined attributes and their values from the account.
 java.lang.String getDisplayNameForAttribute(java.lang.String pAttributeName)
          Returns the display name that should be associated with an attribute.
 Persona getPersona()
          Creates a persona object for the account.
 java.util.Iterator listGroups()
          Returns an enumeration of the groups that this account is a member of.
 java.util.Iterator listMembers()
          If this Account is a group, return the names of the members of the group.
 void removeGroup(java.lang.String pGroupName)
          Removes a group from the set of groups that this account is a member of.
 void setAttribute(java.lang.String pAttributeName, java.lang.String pNewValue)
          Changes the value of a given attribute.
 void setAttributes(java.util.Map pNewAttributes)
          Changes the values of a set of account attributes.
 void setGroups(java.lang.String[] newGroups)
          Makes this account a member of a set of groups.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLASS_VERSION

public static final java.lang.String CLASS_VERSION
See Also:
Constant Field Values
Method Detail

getPersona

public Persona getPersona()
Creates a persona object for the account.


getAccountManager

public AccountManager getAccountManager()
Returns the account manager associated with this account.

Specified by:
getAccountManager in interface Account

getAccountName

public java.lang.String getAccountName()
Returns the name of the account.

Specified by:
getAccountName in interface Account

getAccountType

public int getAccountType()
Returns the account type.

Specified by:
getAccountType in interface Account
See Also:
AccountTypes

getAttribute

public java.lang.String getAttribute(java.lang.String pAttributeName)
Retrieves the string value of a given attribute.

Specified by:
getAttribute in interface Account
Parameters:
attributeName - The name of the desired attribute.

getAttributes

public java.util.Map getAttributes()
Retrieves a mapping of all defined attributes and their values from the account.

Specified by:
getAttributes in interface Account

setAttribute

public void setAttribute(java.lang.String pAttributeName,
                         java.lang.String pNewValue)
                  throws InvalidAttributeException
Changes the value of a given attribute.

Specified by:
setAttribute in interface Account
Parameters:
attributeName - The name of the attribute to change.
newValue - The new value to give to the attribute. If this value is null, the attribute is removed.
Throws:
InvalidAttributeException

setAttributes

public void setAttributes(java.util.Map pNewAttributes)
                   throws InvalidAttributeException
Changes the values of a set of account attributes. The mapping may contain a subset of existing attribute values; only those attributes that are present in the mapping are changed, and none are removed.

Specified by:
setAttributes in interface Account
Parameters:
newAttributes - The set of attributes to change, and their associated values.
Throws:
InvalidAttributeException

listGroups

public java.util.Iterator listGroups()
Returns an enumeration of the groups that this account is a member of.

Specified by:
listGroups in interface Account

addGroup

public void addGroup(java.lang.String pNewGroupName)
              throws NoSuchAccountException,
                     PermissionDeniedException
Makes this account a member of a new group.

Specified by:
addGroup in interface Account
Parameters:
newGroupName - The name of the group to add membership to.
Throws:
NoSuchAccountException - Indicates that the specified group does not exist.
PermissionDeniedException

setGroups

public void setGroups(java.lang.String[] newGroups)
               throws NoSuchAccountException,
                      PermissionDeniedException
Makes this account a member of a set of groups.

Specified by:
setGroups in interface Account
Parameters:
newGroups - An array of names of groups to remove membership from.
Throws:
NoSuchAccountException - Indicates that a specified group does not exist.
PermissionDeniedException

removeGroup

public void removeGroup(java.lang.String pGroupName)
                 throws NoSuchAccountException,
                        PermissionDeniedException
Removes a group from the set of groups that this account is a member of.

Specified by:
removeGroup in interface Account
Parameters:
groupName - The name of the group to remove membership from.
Throws:
NoSuchAccountException - Indicates that the account is not a member of the group.
PermissionDeniedException

listMembers

public java.util.Iterator listMembers()
If this Account is a group, return the names of the members of the group. (Note that there is no way to add members to the group; rather, you add the group to the account and it automagically becomes a member.)

Specified by:
listMembers in interface Account

getDisplayNameForAttribute

public java.lang.String getDisplayNameForAttribute(java.lang.String pAttributeName)
Returns the display name that should be associated with an attribute. If the name is not available this will return null.

Specified by:
getDisplayNameForAttribute in interface atg.security.I18nAccount