|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.directory.server.core.interceptor.BaseInterceptor
org.apache.directory.server.core.schema.SchemaService
public class SchemaService
An Interceptor that manages and enforces schemas.
| Constructor Summary | |
|---|---|
SchemaService()
Creates a schema service interceptor. |
|
| Method Summary | |
|---|---|
void |
add(NextInterceptor next,
org.apache.directory.shared.ldap.name.LdapDN normName,
javax.naming.directory.Attributes attrs)
Check that all the attributes exist in the schema for this entry. |
void |
init(DirectoryServiceConfiguration factoryCfg,
InterceptorConfiguration cfg)
Initialize the Schema Service |
javax.naming.NamingEnumeration |
list(NextInterceptor nextInterceptor,
org.apache.directory.shared.ldap.name.LdapDN base)
Filters Partition.list(org.apache.directory.shared.ldap.name.LdapDN) call. |
javax.naming.directory.Attributes |
lookup(NextInterceptor nextInterceptor,
org.apache.directory.shared.ldap.name.LdapDN name)
Search for an entry, using its DN. |
javax.naming.directory.Attributes |
lookup(NextInterceptor nextInterceptor,
org.apache.directory.shared.ldap.name.LdapDN name,
java.lang.String[] attrIds)
Filters Partition.lookup(org.apache.directory.shared.ldap.name.LdapDN,String[]) call. |
void |
modify(NextInterceptor next,
org.apache.directory.shared.ldap.name.LdapDN name,
int modOp,
javax.naming.directory.Attributes mods)
Check that the modify operations are allowed, and the conform to the schema. |
void |
modify(NextInterceptor next,
org.apache.directory.shared.ldap.name.LdapDN name,
org.apache.directory.shared.ldap.message.ModificationItemImpl[] mods)
Filters Partition#modify(org.apache.directory.shared.ldap.name.LdapDN,javax.naming.directory.ModificationItem[]) call. |
javax.naming.NamingEnumeration |
search(NextInterceptor nextInterceptor,
org.apache.directory.shared.ldap.name.LdapDN base,
java.util.Map env,
org.apache.directory.shared.ldap.filter.ExprNode filter,
javax.naming.directory.SearchControls searchCtls)
Filters Partition.search(org.apache.directory.shared.ldap.name.LdapDN,java.util.Map,org.apache.directory.shared.ldap.filter.ExprNode,javax.naming.directory.SearchControls) call. |
| Methods inherited from class org.apache.directory.server.core.interceptor.BaseInterceptor |
|---|
addContextPartition, bind, compare, delete, destroy, getContext, getMatchedName, getPrincipal, getRootDSE, getSuffix, hasEntry, isSuffix, listSuffixes, modifyRn, move, move, removeContextPartition, unbind |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public SchemaService()
| Method Detail |
|---|
public void init(DirectoryServiceConfiguration factoryCfg,
InterceptorConfiguration cfg)
throws javax.naming.NamingException
init in interface Interceptorinit in class BaseInterceptorfactoryCfg - cfg -
javax.naming.NamingException
public javax.naming.NamingEnumeration list(NextInterceptor nextInterceptor,
org.apache.directory.shared.ldap.name.LdapDN base)
throws javax.naming.NamingException
InterceptorPartition.list(org.apache.directory.shared.ldap.name.LdapDN) call.
list in interface Interceptorlist in class BaseInterceptorjavax.naming.NamingException
public javax.naming.NamingEnumeration search(NextInterceptor nextInterceptor,
org.apache.directory.shared.ldap.name.LdapDN base,
java.util.Map env,
org.apache.directory.shared.ldap.filter.ExprNode filter,
javax.naming.directory.SearchControls searchCtls)
throws javax.naming.NamingException
InterceptorPartition.search(org.apache.directory.shared.ldap.name.LdapDN,java.util.Map,org.apache.directory.shared.ldap.filter.ExprNode,javax.naming.directory.SearchControls) call.
search in interface Interceptorsearch in class BaseInterceptorjavax.naming.NamingException
public javax.naming.directory.Attributes lookup(NextInterceptor nextInterceptor,
org.apache.directory.shared.ldap.name.LdapDN name)
throws javax.naming.NamingException
lookup in interface Interceptorlookup in class BaseInterceptorjavax.naming.NamingException
public javax.naming.directory.Attributes lookup(NextInterceptor nextInterceptor,
org.apache.directory.shared.ldap.name.LdapDN name,
java.lang.String[] attrIds)
throws javax.naming.NamingException
InterceptorPartition.lookup(org.apache.directory.shared.ldap.name.LdapDN,String[]) call.
lookup in interface Interceptorlookup in class BaseInterceptorjavax.naming.NamingException
public void modify(NextInterceptor next,
org.apache.directory.shared.ldap.name.LdapDN name,
int modOp,
javax.naming.directory.Attributes mods)
throws javax.naming.NamingException
modify in interface Interceptormodify in class BaseInterceptornext - The next interceptor to call when we are done with the local operationname - The DN on which the modification is being donemodOp - The modification. One of :
DirContext.ADD_ATTRIBUTE
DirContext.REMOVE_ATTRIBUTE
DirContext.REPLACE_ATTRIBUTEmods - The modifications to check. Each operation is atomic, and should
be applied to a copy of the entry, in order to check that the schema is not
violated at the end. For instance, we can't delete an attribute that does
not exist and add it later. The opposite is legal.
javax.naming.NamingException - The generic exception we get if an illegal operation occurs
org.apache.directory.shared.ldap.exception.LdapNameNotFoundException - If we don't find the entry, then this exception is thrown.
org.apache.directory.shared.ldap.exception.LdapInvalidAttributeIdentifierException - The modified attribute is not known
by the schema, or the Entry is not extensible.
org.apache.directory.shared.ldap.exception.LdapNoSuchAttributeException - The modified Attribute does not exist in the
current entry or is not added by a previous modification operation.
org.apache.directory.shared.ldap.exception.LdapSchemaViolationException - Another schema violation occured.
public void modify(NextInterceptor next,
org.apache.directory.shared.ldap.name.LdapDN name,
org.apache.directory.shared.ldap.message.ModificationItemImpl[] mods)
throws javax.naming.NamingException
InterceptorPartition#modify(org.apache.directory.shared.ldap.name.LdapDN,javax.naming.directory.ModificationItem[]) call.
modify in interface Interceptormodify in class BaseInterceptorjavax.naming.NamingException
public void add(NextInterceptor next,
org.apache.directory.shared.ldap.name.LdapDN normName,
javax.naming.directory.Attributes attrs)
throws javax.naming.NamingException
add in interface Interceptoradd in class BaseInterceptorjavax.naming.NamingException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||