Interface AttributeTypeRegistry
-
- All Superinterfaces:
Iterable<AttributeType>
,SchemaObjectRegistry<AttributeType>
- All Known Implementing Classes:
DefaultAttributeTypeRegistry
,ImmutableAttributeTypeRegistry
public interface AttributeTypeRegistry extends SchemaObjectRegistry<AttributeType>, Iterable<AttributeType>
An AttributeType registry service interface.- Author:
- Apache Directory Project
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addMappingFor(AttributeType attributeType)
Add a new Oid/Normalizer couple in the OidNormalizer mapAttributeTypeRegistry
copy()
Copy the AttributeTypeRegistryIterator<AttributeType>
descendants(String ancestorId)
Get's an iterator over the set of descendant attributeTypes for some ancestor's name alias or their OID.Iterator<AttributeType>
descendants(AttributeType ancestor)
Get's an iterator over the set of descendant attributeTypes for some ancestor's name alias or their OID.Map<String,OidNormalizer>
getNormalizerMapping()
Gets an oid/name to normalizer mapping used to normalize distinguished names.boolean
hasDescendants(String ancestorId)
Quick lookup to see if an attribute has descendants.boolean
hasDescendants(AttributeType ancestor)
Quick lookup to see if an attribute has descendants.void
registerDescendants(AttributeType attributeType, AttributeType ancestor)
Store the AttributeType into a map associating an AttributeType to its descendants.void
removeMappingFor(AttributeType attributeType)
Remove a new Oid/Normalizer couple in the OidNormalizer mapvoid
unregisterDescendants(AttributeType attributeType, AttributeType ancestor)
Remove the AttributeType from the map associating an AttributeType to its descendants.-
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
-
Methods inherited from interface org.apache.directory.api.ldap.model.schema.registries.SchemaObjectRegistry
clear, contains, get, getOidByName, getSchemaName, getType, iterator, lookup, oidsIterator, register, renameSchema, size, unregister, unregister, unregisterSchemaElements
-
-
-
-
Method Detail
-
getNormalizerMapping
Map<String,OidNormalizer> getNormalizerMapping()
Gets an oid/name to normalizer mapping used to normalize distinguished names.- Returns:
- a map of OID Strings to OidNormalizer instances
-
hasDescendants
boolean hasDescendants(String ancestorId) throws LdapException
Quick lookup to see if an attribute has descendants.- Parameters:
ancestorId
- the name alias or OID for an attributeType- Returns:
- an Iterator over the AttributeTypes which have the ancestor within their superior chain to the top
- Throws:
LdapException
- if the ancestor attributeType cannot be discerned from the ancestorId supplied
-
hasDescendants
boolean hasDescendants(AttributeType ancestor) throws LdapException
Quick lookup to see if an attribute has descendants.- Parameters:
ancestor
- the attributeType we are looking for- Returns:
- an Iterator over the AttributeTypes which have the ancestor within their superior chain to the top
- Throws:
LdapException
- if the ancestor attributeType cannot be discerned from the ancestorId supplied
-
descendants
Iterator<AttributeType> descendants(String ancestorId) throws LdapException
Get's an iterator over the set of descendant attributeTypes for some ancestor's name alias or their OID.- Parameters:
ancestorId
- the name alias or OID for an attributeType- Returns:
- an Iterator over the AttributeTypes which have the ancestor within their superior chain to the top
- Throws:
LdapException
- if the ancestor attributeType cannot be discerned from the ancestorId supplied
-
descendants
Iterator<AttributeType> descendants(AttributeType ancestor) throws LdapException
Get's an iterator over the set of descendant attributeTypes for some ancestor's name alias or their OID.- Parameters:
ancestor
- the AttributeType we are looking for- Returns:
- an Iterator over the AttributeTypes which have the ancestor within their superior chain to the top
- Throws:
LdapException
- if the ancestor attributeType cannot be discerned from the ancestorId supplied
-
registerDescendants
void registerDescendants(AttributeType attributeType, AttributeType ancestor) throws LdapException
Store the AttributeType into a map associating an AttributeType to its descendants.- Parameters:
attributeType
- The attributeType to registerancestor
- The attributeType's parent- Throws:
LdapException
- If something went wrong
-
unregisterDescendants
void unregisterDescendants(AttributeType attributeType, AttributeType ancestor) throws LdapException
Remove the AttributeType from the map associating an AttributeType to its descendants.- Parameters:
attributeType
- The attributeType to unregisterancestor
- its ancestor- Throws:
LdapException
- If something went wrong
-
addMappingFor
void addMappingFor(AttributeType attributeType) throws LdapException
Add a new Oid/Normalizer couple in the OidNormalizer map- Parameters:
attributeType
- The AttributeType to add- Throws:
LdapException
- If something went wrong
-
removeMappingFor
void removeMappingFor(AttributeType attributeType) throws LdapException
Remove a new Oid/Normalizer couple in the OidNormalizer map- Parameters:
attributeType
- The AttributeType to remove- Throws:
LdapException
- If something went wrong
-
copy
AttributeTypeRegistry copy()
Copy the AttributeTypeRegistry- Specified by:
copy
in interfaceSchemaObjectRegistry<AttributeType>
- Returns:
- The copied AttributeTypeRegistry
-
-