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 protectedPeopleContainer()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 voidaddChildPeopleContainer(PeopleContainer pc)Adds a new People Container object to the People Container.voidaddUser(User user)Adds a new User object to the People Container.longgetChildPeopleContainerCount()Gets the current number of People Containers.longgetMaxChildPeopleContainerLimit()Gets the container limit constraint.longgetMaxUserLimit()Gets the user limit constraint.StringgetName()Return name of the People Container.longgetUserCount()Gets the current number of users.booleanisMember(User user)Checks if a given user is a member of the container.voidremoveChildPeopleContainer(PeopleContainer pc)Removes a People Container object from the People Container.voidremoveUser(User user)Removes an User object from the People Container.voidsetMaxChildPeopleContainerLimit(long limit)Sets max children People Container limit for a People Container.voidsetMaxUserLimit(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 UMSExceptionNo 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 UMSExceptionGets the current number of users.- Returns:
- the current number of users
- Throws:
UMSException
-
getChildPeopleContainerCount
public long getChildPeopleContainerCount() throws UMSExceptionGets the current number of People Containers.- Returns:
- the current number of People Containers
- Throws:
UMSException
-
setMaxUserLimit
public void setMaxUserLimit(long limit) throws UMSExceptionSets 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 UMSExceptionSets max children People Container limit for a People Container.- Parameters:
limit- number of children People Containers allowed- Throws:
UMSException
-
getMaxUserLimit
public long getMaxUserLimit() throws UMSExceptionGets the user limit constraint.- Returns:
- user limit constraint
- Throws:
UMSException
-
getMaxChildPeopleContainerLimit
public long getMaxChildPeopleContainerLimit() throws UMSExceptionGets 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
-
-