org.apache.directory.server.core.schema
Class SchemaOperationControl

java.lang.Object
  extended by org.apache.directory.server.core.schema.SchemaOperationControl

public class SchemaOperationControl
extends java.lang.Object

Central point of control for schemas enforced by the server. The following duties are presently performed by this class:

Version:
$Rev$, $Date$
Author:
Apache Directory Project

Constructor Summary
SchemaOperationControl(Registries registries, PartitionSchemaLoader loader, SchemaPartitionDao dao)
           
 
Method Summary
 void add(AddOperationContext opContext)
           
 void delete(DeleteOperationContext opContext, ClonedServerEntry entry, boolean doCascadeDelete)
           
 Registries getGlobalRegistries()
           
 Registries getRegistries(org.apache.directory.shared.ldap.name.LdapDN dn)
           
 java.lang.String getSchema(org.apache.directory.shared.ldap.schema.syntax.AbstractSchemaDescription desc)
           
 void modify(ModifyOperationContext opContext, org.apache.directory.shared.ldap.entry.ModificationOperation modOp, ServerEntry mods, ServerEntry entry, ServerEntry targetEntry, boolean cascade)
           
 void modify(ModifyOperationContext opContext, ServerEntry entry, ServerEntry targetEntry, boolean doCascadeModify)
           
 void modifyRn(RenameOperationContext opContext, ServerEntry entry, boolean doCascadeModify)
           
 void modifySchemaSubentry(ModifyOperationContext opContext, org.apache.directory.shared.ldap.name.LdapDN name, int modOp, ServerEntry mods, ServerEntry subentry, ServerEntry targetSubentry, boolean doCascadeModify)
          Translates modify operations on schema subentries into one or more operations on meta schema entities within the ou=schema partition and updates the registries accordingly.
 void modifySchemaSubentry(ModifyOperationContext opContext, ServerEntry subentry, ServerEntry targetSubentry, boolean doCascadeModify)
          Translates modify operations on schema subentries into one or more operations on meta schema entities within the ou=schema partition and updates the registries accordingly.
 void move(MoveAndRenameOperationContext opContext, ServerEntry entry, boolean cascade)
           
 void replace(MoveOperationContext opContext, ServerEntry entry, boolean cascade)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SchemaOperationControl

public SchemaOperationControl(Registries registries,
                              PartitionSchemaLoader loader,
                              SchemaPartitionDao dao)
                       throws java.lang.Exception
Throws:
java.lang.Exception
Method Detail

getGlobalRegistries

public Registries getGlobalRegistries()

getRegistries

public Registries getRegistries(org.apache.directory.shared.ldap.name.LdapDN dn)

add

public void add(AddOperationContext opContext)
         throws java.lang.Exception
Throws:
java.lang.Exception

delete

public void delete(DeleteOperationContext opContext,
                   ClonedServerEntry entry,
                   boolean doCascadeDelete)
            throws java.lang.Exception
Throws:
java.lang.Exception

modify

public void modify(ModifyOperationContext opContext,
                   org.apache.directory.shared.ldap.entry.ModificationOperation modOp,
                   ServerEntry mods,
                   ServerEntry entry,
                   ServerEntry targetEntry,
                   boolean cascade)
            throws java.lang.Exception
Throws:
java.lang.Exception

modify

public void modify(ModifyOperationContext opContext,
                   ServerEntry entry,
                   ServerEntry targetEntry,
                   boolean doCascadeModify)
            throws java.lang.Exception
Throws:
java.lang.Exception

modifyRn

public void modifyRn(RenameOperationContext opContext,
                     ServerEntry entry,
                     boolean doCascadeModify)
              throws java.lang.Exception
Throws:
java.lang.Exception

replace

public void replace(MoveOperationContext opContext,
                    ServerEntry entry,
                    boolean cascade)
             throws java.lang.Exception
Throws:
java.lang.Exception

move

public void move(MoveAndRenameOperationContext opContext,
                 ServerEntry entry,
                 boolean cascade)
          throws java.lang.Exception
Throws:
java.lang.Exception

modifySchemaSubentry

public void modifySchemaSubentry(ModifyOperationContext opContext,
                                 ServerEntry subentry,
                                 ServerEntry targetSubentry,
                                 boolean doCascadeModify)
                          throws java.lang.Exception
Translates modify operations on schema subentries into one or more operations on meta schema entities within the ou=schema partition and updates the registries accordingly. This uses direct access to the partition to bypass all interceptors.

Parameters:
name - the name of the subentry
mods - the modification operations performed on the subentry
subentry - the attributes of the subentry
targetSubentry - the target subentry after being modified
doCascadeModify - determines if a cascading operation should be performed to effect all dependents on the changed entity
Throws:
javax.naming.NamingException - if the operation fails
java.lang.Exception

modifySchemaSubentry

public void modifySchemaSubentry(ModifyOperationContext opContext,
                                 org.apache.directory.shared.ldap.name.LdapDN name,
                                 int modOp,
                                 ServerEntry mods,
                                 ServerEntry subentry,
                                 ServerEntry targetSubentry,
                                 boolean doCascadeModify)
                          throws java.lang.Exception
Translates modify operations on schema subentries into one or more operations on meta schema entities within the ou=schema partition and updates the registries accordingly. This uses direct access to the partition to bypass all interceptors.

Parameters:
name - the name of the subentry
modOp - the modification operation performed on the subentry
mods - the modification operations performed on the subentry
subentry - the attributes of the subentry
targetSubentry - the target subentry after being modified
doCascadeModify - determines if a cascading operation should be performed to effect all dependents on the changed entity
Throws:
javax.naming.NamingException - if the modify fails
java.lang.Exception

getSchema

public java.lang.String getSchema(org.apache.directory.shared.ldap.schema.syntax.AbstractSchemaDescription desc)


Copyright © 2003-2009 Apache Software Foundation. All Rights Reserved.