public class RemoteAccountImpl extends java.lang.Object implements RemoteAccount
Account object and makes it
RMI-accessible. Normally this is not used directly by the client;
rather it is wrapped on the client side by a ClientAccount.
Note that Iterator types returned by Account
methods are iterated and converted to Set types that are
cached on the client side. This improves performance noticably.
Note that password attribute values are write-only through this interface; you may set them, but you may never retrieve the true value.
Account| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
CLASS_VERSION |
ANY_ACCOUNT, GROUP_ACCOUNT, LOGIN_ACCOUNT, PRIVILEGE_ACCOUNT| Modifier and Type | Method and Description |
|---|---|
void |
addGroup(java.lang.String pNewGroupName)
Makes this account a member of a new group.
|
static RemoteAccount |
createProxy(Account pAccount)
Creates a session-based proxy to remotely access an 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 dictionary of all defined attributes and their values from
the account.
|
java.util.Map |
getDisplayNamesForAttributes()
Returns a mapping of attribute names to display names that can be used
in an attribute editor.
|
java.util.Set |
getGroups()
Returns a set of of the groups that this account is a member of.
|
java.util.Set |
getMembers()
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[] pNewGroups)
Makes this account a member of a set of groups.
|
public static RemoteAccount createProxy(Account pAccount) throws java.rmi.RemoteException
java.rmi.RemoteExceptionpublic java.lang.String getAccountName()
getAccountName in interface RemoteAccountpublic int getAccountType()
getAccountType in interface RemoteAccountAccountTypespublic java.lang.String getAttribute(java.lang.String pAttributeName)
Note that this will not return the correct value for the password attribute, for security reasons.
getAttribute in interface RemoteAccountpAttributeName - The name of the desired attribute.public java.util.Map getAttributes()
Note that this will not return the correct value for the password attribute, for security reasons.
getAttributes in interface RemoteAccountpublic void setAttribute(java.lang.String pAttributeName,
java.lang.String pNewValue)
throws InvalidAttributeException
setAttribute in interface RemoteAccountpAttributeName - The name of the attribute to change.pNewValue - The new value to give to the attribute. If this value
is null, the attribute is removed.InvalidAttributeExceptionpublic void setAttributes(java.util.Map pNewAttributes)
throws InvalidAttributeException
setAttributes in interface RemoteAccountpNewAttributes - The set of attributes to change, and their
associated values.InvalidAttributeExceptionpublic java.util.Set getGroups()
getGroups in interface RemoteAccountpublic void addGroup(java.lang.String pNewGroupName)
throws NoSuchAccountException,
PermissionDeniedException
addGroup in interface RemoteAccountpNewGroupName - The name of the group to add membership to.NoSuchAccountException - Indicates that the specified group
does not exist.PermissionDeniedExceptionpublic void setGroups(java.lang.String[] pNewGroups)
throws NoSuchAccountException,
PermissionDeniedException
setGroups in interface RemoteAccountpNewGroups - An array of names of groups to remove membership from.NoSuchAccountException - Indicates that a specified group
does not exist.PermissionDeniedExceptionpublic void removeGroup(java.lang.String pGroupName)
throws NoSuchAccountException,
PermissionDeniedException
removeGroup in interface RemoteAccountpGroupName - The name of the group to remove membership from.NoSuchAccountException - Indicates that the account is not
a member of the group.PermissionDeniedExceptionpublic java.util.Set getMembers()
getMembers in interface RemoteAccountpublic java.util.Map getDisplayNamesForAttributes()
getDisplayNamesForAttributes in interface RemoteAccount