Class LinkRef
- All Implemented Interfaces:
Serializable, Cloneable
The name is a URL, or a name to be resolved relative to the initial context, or if the first character of the name is ".", the name is relative to the context in which the link is bound.
Normal resolution of names in context operations always follow links. Resolution of the link name itself may cause resolution to pass through other links. This gives rise to the possibility of a cycle of links whose resolution could not terminate normally. As a simple means to avoid such non-terminating resolutions, service providers may define limits on the number of links that may be involved in any single operation invoked by the caller.
A LinkRef contains a single StringRefAddr, whose type is "LinkAddress", and whose contents is the link name. The class name field of the Reference is that of this (LinkRef) class.
LinkRef is bound to a name using the normal Context.bind()/rebind(), and DirContext.bind()/rebind(). Context.lookupLink() is used to retrieve the link itself if the terminal atomic name is bound to a link.
Many naming systems support a native notion of link that may be used within the naming system itself. JNDI does not specify whether there is any relationship between such native links and JNDI links.
A LinkRef instance is not synchronized against concurrent access by multiple threads. Threads that need to access a LinkRef instance concurrently should synchronize amongst themselves and provide the necessary locking.
- Since:
- 1.3
- See Also:
-
Field Summary
Fields declared in class Reference
addrs, classFactory, classFactoryLocation, classNameModifier and TypeFieldDescriptionContains the addresses contained in this Reference.protected StringContains the name of the factory class for creating an instance of the object to which this Reference refers.protected StringContains the location of the factory class.protected StringContains the fully-qualified name of the class of the object to which this Reference refers. -
Constructor Summary
Constructors -
Method Summary
Methods declared in class Reference
add, add, clear, clone, equals, get, get, getAll, getClassName, getFactoryClassLocation, getFactoryClassName, hashCode, remove, size, toStringModifier and TypeMethodDescriptionvoidAdds an address to the list of addresses at index posn.voidAdds an address to the end of the list of addresses.voidclear()Deletes all addresses from this reference.clone()Makes a copy of this reference using its class name list of addresses, class factory name and class factory location.booleanDetermines whether obj is a reference with the same addresses (in same order) as this reference.get(int posn) Retrieves the address at index posn.Retrieves the first address that has the address type 'addrType'.getAll()Retrieves an enumeration of the addresses in this reference.Retrieves the class name of the object to which this reference refers.Retrieves the location of the factory of the object to which this reference refers.Retrieves the class name of the factory of the object to which this reference refers.inthashCode()Computes the hash code of this reference.remove(int posn) Deletes the address at index posn from the list of addresses.intsize()Retrieves the number of addresses in this reference.toString()Generates the string representation of this reference.Methods declared in class Object
finalize, getClass, notify, notifyAll, wait, wait, waitModifier and TypeMethodDescriptionprotected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.Finalization is deprecated and subject to removal in a future release.final Class<?> getClass()Returns the runtime class of thisObject.final voidnotify()Wakes up a single thread that is waiting on this object's monitor.final voidWakes up all threads that are waiting on this object's monitor.final voidwait()Causes the current thread to wait until it is awakened, typically by being notified or interrupted.final voidwait(long timeoutMillis) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.final voidwait(long timeoutMillis, int nanos) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
-
Constructor Details
-
LinkRef
Constructs a LinkRef for a name.- Parameters:
linkName- The non-null name for which to create this link.
-
LinkRef
Constructs a LinkRef for a string name.- Parameters:
linkName- The non-null name for which to create this link.
-
-
Method Details
-
getLinkName
Retrieves the name of this link.- Returns:
- The non-null name of this link.
- Throws:
MalformedLinkException- If a link name could not be extractedNamingException- If a naming exception was encountered.
-