com.ibm.itim.dataservices.model.policy
Class SeparationOfDutyRule

java.lang.Object
  extended by com.ibm.itim.dataservices.model.DirectoryEntry
      extended by com.ibm.itim.dataservices.model.DirectoryObject
          extended by com.ibm.itim.dataservices.model.policy.SeparationOfDutyRule
All Implemented Interfaces:
ProtectedObject, com.ibm.itim.util.Sortable, com.ibm.itim.util.xml.objectstream.Importable, java.io.Serializable, java.lang.Comparable

public class SeparationOfDutyRule
extends DirectoryObject
implements java.lang.Comparable

This class represents a Separation Of Duty Policy Rule. This is made up of a name, cardinality, and list of role DNs. This is used in conjunction with the SeparationOfDutyPolicy value object.

Since:
ITIM 5.1
See Also:
SeparationOfDutyPolicy, Serialized Form

Field Summary
static java.lang.String PROFILE_NAME
          The profile name for SeparationOfDutyPolicy
 
Fields inherited from class com.ibm.itim.dataservices.model.DirectoryObject
ATTR_ACCESS_RIGHT, ATTR_LIFECYCLE_ENABLE, ATTR_URI, DESCRIPTION, NAME
 
Fields inherited from interface com.ibm.itim.util.Sortable
ATTR_NAME
 
Constructor Summary
SeparationOfDutyRule()
          Default empty constructor
SeparationOfDutyRule(java.lang.String name, int cardinality, java.util.Collection<java.lang.String> roles)
          Constructor which allos setting all values for the separation of duty rule
 
Method Summary
 int compareTo(java.lang.Object o)
           
 boolean equals(java.lang.Object object)
           
 java.util.Map<java.lang.String,java.util.Set<java.lang.String>> getActualRolesMap()
          Gets a map containing the roles that are associated with this Separation of Duty Rule as the keys to the map.
 int getCardinality()
          Gets the cardinality value for this separation of duty rule
 java.lang.String getName()
          Gets the name of the separation of duty rule.
 java.lang.String getProfileName()
          Returns the name of the profile associated to the object
 java.util.Collection<java.lang.String> getRoles()
          Gets the list of roles that are associated with this Separation of Duty Rule
 int hashCode()
           
 void setCardinality(int cardinality)
          Sets the cardinality value for this spearation of duty rule
 void setName(java.lang.String name)
          Sets the name of the separation of duty rule.
 void setRoles(java.util.Collection<java.lang.String> roles)
          A set of roles this rule should apply.
 
Methods inherited from class com.ibm.itim.dataservices.model.DirectoryObject
addAttribute, addAttributeValues, getAccessRights, getAttribute, getAttributes, getAuthorizationOwners, getMapAttributeNames, getMappedAttributes, getNameAttribute, getOldMappedAttributes, getRawAttributes, getSortValue, getTenantDN, isLifecycleDefined, 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
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

PROFILE_NAME

public static final java.lang.String PROFILE_NAME
The profile name for SeparationOfDutyPolicy

See Also:
Constant Field Values
Constructor Detail

SeparationOfDutyRule

public SeparationOfDutyRule()
Default empty constructor


SeparationOfDutyRule

public SeparationOfDutyRule(java.lang.String name,
                            int cardinality,
                            java.util.Collection<java.lang.String> roles)
Constructor which allos setting all values for the separation of duty rule

Parameters:
name - name of the separation of duty rule
cardinality - the cardinality of the separation of duty rule (should be less than the number of roles)
roles - Collection of DistinguishedName representing the organizational roles that are in this rule
Method Detail

getProfileName

public java.lang.String getProfileName()
Description copied from class: DirectoryObject
Returns the name of the profile associated to the object

Overrides:
getProfileName in class DirectoryObject
Returns:
String profile name. Returns null when there is no object profile associated with this object.

setName

public void setName(java.lang.String name)
Sets the name of the separation of duty rule.

Parameters:
name -

getName

public java.lang.String getName()
Gets the name of the separation of duty rule.

Overrides:
getName in class DirectoryObject
Returns:
String representing logical name of the object or null.

getCardinality

public int getCardinality()
Gets the cardinality value for this separation of duty rule

Returns:
integer representing the value of the cardinality

setCardinality

public void setCardinality(int cardinality)
Sets the cardinality value for this spearation of duty rule

Parameters:
cardinality - the cardinality to set for this rule (should be less than the number of roles in the rule)

getRoles

public java.util.Collection<java.lang.String> getRoles()
Gets the list of roles that are associated with this Separation of Duty Rule

Returns:
the Collection of DistinguishedName of the roles in this rule

getActualRolesMap

public java.util.Map<java.lang.String,java.util.Set<java.lang.String>> getActualRolesMap()
Gets a map containing the roles that are associated with this Separation of Duty Rule as the keys to the map. The map values are the set of roles that are descendants of the key role. The descendant roles, though not explicitly defined by the rule, are explicitly governed by it via role inheritance.

Returns:
the Map of roles in this rule and their respective descendant roles.

setRoles

public void setRoles(java.util.Collection<java.lang.String> roles)
A set of roles this rule should apply. All duplicates are removed. Parameter roles cannot be null.

Parameters:
roles -

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object object)
Overrides:
equals in class java.lang.Object

compareTo

public int compareTo(java.lang.Object o)
Specified by:
compareTo in interface java.lang.Comparable


IBM Security Identity Manager 6.0.0
© Copyright International Business Machines Corporation 2007, 2012. All rights reserved. US Government Users Restricited Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.