public class SchemaSubentryManager
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
private static int |
ATTRIBUTE_TYPE_INDEX |
private static java.lang.String |
CASCADING_ERROR |
private static int |
COMPARATOR_INDEX |
private static int |
DIT_CONTENT_RULE_INDEX |
private static int |
DIT_STRUCTURE_RULE_INDEX |
private static org.slf4j.Logger |
LOG
A logger for this class
|
private static int |
MATCHING_RULE_INDEX |
private static int |
MATCHING_RULE_USE_INDEX |
private static int |
NAME_FORM_INDEX |
private static int |
NORMALIZER_INDEX |
private static int |
OBJECT_CLASS_INDEX |
private java.util.Map<java.lang.String,java.lang.Integer> |
opAttr2handlerIndex
Maps the OID of a subschemaSubentry operational attribute to the index of
the handler in the schemaObjectHandlers array.
|
private DescriptionParsers |
parsers
The description parsers
|
private org.apache.directory.api.ldap.model.schema.SchemaManager |
schemaManager
The schemaManager
|
private SchemaSubentryModifier |
subentryModifier |
private static int |
SYNTAX_CHECKER_INDEX |
private static int |
SYNTAX_INDEX |
private static java.util.Set<java.lang.String> |
VALID_OU_VALUES |
| Constructor and Description |
|---|
SchemaSubentryManager(org.apache.directory.api.ldap.model.schema.SchemaManager schemaManager,
org.apache.directory.api.ldap.model.schema.registries.SchemaLoader loader,
DnFactory dnFactory) |
| Modifier and Type | Method and Description |
|---|---|
private Interceptor |
findNextInterceptor(OperationEnum operation,
DirectoryService directoryService)
Find the next interceptor in an operation's list of interceptors, assuming that
we are already processing an operation, and we have stopped in a specific
interceptor.
For instance, if the list of all the interceptors is : [A, B, C, D, E, F] and we ave two operations op1 and op2 with the following interceptors list : op1 -> [A, D, F] op2 -> [B, C, E] then assuming that we have stopped at D, then op1.next -> F and op2.next -> E. |
private int |
findPosition(OperationEnum operation,
Interceptor interceptor,
DirectoryService directoryService)
Find the position in the operation's list knowing the inteceptor name.
|
private void |
modifyAddOperation(Interceptor nextInterceptor,
int position,
ModifyOperationContext modifyContext,
java.lang.String opAttrOid,
org.apache.directory.api.ldap.model.entry.Attribute mods,
boolean doCascadeModify)
Handles the modify add operation on the subschemaSubentry for schema entities.
|
private void |
modifyRemoveOperation(Interceptor nextInterceptor,
int position,
ModifyOperationContext modifyContext,
java.lang.String opAttrOid,
org.apache.directory.api.ldap.model.entry.Attribute mods)
Handles the modify remove operation on the subschemaSubentry for schema entities.
|
void |
modifySchemaSubentry(ModifyOperationContext modifyContext,
boolean doCascadeModify)
Update the SubschemaSubentry with all the modifications
|
private static final org.slf4j.Logger LOG
private static final int COMPARATOR_INDEX
private static final int NORMALIZER_INDEX
private static final int SYNTAX_CHECKER_INDEX
private static final int SYNTAX_INDEX
private static final int MATCHING_RULE_INDEX
private static final int ATTRIBUTE_TYPE_INDEX
private static final int OBJECT_CLASS_INDEX
private static final int MATCHING_RULE_USE_INDEX
private static final int DIT_STRUCTURE_RULE_INDEX
private static final int DIT_CONTENT_RULE_INDEX
private static final int NAME_FORM_INDEX
private static final java.util.Set<java.lang.String> VALID_OU_VALUES
private final org.apache.directory.api.ldap.model.schema.SchemaManager schemaManager
private final SchemaSubentryModifier subentryModifier
private final DescriptionParsers parsers
private final java.util.Map<java.lang.String,java.lang.Integer> opAttr2handlerIndex
private static final java.lang.String CASCADING_ERROR
public SchemaSubentryManager(org.apache.directory.api.ldap.model.schema.SchemaManager schemaManager,
org.apache.directory.api.ldap.model.schema.registries.SchemaLoader loader,
DnFactory dnFactory)
throws org.apache.directory.api.ldap.model.exception.LdapException
org.apache.directory.api.ldap.model.exception.LdapExceptionprivate Interceptor findNextInterceptor(OperationEnum operation, DirectoryService directoryService)
private int findPosition(OperationEnum operation, Interceptor interceptor, DirectoryService directoryService)
public void modifySchemaSubentry(ModifyOperationContext modifyContext, boolean doCascadeModify) throws org.apache.directory.api.ldap.model.exception.LdapException
org.apache.directory.api.ldap.model.exception.LdapExceptionprivate void modifyRemoveOperation(Interceptor nextInterceptor, int position, ModifyOperationContext modifyContext, java.lang.String opAttrOid, org.apache.directory.api.ldap.model.entry.Attribute mods) throws org.apache.directory.api.ldap.model.exception.LdapException
opAttrOid - the numeric id of the operational attribute modifiedmods - the attribute with the modifications
to effect all dependents on the changed entityjava.lang.Exception - if there are problems updating the registries and the
schema partitionorg.apache.directory.api.ldap.model.exception.LdapExceptionprivate void modifyAddOperation(Interceptor nextInterceptor, int position, ModifyOperationContext modifyContext, java.lang.String opAttrOid, org.apache.directory.api.ldap.model.entry.Attribute mods, boolean doCascadeModify) throws org.apache.directory.api.ldap.model.exception.LdapException
opAttrOid - the numeric id of the operational attribute modifiedmods - the attribute with the modificationsdoCascadeModify - determines if a cascading operation should be performed
to effect all dependents on the changed entityjava.lang.Exception - if there are problems updating the registries and the
schema partitionorg.apache.directory.api.ldap.model.exception.LdapException