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

java.lang.Object
  extended by org.apache.directory.server.core.schema.AbstractSchemaChangeHandler
All Implemented Interfaces:
SchemaChangeHandler
Direct Known Subclasses:
MetaAttributeTypeHandler, MetaComparatorHandler, MetaDitContentRuleHandler, MetaDitStructureRuleHandler, MetaMatchingRuleHandler, MetaMatchingRuleUseHandler, MetaNameFormHandler, MetaNormalizerHandler, MetaObjectClassHandler, MetaSyntaxCheckerHandler, MetaSyntaxHandler

public abstract class AbstractSchemaChangeHandler
extends java.lang.Object
implements SchemaChangeHandler

An abstract schema change handler with some reused functionality.

Version:
$Rev$
Author:
Apache Directory Project

Field Summary
protected  SchemaEntityFactory factory
           
protected  PartitionSchemaLoader loader
           
protected  org.apache.directory.shared.ldap.schema.AttributeType m_oidAT
           
protected  Registries targetRegistries
           
 
Constructor Summary
protected AbstractSchemaChangeHandler(Registries targetRegistries, PartitionSchemaLoader loader)
           
 
Method Summary
protected  void checkOidIsUnique(org.apache.directory.shared.ldap.schema.SchemaObject schemaObject)
           
protected  void checkOidIsUnique(ServerEntry entry)
           
protected  void checkOidIsUnique(java.lang.String oid)
           
protected  java.lang.String getOid(ServerEntry entry)
           
protected  java.util.Set<java.lang.String> getOids(java.util.Set<ServerEntry> results)
           
protected  Schema getSchema(org.apache.directory.shared.ldap.name.LdapDN name)
           
protected  java.lang.String getSchemaName(org.apache.directory.shared.ldap.name.LdapDN name)
           
 void modify(org.apache.directory.shared.ldap.name.LdapDN name, java.util.List<org.apache.directory.shared.ldap.entry.Modification> mods, ServerEntry entry, ServerEntry targetEntry, boolean cascade)
           
 void modify(org.apache.directory.shared.ldap.name.LdapDN name, org.apache.directory.shared.ldap.entry.ModificationOperation modOp, ServerEntry mods, ServerEntry entry, ServerEntry targetEntry, boolean cascade)
           
protected abstract  void modify(org.apache.directory.shared.ldap.name.LdapDN name, ServerEntry entry, ServerEntry targetEntry, boolean cascade)
           
protected  void registerOids(org.apache.directory.shared.ldap.schema.SchemaObject obj)
           
protected  void unregisterOids(java.lang.String oid)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.directory.server.core.schema.SchemaChangeHandler
add, delete, move, rename, replace
 

Field Detail

targetRegistries

protected final Registries targetRegistries

loader

protected final PartitionSchemaLoader loader

m_oidAT

protected final org.apache.directory.shared.ldap.schema.AttributeType m_oidAT

factory

protected final SchemaEntityFactory factory
Constructor Detail

AbstractSchemaChangeHandler

protected AbstractSchemaChangeHandler(Registries targetRegistries,
                                      PartitionSchemaLoader loader)
                               throws java.lang.Exception
Throws:
java.lang.Exception
Method Detail

checkOidIsUnique

protected void checkOidIsUnique(ServerEntry entry)
                         throws java.lang.Exception
Throws:
java.lang.Exception

checkOidIsUnique

protected void checkOidIsUnique(org.apache.directory.shared.ldap.schema.SchemaObject schemaObject)
                         throws java.lang.Exception
Throws:
java.lang.Exception

checkOidIsUnique

protected void checkOidIsUnique(java.lang.String oid)
                         throws java.lang.Exception
Throws:
java.lang.Exception

modify

protected abstract void modify(org.apache.directory.shared.ldap.name.LdapDN name,
                               ServerEntry entry,
                               ServerEntry targetEntry,
                               boolean cascade)
                        throws java.lang.Exception
Throws:
java.lang.Exception

modify

public final void modify(org.apache.directory.shared.ldap.name.LdapDN name,
                         org.apache.directory.shared.ldap.entry.ModificationOperation modOp,
                         ServerEntry mods,
                         ServerEntry entry,
                         ServerEntry targetEntry,
                         boolean cascade)
                  throws java.lang.Exception
Specified by:
modify in interface SchemaChangeHandler
Throws:
java.lang.Exception

modify

public final void modify(org.apache.directory.shared.ldap.name.LdapDN name,
                         java.util.List<org.apache.directory.shared.ldap.entry.Modification> mods,
                         ServerEntry entry,
                         ServerEntry targetEntry,
                         boolean cascade)
                  throws java.lang.Exception
Specified by:
modify in interface SchemaChangeHandler
Throws:
java.lang.Exception

getOids

protected java.util.Set<java.lang.String> getOids(java.util.Set<ServerEntry> results)
                                           throws java.lang.Exception
Throws:
java.lang.Exception

getOid

protected java.lang.String getOid(ServerEntry entry)
                           throws java.lang.Exception
Throws:
java.lang.Exception

getSchemaName

protected java.lang.String getSchemaName(org.apache.directory.shared.ldap.name.LdapDN name)
                                  throws java.lang.Exception
Throws:
java.lang.Exception

getSchema

protected Schema getSchema(org.apache.directory.shared.ldap.name.LdapDN name)
                    throws java.lang.Exception
Throws:
java.lang.Exception

unregisterOids

protected void unregisterOids(java.lang.String oid)
                       throws java.lang.Exception
Throws:
java.lang.Exception

registerOids

protected void registerOids(org.apache.directory.shared.ldap.schema.SchemaObject obj)
                     throws java.lang.Exception
Throws:
java.lang.Exception


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