Class Binding

All Implemented Interfaces:
Serializable
Direct Known Subclasses:
SearchResult

public class Binding extends NameClassPair
This class represents a name-to-object binding found in a context.

A context consists of name-to-object bindings. The Binding class represents such a binding. It consists of a name and an object. The Context.listBindings() method returns an enumeration of Binding.

Use subclassing for naming systems that generate contents of a binding dynamically.

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

Since:
1.3
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Binding(String name, Object obj)
    Constructs an instance of a Binding given its name and object.
    Binding(String name, Object obj, boolean isRelative)
    Constructs an instance of a Binding given its name, object, and whether the name is relative.
    Binding(String name, String className, Object obj)
    Constructs an instance of a Binding given its name, class name, and object.
    Binding(String name, String className, Object obj, boolean isRelative)
    Constructs an instance of a Binding given its name, class name, object, and whether the name is relative.
  • Method Summary

    Modifier and Type
    Method
    Description
    Retrieves the class name of the object bound to the name of this binding.
    Retrieves the object bound to the name of this binding.
    void
    Sets the object associated with this binding.
    Generates the string representation of this binding.

    Methods declared in class NameClassPair

    getName, getNameInNamespace, isRelative, setClassName, setName, setNameInNamespace, setRelative
    Modifier and Type
    Method
    Description
    Retrieves the name of this binding.
    Retrieves the full name of this binding.
    boolean
    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
    Sets the class name of this binding.
    void
    Sets the name of this binding.
    void
    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).

    Methods declared in class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
    Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.
    boolean
    Compares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    May cause performance issues, deadlocks and hangs.
    final Class<? extends Object>
    Answers the unique instance of java.lang.Class which represents the class of the receiver.
    int
    Answers an integer hash code for the receiver.
    final void
    Causes one thread which is waiting on the receiver to be made ready to run.
    final void
    Causes all threads which are waiting on the receiver to be made ready to run.
    final void
    Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated by notify or notifyAll).
    final void
    wait(long time)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
    final void
    wait(long time, int frac)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
  • Constructor Details

    • Binding

      public Binding(String name, Object obj)
      Constructs an instance of a Binding given its name and object.

      getClassName() will return the class name of obj (or null if obj is null) unless the class name has been explicitly set using setClassName()

      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 listBindings() method)
      obj - The possibly null object bound to name.
      See Also:
    • Binding

      public Binding(String name, Object obj, boolean isRelative)
      Constructs an instance of a Binding given its name, object, and whether the name is relative.

      getClassName() will return the class name of obj (or null if obj is null) unless the class name has been explicitly set using setClassName()

      Parameters:
      name - The non-null string name of the object.
      obj - The possibly null object bound to name.
      isRelative - true if name is a name relative to the target context (which is named by the first parameter of the listBindings() method); false if name is a URL string.
      See Also:
    • Binding

      public Binding(String name, String className, Object obj)
      Constructs an instance of a Binding given its name, class name, and object.
      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 listBindings() method)
      className - The possibly null class name of the object bound to name. If null, the class name of obj is returned by getClassName(). If obj is also null, getClassName() will return null.
      obj - The possibly null object bound to name.
      See Also:
    • Binding

      public Binding(String name, String className, Object obj, boolean isRelative)
      Constructs an instance of a Binding given its name, class name, object, and whether the name is relative.
      Parameters:
      name - The non-null string name of the object.
      className - The possibly null class name of the object bound to name. If null, the class name of obj is returned by getClassName(). If obj is also null, getClassName() will return null.
      obj - The possibly null object bound to name.
      isRelative - true if name is a name relative to the target context (which is named by the first parameter of the listBindings() method); false if name is a URL string.
      See Also:
  • Method Details

    • getClassName

      public String getClassName()
      Retrieves the class name of the object bound to the name of this binding. If the class name has been set explicitly, return it. Otherwise, if this binding contains a non-null object, that object's class name is used. Otherwise, null is returned.
      Overrides:
      getClassName in class NameClassPair
      Returns:
      A possibly null string containing class name of object bound.
      See Also:
    • getObject

      public Object getObject()
      Retrieves the object bound to the name of this binding.
      Returns:
      The object bound; null if this binding does not contain an object.
      See Also:
    • setObject

      public void setObject(Object obj)
      Sets the object associated with this binding.
      Parameters:
      obj - The possibly null object to use.
      See Also:
    • toString

      public String toString()
      Generates the string representation of this binding. The string representation consists of the string representation of the name/class pair and the string representation of this binding's object, separated by ':'. The contents of this string is useful for debugging and is not meant to be interpreted programmatically.
      Overrides:
      toString in class NameClassPair
      Returns:
      The non-null string representation of this binding.