Package com.iplanet.ums
Class FilteredRole
- java.lang.Object
-
- com.iplanet.ums.PersistentObject
-
- com.iplanet.ums.BaseRole
-
- com.iplanet.ums.FilteredRole
-
- All Implemented Interfaces:
IFilteredMembership,IMembership,IRole,ISearch,IUMSConstants,Serializable
public class FilteredRole extends BaseRole implements IFilteredMembership, IUMSConstants
FilteredRole is a role implementation of the membership interface IFilteredRole. FilteredRole maps to nsFilteredRoleDefinition of iPlanet Directory Server.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static StringFILTER_ATTR_NAMEName of the filter attribute, which controls membership.static String[]FILTEREDROLE_ATTRIBUTESThe attributes that are required for FilteredRole.static String[]FILTEREDROLE_OBJECTCLASSESLDAP object classes that define the nsFilteredRoleDefinition, the iPlanet Directory Server object class that maps to FilteredRole.-
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 Constructor Description FilteredRole()No argument constructorFilteredRole(CreationTemplate template, AttrSet attrSet)Constructs a FilteredRole object in memory with a given template.FilteredRole(String name, String filter)Constructs a FilteredRole object in-memory using the default template registered for FilteredRole.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetFilter()Gets the filter that controls the membership.intgetMemberCount()Gets the member count.GuidgetMemberIDAt(int index)Gets a member given an index (zero based).SearchResultsgetMemberIDs()Gets the members of the role.SearchResultsgetMemberIDs(String filter)Gets the members of the role meeting an LDAP filter condition.protected SearchResultsgetMembers(String[] attributes)TO DO : incomplete, fix the logic of building the base and filter Gets the members of the roleprotected SearchResultsgetMembers(String[] attributes, String filter)TO DO : incomplete, fix the logic of building the base and filter Gets the members of the rolebooleanhasMember(Guid guid)Checks if a given identifier is a member of the role.voidsetFilter(String filter)Sets the filter that controls the membership.-
Methods inherited from class com.iplanet.ums.BaseRole
getAccessRight, hasMember, newAccessRight
-
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
-
-
-
-
Field Detail
-
FILTER_ATTR_NAME
public static final String FILTER_ATTR_NAME
Name of the filter attribute, which controls membership.- See Also:
- Constant Field Values
-
FILTEREDROLE_OBJECTCLASSES
public static final String[] FILTEREDROLE_OBJECTCLASSES
LDAP object classes that define the nsFilteredRoleDefinition, the iPlanet Directory Server object class that maps to FilteredRole.
-
FILTEREDROLE_ATTRIBUTES
public static final String[] FILTEREDROLE_ATTRIBUTES
The attributes that are required for FilteredRole. Any creation template for FilteredRole should have these attributes.
-
-
Constructor Detail
-
FilteredRole
public FilteredRole()
No argument constructor
-
FilteredRole
public FilteredRole(String name, String filter) throws UMSException
Constructs a FilteredRole object in-memory using the default template registered for FilteredRole. The save method must be called to save the new object to persistent storage.- Parameters:
name- name for the rolefilter- the filter that controls membership- Throws:
UMSException- on failure to instantiate
-
FilteredRole
public FilteredRole(CreationTemplate template, AttrSet attrSet) throws UMSException
Constructs a FilteredRole object in memory with a given template. The save method must be called to save the new object to persistent storage.- Parameters:
template- Template for creating a groupattrSet- Attribute/value set- Throws:
UMSException- on failure to instantiate
-
-
Method Detail
-
setFilter
public void setFilter(String filter) throws UMSException
Sets the filter that controls the membership.- Specified by:
setFilterin interfaceIFilteredMembership- Parameters:
filter- the filter that controls the membership- Throws:
UMSException- if there is any error while setting the filter
-
getFilter
public String getFilter() throws UMSException
Gets the filter that controls the membership.- Specified by:
getFilterin interfaceIFilteredMembership- Returns:
- the filter that controls the membership
- Throws:
UMSException- if there is any error while getting the filter
-
getMembers
protected SearchResults getMembers(String[] attributes) throws UMSException
TO DO : incomplete, fix the logic of building the base and filter Gets the members of the role- Parameters:
attributes- Attributes to return- Returns:
- SearchResults for iterating through the unique identifiers of members of the role
- Throws:
UMSException- on failure to search
-
getMembers
protected SearchResults getMembers(String[] attributes, String filter) throws InvalidSearchFilterException, UMSException
TO DO : incomplete, fix the logic of building the base and filter Gets the members of the role- Parameters:
attributes- Attributes to returnfilter- an LDAP filter to select a subset of members- Returns:
- SearchResults for iterating through the unique identifiers of members of the role
- Throws:
InvalidSearchFilterException- on invalid search filterUMSException- on failure to search
-
getMemberIDs
public SearchResults getMemberIDs() throws UMSException
Gets the members of the role.- Specified by:
getMemberIDsin interfaceIMembership- Returns:
- SearchResults for iterating through the unique identifiers of members of the role
- Throws:
UMSException- on failure to search
-
getMemberIDs
public SearchResults getMemberIDs(String filter) throws UMSException
Gets the members of the role meeting an LDAP filter condition.- Parameters:
filter- an LDAP filter to select a subset of members- Returns:
- SearchResults for iterating through the unique identifiers of members of the role
- Throws:
UMSException- on failure to search
-
getMemberCount
public int getMemberCount() throws UMSExceptionGets the member count.- Specified by:
getMemberCountin interfaceIMembership- Returns:
- Number of members of the role
- Throws:
UMSException- on failure to search
-
getMemberIDAt
public Guid getMemberIDAt(int index) throws UMSException
Gets a member given an index (zero based).- Specified by:
getMemberIDAtin interfaceIMembership- Parameters:
index- Zero-based index into the group container- Returns:
- Unique identifier for a member
- Throws:
UMSException- on failure to search
-
hasMember
public boolean hasMember(Guid guid) throws UMSException
Checks if a given identifier is a member of the role.- Specified by:
hasMemberin interfaceIMembership- Parameters:
guid- guid of the member to be checked for membership- Returns:
trueif it is a member- Throws:
UMSException- on failure to read object for guid
-
-