public class

DnsContext

extends ComponentDirContext
java.lang.Object
   ↳ com.sun.jndi.toolkit.ctx.PartialCompositeContext
     ↳ com.sun.jndi.toolkit.ctx.ComponentContext
       ↳ com.sun.jndi.toolkit.ctx.AtomicContext
         ↳ com.sun.jndi.toolkit.ctx.PartialCompositeDirContext
           ↳ com.sun.jndi.toolkit.ctx.ComponentDirContext
             ↳ com.sun.jndi.dns.DnsContext

Class Overview

A DnsContext is a directory context representing a DNS node.

Summary

[Expand]
Inherited Constants
From class com.sun.jndi.toolkit.ctx.ComponentContext
From class com.sun.jndi.toolkit.ctx.PartialCompositeContext
From interface javax.naming.Context
From interface javax.naming.directory.DirContext
[Expand]
Inherited Fields
From class com.sun.jndi.toolkit.ctx.PartialCompositeContext
Public Constructors
DnsContext(String domain, String[] servers, Hashtable environment)
Returns a DNS context for a given domain and servers.
Public Methods
Object addToEnvironment(String propName, Object propVal)
void c_bind(Name name, Object obj, Continuation cont)
void c_bind(Name name, Object obj, Attributes attrs, Continuation cont)
DirContext c_createSubcontext(Name name, Attributes attrs, Continuation cont)
Context c_createSubcontext(Name name, Continuation cont)
void c_destroySubcontext(Name name, Continuation cont)
Attributes c_getAttributes(Name name, String[] attrIds, Continuation cont)
NameParser c_getNameParser(Name name, Continuation cont)
DirContext c_getSchema(Name name, Continuation cont)
DirContext c_getSchemaClassDefinition(Name name, Continuation cont)
NamingEnumeration c_list(Name name, Continuation cont)
NamingEnumeration c_listBindings(Name name, Continuation cont)
Object c_lookup(Name name, Continuation cont)
Object c_lookupLink(Name name, Continuation cont)
void c_modifyAttributes(Name name, int mod_op, Attributes attrs, Continuation cont)
void c_modifyAttributes(Name name, ModificationItem[] mods, Continuation cont)
void c_rebind(Name name, Object obj, Continuation cont)
void c_rebind(Name name, Object obj, Attributes attrs, Continuation cont)
void c_rename(Name oldname, Name newname, Continuation cont)
NamingEnumeration c_search(Name name, String filter, SearchControls cons, Continuation cont)
NamingEnumeration c_search(Name name, Attributes matchingAttributes, String[] attributesToReturn, Continuation cont)
NamingEnumeration c_search(Name name, String filterExpr, Object[] filterArgs, SearchControls cons, Continuation cont)
void c_unbind(Name name, Continuation cont)
void close()
Name composeName(Name name, Name prefix)
This default implementation simply concatenates the two names.
Hashtable getEnvironment()
String getNameInNamespace()
Object removeFromEnvironment(String propName)
Protected Methods
Hashtable p_getEnvironment()
A cheap way of getting the environment.
[Expand]
Inherited Methods
From class com.sun.jndi.toolkit.ctx.ComponentDirContext
From class com.sun.jndi.toolkit.ctx.PartialCompositeDirContext
From class com.sun.jndi.toolkit.ctx.AtomicContext
From class com.sun.jndi.toolkit.ctx.ComponentContext
From class com.sun.jndi.toolkit.ctx.PartialCompositeContext
From class java.lang.Object
From interface javax.naming.Context
From interface javax.naming.directory.DirContext
From interface javax.naming.spi.Resolver

Public Constructors

public DnsContext (String domain, String[] servers, Hashtable environment)

Returns a DNS context for a given domain and servers. Each server is of the form "server[:port]". IPv6 literal host names include delimiting brackets. There must be at least one server. The environment must not be null; it is cloned before being stored.

Public Methods

public Object addToEnvironment (String propName, Object propVal)

public void c_bind (Name name, Object obj, Continuation cont)

public void c_bind (Name name, Object obj, Attributes attrs, Continuation cont)

public DirContext c_createSubcontext (Name name, Attributes attrs, Continuation cont)

public Context c_createSubcontext (Name name, Continuation cont)

public void c_destroySubcontext (Name name, Continuation cont)

public Attributes c_getAttributes (Name name, String[] attrIds, Continuation cont)

public NameParser c_getNameParser (Name name, Continuation cont)

public DirContext c_getSchema (Name name, Continuation cont)

public DirContext c_getSchemaClassDefinition (Name name, Continuation cont)

public NamingEnumeration c_list (Name name, Continuation cont)

public NamingEnumeration c_listBindings (Name name, Continuation cont)

public Object c_lookup (Name name, Continuation cont)

public Object c_lookupLink (Name name, Continuation cont)

public void c_modifyAttributes (Name name, int mod_op, Attributes attrs, Continuation cont)

public void c_modifyAttributes (Name name, ModificationItem[] mods, Continuation cont)

public void c_rebind (Name name, Object obj, Continuation cont)

public void c_rebind (Name name, Object obj, Attributes attrs, Continuation cont)

public void c_rename (Name oldname, Name newname, Continuation cont)

public NamingEnumeration c_search (Name name, String filter, SearchControls cons, Continuation cont)

public NamingEnumeration c_search (Name name, Attributes matchingAttributes, String[] attributesToReturn, Continuation cont)

public NamingEnumeration c_search (Name name, String filterExpr, Object[] filterArgs, SearchControls cons, Continuation cont)

public void c_unbind (Name name, Continuation cont)

public void close ()

public Name composeName (Name name, Name prefix)

This default implementation simply concatenates the two names. There's one twist when the "java.naming.provider.compose.elideEmpty" environment setting is set to "true": if each name contains a nonempty component, and if 'prefix' ends with an empty component or 'name' starts with one, then one empty component is dropped. For example:

                            elideEmpty=false     elideEmpty=true
 {"a"} + {"b"}          =>  {"a", "b"}           {"a", "b"}
 {"a"} + {""}           =>  {"a", ""}            {"a", ""}
 {"a"} + {"", "b"}      =>  {"a", "", "b"}       {"a", "b"}
 {"a", ""} + {"b", ""}  =>  {"a", "", "b", ""}   {"a", "b", ""}
 {"a", ""} + {"", "b"}  =>  {"a", "", "", "b"}   {"a", "", "b"}
 

Parameters
name a name relative to this context
prefix the name of this context relative to one of its ancestors
Returns
  • the composition of prefix and name

public Hashtable getEnvironment ()

public String getNameInNamespace ()

public Object removeFromEnvironment (String propName)

Protected Methods

protected Hashtable p_getEnvironment ()

A cheap way of getting the environment. Default implemenation is NOT cheap because it simply calls getEnvironment(), which most implementations clone before returning. Subclass should ALWAYS override this with the cheapest possible way. The toolkit knows to clone when necessary.

Returns
  • The possibly null environment of the context.