org.apache.directory.server.core.jndi
Class ServerDirContext

java.lang.Object
  extended by org.apache.directory.server.core.jndi.ServerContext
      extended by org.apache.directory.server.core.jndi.ServerDirContext
All Implemented Interfaces:
javax.naming.Context, javax.naming.directory.DirContext, javax.naming.event.EventContext, javax.naming.event.EventDirContext
Direct Known Subclasses:
ServerLdapContext

public abstract class ServerDirContext
extends ServerContext
implements javax.naming.event.EventDirContext

The DirContext implementation for the Server Side JNDI LDAP provider.

Version:
$Rev: 514794 $
Author:
Apache Directory Project

Field Summary
 
Fields inherited from class org.apache.directory.server.core.jndi.ServerContext
DELETE_OLD_RDN_PROP
 
Fields inherited from interface javax.naming.event.EventContext
OBJECT_SCOPE, ONELEVEL_SCOPE, SUBTREE_SCOPE
 
Fields inherited from interface javax.naming.directory.DirContext
ADD_ATTRIBUTE, REMOVE_ATTRIBUTE, REPLACE_ATTRIBUTE
 
Fields inherited from interface javax.naming.Context
APPLET, AUTHORITATIVE, BATCHSIZE, DNS_URL, INITIAL_CONTEXT_FACTORY, LANGUAGE, OBJECT_FACTORIES, PROVIDER_URL, REFERRAL, SECURITY_AUTHENTICATION, SECURITY_CREDENTIALS, SECURITY_PRINCIPAL, SECURITY_PROTOCOL, STATE_FACTORIES, URL_PKG_PREFIXES
 
Constructor Summary
  ServerDirContext(DirectoryService service, java.util.Hashtable env)
          Creates a new ServerDirContext by reading the PROVIDER_URL to resolve the distinguished name for this context.
protected ServerDirContext(DirectoryService service, LdapPrincipal principal, javax.naming.Name dn)
          Creates a new ServerDirContext with a distinguished name which is used to set the PROVIDER_URL to the distinguished name for this context.
 
Method Summary
 void addNamingListener(javax.naming.Name name, java.lang.String filterExpr, java.lang.Object[] filterArgs, javax.naming.directory.SearchControls searchControls, javax.naming.event.NamingListener namingListener)
           
 void addNamingListener(javax.naming.Name name, java.lang.String filterStr, javax.naming.directory.SearchControls searchControls, javax.naming.event.NamingListener namingListener)
           
 void addNamingListener(java.lang.String name, java.lang.String filter, java.lang.Object[] objects, javax.naming.directory.SearchControls searchControls, javax.naming.event.NamingListener namingListener)
           
 void addNamingListener(java.lang.String name, java.lang.String filter, javax.naming.directory.SearchControls searchControls, javax.naming.event.NamingListener namingListener)
           
 void bind(javax.naming.Name name, java.lang.Object obj, javax.naming.directory.Attributes attrs)
           
 void bind(java.lang.String name, java.lang.Object obj, javax.naming.directory.Attributes attrs)
           
 javax.naming.directory.DirContext createSubcontext(javax.naming.Name name, javax.naming.directory.Attributes attrs)
           
 javax.naming.directory.DirContext createSubcontext(java.lang.String name, javax.naming.directory.Attributes attrs)
           
 javax.naming.directory.Attributes getAttributes(javax.naming.Name name)
           
 javax.naming.directory.Attributes getAttributes(javax.naming.Name name, java.lang.String[] attrIds)
           
 javax.naming.directory.Attributes getAttributes(java.lang.String name)
           
 javax.naming.directory.Attributes getAttributes(java.lang.String name, java.lang.String[] attrIds)
           
 javax.naming.directory.DirContext getSchema(javax.naming.Name name)
          Presently unsupported operation!
 javax.naming.directory.DirContext getSchema(java.lang.String name)
          Presently unsupported operation!
 javax.naming.directory.DirContext getSchemaClassDefinition(javax.naming.Name name)
          Presently unsupported operation!
 javax.naming.directory.DirContext getSchemaClassDefinition(java.lang.String name)
          Presently unsupported operation!
 void modifyAttributes(javax.naming.Name name, int modOp, javax.naming.directory.Attributes attrs)
           
 void modifyAttributes(javax.naming.Name name, javax.naming.directory.ModificationItem[] mods)
           
 void modifyAttributes(javax.naming.Name name, org.apache.directory.shared.ldap.message.ModificationItemImpl[] mods)
           
 void modifyAttributes(java.lang.String name, int modOp, javax.naming.directory.Attributes attrs)
           
 void modifyAttributes(java.lang.String name, javax.naming.directory.ModificationItem[] mods)
           
 void modifyAttributes(java.lang.String name, org.apache.directory.shared.ldap.message.ModificationItemImpl[] mods)
           
 void rebind(javax.naming.Name name, java.lang.Object obj, javax.naming.directory.Attributes attrs)
           
 void rebind(java.lang.String name, java.lang.Object obj, javax.naming.directory.Attributes attrs)
           
 javax.naming.NamingEnumeration search(javax.naming.Name name, javax.naming.directory.Attributes matchingAttributes)
           
 javax.naming.NamingEnumeration search(javax.naming.Name name, javax.naming.directory.Attributes matchingAttributes, java.lang.String[] attributesToReturn)
           
 javax.naming.NamingEnumeration search(javax.naming.Name name, org.apache.directory.shared.ldap.filter.ExprNode filter, javax.naming.directory.SearchControls cons)
          A search overload that is used for optimizing search handling in the LDAP protocol provider which deals with an ExprNode instance rather than a String for the filter.
 javax.naming.NamingEnumeration search(javax.naming.Name name, java.lang.String filterExpr, java.lang.Object[] filterArgs, javax.naming.directory.SearchControls cons)
           
 javax.naming.NamingEnumeration search(javax.naming.Name name, java.lang.String filter, javax.naming.directory.SearchControls cons)
           
 javax.naming.NamingEnumeration search(java.lang.String name, javax.naming.directory.Attributes matchingAttributes)
           
 javax.naming.NamingEnumeration search(java.lang.String name, javax.naming.directory.Attributes matchingAttributes, java.lang.String[] attributesToReturn)
           
 javax.naming.NamingEnumeration search(java.lang.String name, java.lang.String filterExpr, java.lang.Object[] filterArgs, javax.naming.directory.SearchControls cons)
           
 javax.naming.NamingEnumeration search(java.lang.String name, java.lang.String filter, javax.naming.directory.SearchControls cons)
           
 
Methods inherited from class org.apache.directory.server.core.jndi.ServerContext
addNamingListener, addNamingListener, addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, getDn, getEnvironment, getListeners, getNameInNamespace, getNameParser, getNameParser, getNexusProxy, getPrincipal, getService, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, removeNamingListener, rename, rename, setPrincipal, targetMustExist, unbind, unbind
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.naming.event.EventContext
addNamingListener, addNamingListener, removeNamingListener, targetMustExist
 
Methods inherited from interface javax.naming.Context
addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, getEnvironment, getNameInNamespace, getNameParser, getNameParser, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbind
 

Constructor Detail

ServerDirContext

public ServerDirContext(DirectoryService service,
                        java.util.Hashtable env)
                 throws javax.naming.NamingException
Creates a new ServerDirContext by reading the PROVIDER_URL to resolve the distinguished name for this context.

Parameters:
service - the parent service that manages this context
env - the environment used for this context
Throws:
javax.naming.NamingException - if something goes wrong

ServerDirContext

protected ServerDirContext(DirectoryService service,
                           LdapPrincipal principal,
                           javax.naming.Name dn)
                    throws javax.naming.NamingException
Creates a new ServerDirContext with a distinguished name which is used to set the PROVIDER_URL to the distinguished name for this context.

Parameters:
principal - the principal which is propagated
dn - the distinguished name of this context
Throws:
javax.naming.NamingException
Method Detail

getAttributes

public javax.naming.directory.Attributes getAttributes(java.lang.String name)
                                                throws javax.naming.NamingException
Specified by:
getAttributes in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.getAttributes(java.lang.String)

getAttributes

public javax.naming.directory.Attributes getAttributes(javax.naming.Name name)
                                                throws javax.naming.NamingException
Specified by:
getAttributes in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.getAttributes(javax.naming.Name)

getAttributes

public javax.naming.directory.Attributes getAttributes(java.lang.String name,
                                                       java.lang.String[] attrIds)
                                                throws javax.naming.NamingException
Specified by:
getAttributes in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.getAttributes(java.lang.String, java.lang.String[])

getAttributes

public javax.naming.directory.Attributes getAttributes(javax.naming.Name name,
                                                       java.lang.String[] attrIds)
                                                throws javax.naming.NamingException
Specified by:
getAttributes in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.getAttributes(javax.naming.Name, java.lang.String[])

modifyAttributes

public void modifyAttributes(java.lang.String name,
                             int modOp,
                             javax.naming.directory.Attributes attrs)
                      throws javax.naming.NamingException
Specified by:
modifyAttributes in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.modifyAttributes(java.lang.String, int, javax.naming.directory.Attributes)

modifyAttributes

public void modifyAttributes(javax.naming.Name name,
                             int modOp,
                             javax.naming.directory.Attributes attrs)
                      throws javax.naming.NamingException
Specified by:
modifyAttributes in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.modifyAttributes( javax.naming.Name,int, javax.naming.directory.Attributes)

modifyAttributes

public void modifyAttributes(java.lang.String name,
                             org.apache.directory.shared.ldap.message.ModificationItemImpl[] mods)
                      throws javax.naming.NamingException
Throws:
javax.naming.NamingException
See Also:
DirContext.modifyAttributes(java.lang.String, javax.naming.directory.ModificationItem[])

modifyAttributes

public void modifyAttributes(java.lang.String name,
                             javax.naming.directory.ModificationItem[] mods)
                      throws javax.naming.NamingException
Specified by:
modifyAttributes in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.modifyAttributes(java.lang.String, javax.naming.directory.ModificationItem[])

modifyAttributes

public void modifyAttributes(javax.naming.Name name,
                             org.apache.directory.shared.ldap.message.ModificationItemImpl[] mods)
                      throws javax.naming.NamingException
Throws:
javax.naming.NamingException
See Also:
DirContext.modifyAttributes( javax.naming.Name, javax.naming.directory.ModificationItem[])

modifyAttributes

public void modifyAttributes(javax.naming.Name name,
                             javax.naming.directory.ModificationItem[] mods)
                      throws javax.naming.NamingException
Specified by:
modifyAttributes in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.modifyAttributes( javax.naming.Name, javax.naming.directory.ModificationItem[])

bind

public void bind(java.lang.String name,
                 java.lang.Object obj,
                 javax.naming.directory.Attributes attrs)
          throws javax.naming.NamingException
Specified by:
bind in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.bind(java.lang.String, java.lang.Object, javax.naming.directory.Attributes)

bind

public void bind(javax.naming.Name name,
                 java.lang.Object obj,
                 javax.naming.directory.Attributes attrs)
          throws javax.naming.NamingException
Specified by:
bind in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.bind(javax.naming.Name, java.lang.Object, javax.naming.directory.Attributes)

rebind

public void rebind(java.lang.String name,
                   java.lang.Object obj,
                   javax.naming.directory.Attributes attrs)
            throws javax.naming.NamingException
Specified by:
rebind in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.rebind(java.lang.String, java.lang.Object, javax.naming.directory.Attributes)

rebind

public void rebind(javax.naming.Name name,
                   java.lang.Object obj,
                   javax.naming.directory.Attributes attrs)
            throws javax.naming.NamingException
Specified by:
rebind in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.rebind(javax.naming.Name, java.lang.Object, javax.naming.directory.Attributes)

createSubcontext

public javax.naming.directory.DirContext createSubcontext(java.lang.String name,
                                                          javax.naming.directory.Attributes attrs)
                                                   throws javax.naming.NamingException
Specified by:
createSubcontext in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.createSubcontext(java.lang.String, javax.naming.directory.Attributes)

createSubcontext

public javax.naming.directory.DirContext createSubcontext(javax.naming.Name name,
                                                          javax.naming.directory.Attributes attrs)
                                                   throws javax.naming.NamingException
Specified by:
createSubcontext in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.createSubcontext( javax.naming.Name, javax.naming.directory.Attributes)

getSchema

public javax.naming.directory.DirContext getSchema(javax.naming.Name name)
                                            throws javax.naming.NamingException
Presently unsupported operation!

Specified by:
getSchema in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException

getSchema

public javax.naming.directory.DirContext getSchema(java.lang.String name)
                                            throws javax.naming.NamingException
Presently unsupported operation!

Specified by:
getSchema in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException

getSchemaClassDefinition

public javax.naming.directory.DirContext getSchemaClassDefinition(javax.naming.Name name)
                                                           throws javax.naming.NamingException
Presently unsupported operation!

Specified by:
getSchemaClassDefinition in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException

getSchemaClassDefinition

public javax.naming.directory.DirContext getSchemaClassDefinition(java.lang.String name)
                                                           throws javax.naming.NamingException
Presently unsupported operation!

Specified by:
getSchemaClassDefinition in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException

search

public javax.naming.NamingEnumeration search(java.lang.String name,
                                             javax.naming.directory.Attributes matchingAttributes)
                                      throws javax.naming.NamingException
Specified by:
search in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.search(java.lang.String, javax.naming.directory.Attributes)

search

public javax.naming.NamingEnumeration search(javax.naming.Name name,
                                             javax.naming.directory.Attributes matchingAttributes)
                                      throws javax.naming.NamingException
Specified by:
search in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.search(javax.naming.Name, javax.naming.directory.Attributes)

search

public javax.naming.NamingEnumeration search(java.lang.String name,
                                             javax.naming.directory.Attributes matchingAttributes,
                                             java.lang.String[] attributesToReturn)
                                      throws javax.naming.NamingException
Specified by:
search in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.search(java.lang.String, javax.naming.directory.Attributes, java.lang.String[])

search

public javax.naming.NamingEnumeration search(javax.naming.Name name,
                                             javax.naming.directory.Attributes matchingAttributes,
                                             java.lang.String[] attributesToReturn)
                                      throws javax.naming.NamingException
Specified by:
search in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.search(javax.naming.Name, javax.naming.directory.Attributes, java.lang.String[])

search

public javax.naming.NamingEnumeration search(java.lang.String name,
                                             java.lang.String filter,
                                             javax.naming.directory.SearchControls cons)
                                      throws javax.naming.NamingException
Specified by:
search in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.search(java.lang.String, java.lang.String, javax.naming.directory.SearchControls)

search

public javax.naming.NamingEnumeration search(javax.naming.Name name,
                                             org.apache.directory.shared.ldap.filter.ExprNode filter,
                                             javax.naming.directory.SearchControls cons)
                                      throws javax.naming.NamingException
A search overload that is used for optimizing search handling in the LDAP protocol provider which deals with an ExprNode instance rather than a String for the filter.

Parameters:
name - the relative name of the object serving as the search base
filter - the search filter as an expression tree
cons - the search controls to use
Returns:
an enumeration over the SearchResults
Throws:
javax.naming.NamingException - if there are problems performing the search

search

public javax.naming.NamingEnumeration search(javax.naming.Name name,
                                             java.lang.String filter,
                                             javax.naming.directory.SearchControls cons)
                                      throws javax.naming.NamingException
Specified by:
search in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.search(javax.naming.Name, java.lang.String, javax.naming.directory.SearchControls)

search

public javax.naming.NamingEnumeration search(java.lang.String name,
                                             java.lang.String filterExpr,
                                             java.lang.Object[] filterArgs,
                                             javax.naming.directory.SearchControls cons)
                                      throws javax.naming.NamingException
Specified by:
search in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.search(java.lang.String, java.lang.String, java.lang.Object[], javax.naming.directory.SearchControls)

search

public javax.naming.NamingEnumeration search(javax.naming.Name name,
                                             java.lang.String filterExpr,
                                             java.lang.Object[] filterArgs,
                                             javax.naming.directory.SearchControls cons)
                                      throws javax.naming.NamingException
Specified by:
search in interface javax.naming.directory.DirContext
Throws:
javax.naming.NamingException
See Also:
DirContext.search(javax.naming.Name, java.lang.String, java.lang.Object[], javax.naming.directory.SearchControls)

addNamingListener

public void addNamingListener(javax.naming.Name name,
                              java.lang.String filterStr,
                              javax.naming.directory.SearchControls searchControls,
                              javax.naming.event.NamingListener namingListener)
                       throws javax.naming.NamingException
Specified by:
addNamingListener in interface javax.naming.event.EventDirContext
Throws:
javax.naming.NamingException

addNamingListener

public void addNamingListener(java.lang.String name,
                              java.lang.String filter,
                              javax.naming.directory.SearchControls searchControls,
                              javax.naming.event.NamingListener namingListener)
                       throws javax.naming.NamingException
Specified by:
addNamingListener in interface javax.naming.event.EventDirContext
Throws:
javax.naming.NamingException

addNamingListener

public void addNamingListener(javax.naming.Name name,
                              java.lang.String filterExpr,
                              java.lang.Object[] filterArgs,
                              javax.naming.directory.SearchControls searchControls,
                              javax.naming.event.NamingListener namingListener)
                       throws javax.naming.NamingException
Specified by:
addNamingListener in interface javax.naming.event.EventDirContext
Throws:
javax.naming.NamingException

addNamingListener

public void addNamingListener(java.lang.String name,
                              java.lang.String filter,
                              java.lang.Object[] objects,
                              javax.naming.directory.SearchControls searchControls,
                              javax.naming.event.NamingListener namingListener)
                       throws javax.naming.NamingException
Specified by:
addNamingListener in interface javax.naming.event.EventDirContext
Throws:
javax.naming.NamingException


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