Package com.iplanet.ums
Class PeopleContainer
- java.lang.Object
-
- com.iplanet.ums.PersistentObject
-
- com.iplanet.ums.PeopleContainer
-
- All Implemented Interfaces:
ISearch
,IUMSConstants
,Serializable
public class PeopleContainer extends PersistentObject
Represents People Container in UMS. People Container is simply a container for storing user entries.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class com.iplanet.ums.PersistentObject
COMPUTED_MEMBER_ATTR_NAME
-
Fields inherited from interface com.iplanet.ums.IUMSConstants
ADD_NULL_OBJ, ATTR_NOT_ALLOWED, ATTRIBUTETYPE_NOT_FOUND, BAD_ATTRNAMES, BAD_CHILD_OBJ, BAD_CLASS, BAD_COS_ATTR_QUALIFIER, BAD_GUID, BAD_ID, BAD_NAMING_ATTR, BAD_OBJ_TO_ADD, BAD_PRINCIPAL_HDL, BAD_STRUCTURE_TEMPLATE_PRIORITY, BAD_TEMPLATE, BAD_TOKEN_HDL, COMPOSE_GUID_FAILED, CONFIG_MGR_ERROR, COS_DEF_OR_TARGET_OBJECT_NULL, COS_DEFINITION_NOT_FOUND, COS_DEFINITION_NOT_PERSISTENT, COS_TARGET_OBJECT_DIFFERENT_TREE, COS_TARGET_OBJECT_NOT_PERSISTENT, COS_TEMPLATE_NOT_FOUND, DATA_CONSTRAINT, DEFINITION_NOT_PERSISTENT, DEL_NULL_OBJ, DSCFG_CONNECTFAIL, DSCFG_CTRLERROR, DSCFG_DIRSERVER_NODE_EXPECTED, DSCFG_INVALID_BASE_DN, DSCFG_JSSSFFAIL, DSCFG_NO_FILE_PATH, DSCFG_NOCFGMGR, DSCFG_SERVER_NOT_FOUND, DSCFG_SERVERGROUP_NODE_EXPECTED, DSCFG_UNSUPPORTEDLSTNRTYPE, DSCFG_UNSUPPORTEDSERVERCTRL, ENTRY_ALREADY_EXISTS, ENTRY_NOT_FOUND, ERROR_CM, ERROR_CM_INITIATE, ILLEGAL_ADGROUP_SCOPE, ILLEGAL_GROUP_SCOPE, INSTANCE_FAILED, INSUFFICIENT_ACCESS_ADD, INSUFFICIENT_ACCESS_DELETE, INVALID_COS_ATTRIBUTE_QUALIFIER, INVALID_COSDEFINITION, INVALID_TOKEN, MISSING_TEMPL_NAME, MULTIPLE_ENTRY, NEW_INSTANCE_FAILED, NEXT_ENTRY_FAILED, NO_NAMING_ATTR, NO_POLICY_DOMAIN, NO_RECURSION_ALLOW, NO_REQUIRED, NO_VALUE, NULL_GUIDS, NULL_PRINCIPAL, NULL_SESSION, NULL_TOKEN, OBJECT_NOT_PERSISTENT, OBJECTCLASS_NOT_FOUND, PERSISTENT_OBJECT_PARAM_NULL, POLICIES_DO_NOT_MATCH_BY_NAME_RESOURCE_ACTION, POLICY_DOMAIN_NOT_FOUND, POLICY_EXISTS_FOR_NAME, POLICY_EXISTS_FOR_RESOURCE_ACTION, POLICY_NOT_FOUND, POLICY_ROOT_NOT_FOUND, READ_ATTRIBUTES_ERROR, READING_LDIF_FAILED, REPLACE_DEFINITION_NOT_PERSISTENT, ROLE_CONTAINED, SEARCH_FAILED, services_validator_initialize_failed, services_validator_invalid_attr_name, services_validator_invalid_attr_schema, services_validator_schema_does_not_exist, SMS_ADD_SUB_CONFIG_FAILED, SMS_ADMIN_LIMIT_EXCEEDED, SMS_ATTR_LIST_NEEDED, SMS_ATTR_NAME_NOT_FOUND, SMS_ATTR_OR_VAL_EXISTS, SMS_ATTR_SYNTAX_NOT_FOUND, SMS_AUTHENTICATION_ERROR, SMS_CAN_NOT_CONSTRUCT_SERVICE_MANAGER, SMS_CANNOT_CREATE_INSTANCE, SMS_CANNOT_CREATE_PLACE_HOLDER_NODE, SMS_EVENT_NOTIFICATION_FAILED, SMS_failed_to_get_schema_manager, SMS_INSUFFICIENT_ACCESS_RIGHTS, SMS_INVALID_ATTR_ENTRY, SMS_INVALID_ATTR_NAME, SMS_INVALID_CLASS_NAME, SMS_INVALID_CONFIG_NAME, SMS_INVALID_DN, SMS_INVALID_METHOD, SMS_INVALID_OP_VALUE, SMS_INVALID_PARAMETERS, SMS_INVALID_SEARCH_BASE, SMS_INVALID_SEARCH_ORDER_PARAMETER, SMS_INVALID_SEARCH_PATTERN, SMS_LDAP_NOT_SUPPORTED, SMS_LDAP_OPERATION_FAILED, SMS_LDAP_REFERRAL_EXCEPTION, SMS_LDAP_SERVER_BUSY, SMS_NO_ATTRIBUTE_IN_ENTRY, SMS_NO_SUCH_ATTRIBUTE, SMS_NO_SUCH_OBJECT, SMS_NODE_ALREADY_EXISTS, SMS_OC_NAME_NOT_FOUND, SMS_organization_already_exists_no_args, SMS_READONLY_OBJ, SMS_SERVER_DOWN, SMS_SERVER_INSTANCE_NOT_FOUND, SMS_service_already_exists, SMS_service_already_exists_no_args, SMS_service_does_not_exist, SMS_SERVICE_NAME_NOT_FOUND, SMS_SERVICE_NODE_NOT_FOUND, SMS_services_node_does_not_exist, SMS_SMSSchema_exception_message, SMS_SMSSchema_invalid_input_stream, SMS_SMSSchema_invalid_xml_document, SMS_SMSSchema_no_schema_element, SMS_SMSSchema_no_service_element, SMS_SMSSchema_parser_error, SMS_SMSSchema_service_notfound, SMS_SUB_CONFIG_DOES_NOT_EXIST, SMS_TIME_LIMIT_EXCEEDED, SMS_UNEXPECTED_LDAP_EXCEPTION, SMS_UNKNOWN_EXCEPTION_OCCURRED, SMS_VALIDATOR_CANNOT_INSTANTIATE_CLASS, SMS_VALUE_DOES_NOT_EXIST, SMS_xml_invalid_doc_type, SMS_XML_PARSER_EXCEPTION, SMSSCHEMA_SERVICE_NOTFOUND, SSO_ILLEGALACCESS, SSO_NOPROVIDERCLASS, SSO_NOPROVIDERINSTANCE, SSO_NOPROVIDERPROPERTY, STRUCTURE_TEMPLATE_ATTRSET_NULL, TEMPLATE_NO_ATTR, UMS_BUNDLE_NAME, UMS_DEBUG, UMS_PKG, UNABLE_TO_ADD_ENTRY, UNABLE_TO_DELETE_ENTRY, UNABLE_TO_READ_ENTRY, UNMATCHED_CLASS, USER_NOT_IN_GROUP_SCOPE
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
PeopleContainer()
No args constructor, used to contruct the right object as entries are read from persistent storage.PeopleContainer(CreationTemplate template, AttrSet attrSet)
Constructs a People Container object without a session.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addChildPeopleContainer(PeopleContainer pc)
Adds a new People Container object to the People Container.void
addUser(User user)
Adds a new User object to the People Container.long
getChildPeopleContainerCount()
Gets the current number of People Containers.long
getMaxChildPeopleContainerLimit()
Gets the container limit constraint.long
getMaxUserLimit()
Gets the user limit constraint.String
getName()
Return name of the People Container.long
getUserCount()
Gets the current number of users.boolean
isMember(User user)
Checks if a given user is a member of the container.void
removeChildPeopleContainer(PeopleContainer pc)
Removes a People Container object from the People Container.void
removeUser(User user)
Removes an User object from the People Container.void
setMaxChildPeopleContainerLimit(long limit)
Sets max children People Container limit for a People Container.void
setMaxUserLimit(long limit)
Sets max user limit for a People Container.-
Methods inherited from class com.iplanet.ums.PersistentObject
addACI, addAttributeValue, addChild, changePassword, deleteACI, getACI, getACI, getAttribute, getAttribute, getAttributeNames, getAttributes, getAttributes, getAttributes, getAttrSet, getChildren, getChildren, getChildren, getDN, getGuid, getNamingAttribute, getParentGuid, getParentObject, getRoles, idToDN, isMemberOf, isPersistent, modify, modify, modify, remove, removeAttribute, removeAttributeValue, removeChild, removeChild, rename, replaceACI, save, search, search, search, setAttribute, setAttribute, setAttrSet, setGuid, toString
-
-
-
-
Constructor Detail
-
PeopleContainer
protected PeopleContainer() throws UMSException
No args constructor, used to contruct the right object as entries are read from persistent storage.- Throws:
UMSException
-
PeopleContainer
public PeopleContainer(CreationTemplate template, AttrSet attrSet) throws UMSException
Constructs a People Container object without a session. Unlike constructor with session, this one simply creates People Container object in memory. Call save() to save the object to persistent storage.- Parameters:
template
- template for the People Container, containing required and optional attributes, and possibly default valuesattrSet
- attribute/value set- Throws:
UMSException
-
-
Method Detail
-
addUser
public void addUser(User user) throws AccessRightsException, EntryAlreadyExistsException, UMSException
Adds a new User object to the People Container.- Parameters:
user
- User object to be added to the container- Throws:
AccessRightsEsception
- if an access rights exception occursEntryAlreadyExistsException
- if the entry already existsUMSException
- Fail to add the objectAccessRightsException
-
addChildPeopleContainer
public void addChildPeopleContainer(PeopleContainer pc) throws AccessRightsException, EntryAlreadyExistsException, UMSException
Adds a new People Container object to the People Container.- Parameters:
pc
- People Container object to be added to the container- Throws:
AccessRightsEsception
- if an access rights exception occursEntryAlreadyExistsException
- if the entry already existsUMSException
- fails to add the objectAccessRightsException
-
removeUser
public void removeUser(User user) throws AccessRightsException, UMSException
Removes an User object from the People Container.- Parameters:
user
- User object to be removed to the container- Throws:
AccessRightsEsception
- if an access rights exception occursUMSException
- fails to remove the objectAccessRightsException
-
removeChildPeopleContainer
public void removeChildPeopleContainer(PeopleContainer pc) throws AccessRightsException, EntryNotFoundException, UMSException
Removes a People Container object from the People Container.- Parameters:
pc
- People Container object to be removed to the container- Throws:
AccessRightsEsception
- if an access rights exception occursEntryNotFoundException
- if the entry is not foundUMSException
- fails to remove the objectAccessRightsException
-
getUserCount
public long getUserCount() throws UMSException
Gets the current number of users.- Returns:
- the current number of users
- Throws:
UMSException
-
getChildPeopleContainerCount
public long getChildPeopleContainerCount() throws UMSException
Gets the current number of People Containers.- Returns:
- the current number of People Containers
- Throws:
UMSException
-
setMaxUserLimit
public void setMaxUserLimit(long limit) throws UMSException
Sets max user limit for a People Container.- Parameters:
limit
- number of users allowed in a People Container- Throws:
UMSException
-
setMaxChildPeopleContainerLimit
public void setMaxChildPeopleContainerLimit(long limit) throws UMSException
Sets max children People Container limit for a People Container.- Parameters:
limit
- number of children People Containers allowed- Throws:
UMSException
-
getMaxUserLimit
public long getMaxUserLimit() throws UMSException
Gets the user limit constraint.- Returns:
- user limit constraint
- Throws:
UMSException
-
getMaxChildPeopleContainerLimit
public long getMaxChildPeopleContainerLimit() throws UMSException
Gets the container limit constraint.- Returns:
- container limit constraint
- Throws:
UMSException
-
isMember
public boolean isMember(User user) throws UMSException
Checks if a given user is a member of the container.- Parameters:
user
- User object to be checked- Returns:
- true if it is a member
- Throws:
UMSException
-
getName
public String getName() throws UMSException
Return name of the People Container.- Returns:
- name of the People Container
- Throws:
UMSException
-
-