Module java.naming
Package javax.naming

Class NameClassPair

java.lang.Object
javax.naming.NameClassPair
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
Binding

public class NameClassPair
extends Object
implements Serializable
This class represents the object name and class name pair of a binding found in a context.

A context consists of name-to-object bindings. The NameClassPair class represents the name and the class of the bound object. It consists of a name and a string representing the package-qualified class name.

Use subclassing for naming systems that generate contents of a name/class pair dynamically.

A NameClassPair instance is not synchronized against concurrent access by multiple threads. Threads that need to access a NameClassPair concurrently should synchronize amongst themselves and provide the necessary locking.

Since:
1.3
See Also:
Context.list(javax.naming.Name), Serialized Form
  • Constructor Summary

    Constructors 
    Constructor Description
    NameClassPair​(String name, String className)
    Constructs an instance of a NameClassPair given its name and class name.
    NameClassPair​(String name, String className, boolean isRelative)
    Constructs an instance of a NameClassPair given its name, class name, and whether it is relative to the listing context.
  • Method Summary

    Modifier and Type Method Description
    String getClassName()
    Retrieves the class name of the object bound to the name of this binding.
    String getName()
    Retrieves the name of this binding.
    String getNameInNamespace()
    Retrieves the full name of this binding.
    boolean isRelative()
    Determines whether the name of this binding is relative to the target context (which is named by the first parameter of the list() method).
    void setClassName​(String name)
    Sets the class name of this binding.
    void setName​(String name)
    Sets the name of this binding.
    void setNameInNamespace​(String fullName)
    Sets the full name of this binding.
    void setRelative​(boolean r)
    Sets whether the name of this binding is relative to the target context (which is named by the first parameter of the list() method).
    String toString()
    Generates the string representation of this name/class pair.

    Methods declared in class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • NameClassPair

      public NameClassPair​(String name, String className)
      Constructs an instance of a NameClassPair given its name and class name.
      Parameters:
      name - The non-null name of the object. It is relative to the target context (which is named by the first parameter of the list() method)
      className - The possibly null class name of the object bound to name. It is null if the object bound is null.
      See Also:
      getClassName(), setClassName(java.lang.String), getName(), setName(java.lang.String)
    • NameClassPair

      public NameClassPair​(String name, String className, boolean isRelative)
      Constructs an instance of a NameClassPair given its name, class name, and whether it is relative to the listing context.
      Parameters:
      name - The non-null name of the object.
      className - The possibly null class name of the object bound to name. It is null if the object bound is null.
      isRelative - true if name is a name relative to the target context (which is named by the first parameter of the list() method); false if name is a URL string.
      See Also:
      getClassName(), setClassName(java.lang.String), getName(), setName(java.lang.String), isRelative(), setRelative(boolean)
  • Method Details

    • getClassName

      public String getClassName()
      Retrieves the class name of the object bound to the name of this binding. If a reference or some other indirect information is bound, retrieves the class name of the eventual object that will be returned by Binding.getObject().
      Returns:
      The possibly null class name of object bound. It is null if the object bound is null.
      See Also:
      Binding.getObject(), Binding.getClassName(), setClassName(java.lang.String)
    • getName

      public String getName()
      Retrieves the name of this binding. If isRelative() is true, this name is relative to the target context (which is named by the first parameter of the list()). If isRelative() is false, this name is a URL string.
      Returns:
      The non-null name of this binding.
      See Also:
      isRelative(), setName(java.lang.String)
    • setName

      public void setName​(String name)
      Sets the name of this binding.
      Parameters:
      name - the non-null string to use as the name.
      See Also:
      getName(), setRelative(boolean)
    • setClassName

      public void setClassName​(String name)
      Sets the class name of this binding.
      Parameters:
      name - the possibly null string to use as the class name. If null, Binding.getClassName() will return the actual class name of the object in the binding. The class name will be null if the object bound is null.
      See Also:
      getClassName(), Binding.getClassName()
    • isRelative

      public boolean isRelative()
      Determines whether the name of this binding is relative to the target context (which is named by the first parameter of the list() method).
      Returns:
      true if the name of this binding is relative to the target context; false if the name of this binding is a URL string.
      See Also:
      setRelative(boolean), getName()
    • setRelative

      public void setRelative​(boolean r)
      Sets whether the name of this binding is relative to the target context (which is named by the first parameter of the list() method).
      Parameters:
      r - If true, the name of binding is relative to the target context; if false, the name of binding is a URL string.
      See Also:
      isRelative(), setName(java.lang.String)
    • getNameInNamespace

      public String getNameInNamespace()
      Retrieves the full name of this binding. The full name is the absolute name of this binding within its own namespace. See Context.getNameInNamespace().

      In naming systems for which the notion of full name does not apply to this binding an UnsupportedOperationException is thrown. This exception is also thrown when a service provider written before the introduction of the method is in use.

      The string returned by this method is not a JNDI composite name and should not be passed directly to context methods.

      Returns:
      The full name of this binding.
      Throws:
      UnsupportedOperationException - if the notion of full name does not apply to this binding in the naming system.
      Since:
      1.5
      See Also:
      setNameInNamespace(java.lang.String), getName()
    • setNameInNamespace

      public void setNameInNamespace​(String fullName)
      Sets the full name of this binding. This method must be called to set the full name whenever a NameClassPair is created and a full name is applicable to this binding.

      Setting the full name to null, or not setting it at all, will cause getNameInNamespace() to throw an exception.

      Parameters:
      fullName - The full name to use.
      Since:
      1.5
      See Also:
      getNameInNamespace(), setName(java.lang.String)
    • toString

      public String toString()
      Generates the string representation of this name/class pair. The string representation consists of the name and class name separated by a colon (':'). The contents of this string is useful for debugging and is not meant to be interpreted programmatically.
      Overrides:
      toString in class Object
      Returns:
      The string representation of this name/class pair.