- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
Binding
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:
-
Constructor Summary
ConstructorDescriptionNameClassPair
(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 TypeMethodDescriptionRetrieves the class name of the object bound to the name of this binding.getName()
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 thelist()
method).void
setClassName
(String name) Sets the class name of this binding.void
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 thelist()
method).toString()
Generates the string representation of this name/class pair.
-
Constructor Details
-
NameClassPair
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 thelist()
method)className
- The possibly null class name of the object bound to name. It is null if the object bound is null.- See Also:
-
NameClassPair
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 ifname
is a name relative to the target context (which is named by the first parameter of thelist()
method); false ifname
is a URL string.- See Also:
-
-
Method Details
-
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 byBinding.getObject()
.- Returns:
- The possibly null class name of object bound. It is null if the object bound is null.
- See Also:
-
getName
Retrieves the name of this binding. IfisRelative()
is true, this name is relative to the target context (which is named by the first parameter of thelist()
). IfisRelative()
is false, this name is a URL string.- Returns:
- The non-null name of this binding.
- See Also:
-
setName
Sets the name of this binding.- Parameters:
name
- the non-null string to use as the name.- See Also:
-
setClassName
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:
-
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 thelist()
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
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 thelist()
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:
-
getNameInNamespace
Retrieves the full name of this binding. The full name is the absolute name of this binding within its own namespace. SeeContext.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
Sets the full name of this binding. This method must be called to set the full name whenever aNameClassPair
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:
-
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.
-