com.ibm.itim.dataservices.model.domain
Class Person

java.lang.Object
  |
  +--com.ibm.itim.dataservices.model.DirectoryEntry
        |
        +--com.ibm.itim.dataservices.model.DirectoryObject
              |
              +--com.ibm.itim.dataservices.model.domain.Person
All Implemented Interfaces:
com.ibm.itim.util.xml.objectstream.Importable, ProtectedObject, java.io.Serializable

public class Person
extends DirectoryObject
implements com.ibm.itim.util.xml.objectstream.Importable

Value Object class that holds the attribute information of a person (identity) in the data model. Although the class name indicates human representation, this class could be used to represent any type of identity, even a computing system, which can be provisioned accounts.

See Also:
PersonEntity, Serialized Form

Field Summary
static java.lang.String PERSON_ATTR_ALIAS
          String constant for the aliases attribute name.
static java.lang.String PERSON_ATTR_CREATION_DATE
           
static java.lang.String PERSON_ATTR_DISPLAY
          String constant for the custom display attribute name.
static java.lang.String PERSON_ATTR_EMAIL
          String constant for the email attribute name.
static java.lang.String PERSON_ATTR_LOCALE
          String constant for the preferred locale attribute name
static java.lang.String PERSON_ATTR_NAME
          String constant for the naming attribute name.
static java.lang.String PERSON_ATTR_PASSWORD_CHANGE_DATE
          String constant that represents the LDAP attribute for the time that the password was last changed.
static java.lang.String PERSON_ATTR_ROLE
          String constant for the roles attribute name.
static java.lang.String PERSON_ATTR_SHAREDSECRET
          String constant for the shared secret attribute name.
static java.lang.String PERSON_ATTR_SPONSOR
          String constant for the sponsor attribute name.
static java.lang.String PERSON_ATTR_STATUS
          String constant for the status attribute name.
static java.lang.String PERSON_ATTR_STATUS_LAST_CHANGED_DATE
          String constant for last status change date attribute name.
static java.lang.String PERSON_ATTR_SUPERVISOR
          String constant for the supervisor attribute name.
static int STATUS_ACTIVE
          Constant indicating "active" status
static int STATUS_INACTIVE
          Code indicating "inactive" status
 
Fields inherited from class com.ibm.itim.dataservices.model.DirectoryObject
ATTR_ACCESS_RIGHT, ATTR_LIFECYCLE_ENABLE
 
Constructor Summary
Person()
          Default empty constructor
Person(java.lang.String profileName)
          Constructs object with profile.
Person(java.lang.String profileName, AttributeValues attrs)
          Deprecated. Use Person(String profileName) and setAttributes(attributes) instead
 
Method Summary
 void addRole(DistinguishedName roleDN)
          Adds the given role to the person's role membership.
 java.util.Collection getAliases()
          Returns the person's aliases.
 java.util.Date getCreationDate()
          Returns the date and time the person was created.
 java.lang.String getCustomAttribute()
          Returns the person's custom display attribute.
 DistinguishedName getImmediateSupervisor()
          Returns the person's immediate supervisor.
 java.util.Date getLastStatusChangeDate()
          Returns the date and time the the person's status was last changed.
 java.util.Locale getLocale()
          Returns the person's preferred locale
 java.lang.String getMail()
          Returns the person's email address.
 java.util.Collection getMails()
          Returns the person's email addresses.
 java.util.Date getPasswordChangeDate()
          Returns the date and time the the person was last set.
 java.util.Collection getRoles()
          Returns the person's roles.
 java.lang.String getSharedSecret()
          Returns the person's shared secret.
 int getStatus()
          Access method for the status field.
 byte[] getSynchPassword()
          Returns the synchronized password for the person.
 void removePasswordChangeDate()
          Removes the timestamp for date and time that the person password was set.
 void removeRole(DistinguishedName roleDN)
          Removes the given role from the person's role membership.
 void removeSynchPassword()
          Removes the synchronized password for a person.
 void restore()
          Changes the Person's status to ACTIVE_STATUS.
 void setAliases(java.util.Collection aliases)
          Changes the person's aliases.
 void setCustomAttribute(java.lang.String customAttribute)
          Changes the person's custom display attribute.
 void setImmediateSupervisor(DistinguishedName supervisor)
          Changes the person's immediate supervisor.
 void setLastStatusChangeDate(java.util.Date changeDate)
          Changes the date and time the person's status was last changed.
 void setLocale(java.util.Locale loc)
          Changes the person's preferred locale.
 void setMail(java.lang.String email)
          Changes the person's email address.
 void setMails(java.util.Collection mails)
          Changes the person's email addresses.
 void setPasswordChangeDate(java.util.Date date)
          Records the timestamp that person password is set.
 void setRoles(java.util.Collection roles)
          Changes the person's role membership.
 void setSharedSecret(java.lang.String sharedSecret)
          Changes the person's shared secret.
 void setSynchPassword(byte[] pwd)
          Sets the synchronized password for a person.
 void suspend()
          Changes the Person's status to INACTIVE_STATUS.
 void updatePasswordChangeDate()
          Updates the date and time the person password was last set to now.
 
Methods inherited from class com.ibm.itim.dataservices.model.DirectoryObject
addAttribute, getAccessRights, getAttribute, getAttributes, getAuthorizationOwners, getMapAttributeNames, getMappedAttributes, getName, getNameAttribute, getOldMappedAttributes, getProfileName, getRawAttributes, getTenantDN, isLifecycleDefined, removeAttribute, removeAttribute, removeAttribute, setAccessRights, setAttribute, setAttributes, setAuthorizationOwners, setProfileName, setTenantDN, toString
 
Methods inherited from class com.ibm.itim.dataservices.model.DirectoryEntry
clearChange, clearChanges, getChanges, getDistinguishedName, getLastModified, getObjectClasses, getOldAttributes, setDistinguishedName
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

PERSON_ATTR_NAME

public static java.lang.String PERSON_ATTR_NAME
String constant for the naming attribute name.


PERSON_ATTR_EMAIL

public static java.lang.String PERSON_ATTR_EMAIL
String constant for the email attribute name.


PERSON_ATTR_STATUS

public static java.lang.String PERSON_ATTR_STATUS
String constant for the status attribute name.


PERSON_ATTR_SUPERVISOR

public static java.lang.String PERSON_ATTR_SUPERVISOR
String constant for the supervisor attribute name.


PERSON_ATTR_SPONSOR

public static java.lang.String PERSON_ATTR_SPONSOR
String constant for the sponsor attribute name.


PERSON_ATTR_ROLE

public static java.lang.String PERSON_ATTR_ROLE
String constant for the roles attribute name.


PERSON_ATTR_ALIAS

public static java.lang.String PERSON_ATTR_ALIAS
String constant for the aliases attribute name.


PERSON_ATTR_SHAREDSECRET

public static java.lang.String PERSON_ATTR_SHAREDSECRET
String constant for the shared secret attribute name.


STATUS_ACTIVE

public static int STATUS_ACTIVE
Constant indicating "active" status


STATUS_INACTIVE

public static int STATUS_INACTIVE
Code indicating "inactive" status


PERSON_ATTR_DISPLAY

public static java.lang.String PERSON_ATTR_DISPLAY
String constant for the custom display attribute name.


PERSON_ATTR_LOCALE

public static java.lang.String PERSON_ATTR_LOCALE
String constant for the preferred locale attribute name


PERSON_ATTR_CREATION_DATE

public static final java.lang.String PERSON_ATTR_CREATION_DATE
See Also:
Constant Field Values

PERSON_ATTR_STATUS_LAST_CHANGED_DATE

public static final java.lang.String PERSON_ATTR_STATUS_LAST_CHANGED_DATE
String constant for last status change date attribute name.

See Also:
Constant Field Values

PERSON_ATTR_PASSWORD_CHANGE_DATE

public static final java.lang.String PERSON_ATTR_PASSWORD_CHANGE_DATE
String constant that represents the LDAP attribute for the time that the password was last changed.

See Also:
Constant Field Values
Constructor Detail

Person

public Person()
Default empty constructor


Person

public Person(java.lang.String profileName,
              AttributeValues attrs)
Deprecated. Use Person(String profileName) and setAttributes(attributes) instead

Constructs object with profile and attribute information. Warning: the purpose of this constructor is to provide clients with the ability to create value objects for creation in the data store. Do not use this constructor to create value objects that represent existing entities. See the PersonSearch object for achieving that.

Parameters:
profileName - Name of the profile (Person, BPPerson, Employee, Contractor, System, etc.) identifying the type of this person (identity).
attrs - AttributeValues holding the attributes of the person.

Person

public Person(java.lang.String profileName)
Constructs object with profile. Warning: the purpose of this constructor is to provide clients with the ability to create value objects for creation in the data store. Do not use this constructor to create value objects that represent existing entities. See the PersonSearch object for achieving that.

Parameters:
profileName - Name of the profile (Person, BPPerson, Employee, Contractor, System, etc.) identifying the type of this person (identity).
Method Detail

getAliases

public java.util.Collection getAliases()
Returns the person's aliases.

Returns:
Collection of person' aliases (Strings).

setAliases

public void setAliases(java.util.Collection aliases)
Changes the person's aliases.

Parameters:
aliases - Collection of person's new aliases (Strings).

getMail

public java.lang.String getMail()
Returns the person's email address.

Returns:
Person's email address.

setMail

public void setMail(java.lang.String email)
Changes the person's email address.

Parameters:
email - person's new email address.

getMails

public java.util.Collection getMails()
Returns the person's email addresses.

Returns:
Collection of person's email addresses (Strings).

setMails

public void setMails(java.util.Collection mails)
Changes the person's email addresses.

Parameters:
mails - Collection of person's new email addresses (Strings).

getLocale

public java.util.Locale getLocale()
Returns the person's preferred locale

Returns:
Person's preferred locale

setLocale

public void setLocale(java.util.Locale loc)
Changes the person's preferred locale.

Parameters:
loc - person's preferred locale.

getImmediateSupervisor

public DistinguishedName getImmediateSupervisor()
Returns the person's immediate supervisor.

Returns:
DistinguishedName of the person's immediate supervisor, null if none defined.

setImmediateSupervisor

public void setImmediateSupervisor(DistinguishedName supervisor)
Changes the person's immediate supervisor.

Parameters:
supervisor - DistinguishedName of person's new immediate supervisor, null if no supervisor is to be defined.

getStatus

public int getStatus()
Access method for the status field.

Returns:
Enumeration of the person's status, ACTIVE_STATUS, INACTIVE_STATUS.

restore

public void restore()
Changes the Person's status to ACTIVE_STATUS.


suspend

public void suspend()
Changes the Person's status to INACTIVE_STATUS.


getSharedSecret

public java.lang.String getSharedSecret()
Returns the person's shared secret.

Returns:
Person's shared secret.

setSharedSecret

public void setSharedSecret(java.lang.String sharedSecret)
Changes the person's shared secret.

Parameters:
sharedSecret - New shared secret for the person.

getCustomAttribute

public java.lang.String getCustomAttribute()
Returns the person's custom display attribute.

Returns:
Person's custom display attribute.

setCustomAttribute

public void setCustomAttribute(java.lang.String customAttribute)
Changes the person's custom display attribute.

Parameters:
customAttribute - New value for the custom display attribute.

getRoles

public java.util.Collection getRoles()
Returns the person's roles.

Returns:
Collection of the DistinguishedNames of the person's roles).

setRoles

public void setRoles(java.util.Collection roles)
Changes the person's role membership.

Parameters:
roles - Collection of DistinguishedNames of person's roles.

addRole

public void addRole(DistinguishedName roleDN)
Adds the given role to the person's role membership.

Parameters:
roleDN - DisinguishedName of the role to add.

removeRole

public void removeRole(DistinguishedName roleDN)
Removes the given role from the person's role membership.

Parameters:
roleDN - DisinguishedName of the role to remove.

getSynchPassword

public byte[] getSynchPassword()
Returns the synchronized password for the person. The password will be decrypted.

Returns:
password to be used for synchronization.

setSynchPassword

public void setSynchPassword(byte[] pwd)
Sets the synchronized password for a person. The password will be encrypted before saving in the data storage.

Parameters:
pwd - password to be used for password synchronization.

removeSynchPassword

public void removeSynchPassword()
Removes the synchronized password for a person.


getCreationDate

public java.util.Date getCreationDate()
Returns the date and time the person was created. If the attribute does not exist then this method will return null.

Returns:
Date of person creation or null.

setPasswordChangeDate

public void setPasswordChangeDate(java.util.Date date)
Records the timestamp that person password is set.

Parameters:
date - Date holding the date and time the person password is set.

getPasswordChangeDate

public java.util.Date getPasswordChangeDate()
Returns the date and time the the person was last set. If the attribute does not exist then this method will return null.

Returns:
Date that the person password was set or null.

updatePasswordChangeDate

public void updatePasswordChangeDate()
Updates the date and time the person password was last set to now.


removePasswordChangeDate

public void removePasswordChangeDate()
Removes the timestamp for date and time that the person password was set.


getLastStatusChangeDate

public java.util.Date getLastStatusChangeDate()
Returns the date and time the the person's status was last changed. If the attribute does not exist then this method will return null.

Returns:
Date of last status change or null.

setLastStatusChangeDate

public void setLastStatusChangeDate(java.util.Date changeDate)
Changes the date and time the person's status was last changed.

Parameters:
changeDate - Date holding the date and time the person's status was last changed.


IBM Tivoli Identity Manager 4.6
© Copyright International Business Machines Corporation 2005. All rights reserved. US Government Users Restricted Rights Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.