Class LinkException
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
LinkLoopException, MalformedLinkException
Analogously to how NamingException captures name resolution information, LinkException captures "link"-name resolution information pinpointing the problem encountered while resolving a link. All these fields may be null.
- Link Resolved Name. Portion of link name that has been resolved.
- Link Resolved Object. Object to which resolution of link name proceeded.
- Link Remaining Name. Portion of link name that has not been resolved.
- Link Explanation. Detail explaining why link resolution failed.
A LinkException instance is not synchronized against concurrent multithreaded access. Multiple threads trying to access and modify a single LinkException instance should lock the object.
- Since:
- 1.3
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected StringContains the exception of why resolution of the link failed.protected NameContains the remaining link name that has not been resolved yet.protected NameContains the part of the link that has been successfully resolved.protected ObjectContains the object to which resolution of the part of the link was successful.Fields declared in class NamingException
remainingName, resolvedName, resolvedObj, rootExceptionModifier and TypeFieldDescriptionprotected NameContains the remaining name that has not been resolved yet.protected NameContains the part of the name that has been successfully resolved.protected ObjectContains the object to which resolution of the part of the name was successful.protected ThrowableContains the original exception that caused this NamingException to be thrown. -
Constructor Summary
ConstructorsConstructorDescriptionConstructs a new instance of LinkException.LinkException(String explanation) Constructs a new instance of LinkException with an explanation. -
Method Summary
Modifier and TypeMethodDescriptionRetrieves the explanation associated with the problem encountered when resolving a link.Retrieves the remaining unresolved portion of the link name.Retrieves the leading portion of the link name that was resolved successfully.Retrieves the object to which resolution was successful.voidsetLinkExplanation(String msg) Sets the explanation associated with the problem encountered when resolving a link.voidsetLinkRemainingName(Name name) Sets the remaining link name field of this exception.voidsetLinkResolvedName(Name name) Sets the resolved link name field of this exception.voidsetLinkResolvedObj(Object obj) Sets the link resolved object field of this exception.toString()Generates the string representation of this exception.toString(boolean detail) Generates the string representation of this exception.Methods declared in class NamingException
appendRemainingComponent, appendRemainingName, getCause, getExplanation, getRemainingName, getResolvedName, getResolvedObj, getRootCause, initCause, setRemainingName, setResolvedName, setResolvedObj, setRootCauseModifier and TypeMethodDescriptionvoidAdd name as the last component in remaining name.voidappendRemainingName(Name name) Add components from 'name' as the last components in remaining name.getCause()Returns the cause of this exception.Retrieves the explanation associated with this exception.Retrieves the remaining unresolved portion of the name.Retrieves the leading portion of the name that was resolved successfully.Retrieves the object to which resolution was successful.Retrieves the root cause of this NamingException, if any.Initializes the cause of this exception to the specified value.voidsetRemainingName(Name name) Sets the remaining name field of this exception.voidsetResolvedName(Name name) Sets the resolved name field of this exception.voidsetResolvedObj(Object obj) Sets the resolved object field of this exception.voidRecords the root cause of this NamingException.Methods declared in class Throwable
addSuppressed, fillInStackTrace, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, printStackTrace, printStackTrace, printStackTrace, setStackTraceModifier and TypeMethodDescriptionfinal voidaddSuppressed(Throwable exception) The specified exception is going to be suppressed in order to give priority to this exception (primary exception) and to be appended to the list of suppressed exceptions.Record in the receiver a walkback from the point where this message was sent.Answers the extra information message which was provided when the throwable was created.Answers the extra information message which was provided when the throwable was created.Answers an array of StackTraceElement.final Throwable[]Returns an array of exceptions suppressed, typically by the automatically generated code from the try-with-resources statement, in order to give priority to this exception (primary exception).voidOutputs a printable representation of the receiver's walkback on the System.err stream.voidOutputs a printable representation of the receiver's walkback on the stream specified by the argument.voidOutputs a printable representation of the receiver's walkback on the writer specified by the argument.voidsetStackTrace(StackTraceElement[] trace) Sets the array of StackTraceElements.Methods declared in class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitModifier and TypeMethodDescriptionprotected Objectclone()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.booleanCompares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.May cause performance issues, deadlocks and hangs.getClass()Answers the unique instance of java.lang.Class which represents the class of the receiver.inthashCode()Answers an integer hash code for the receiver.final voidnotify()Causes one thread which iswaiting on the receiver to be made ready to run.final voidCauses all threads which arewaiting on the receiver to be made ready to run.final voidwait()Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated bynotifyornotifyAll).final voidwait(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 bynotifyornotifyAll) or the expiration of the timeout.final voidwait(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 bynotifyornotifyAll) or the expiration of the timeout.
-
Field Details
-
linkResolvedName
Contains the part of the link that has been successfully resolved. It is a composite name and can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.- See Also:
-
linkResolvedObj
Contains the object to which resolution of the part of the link was successful. Can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.- See Also:
-
linkRemainingName
Contains the remaining link name that has not been resolved yet. It is a composite name and can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.- See Also:
-
linkExplanation
Contains the exception of why resolution of the link failed. Can be null. This field is initialized by the constructors. You should access and manipulate this field through its get and set methods.- See Also:
-
-
Constructor Details
-
LinkException
Constructs a new instance of LinkException with an explanation. All the other fields are initialized to null.- Parameters:
explanation- A possibly null string containing additional detail about this exception.- See Also:
-
LinkException
public LinkException()Constructs a new instance of LinkException. All the non-link-related and link-related fields are initialized to null.
-
-
Method Details
-
getLinkResolvedName
Retrieves the leading portion of the link name that was resolved successfully.- Returns:
- The part of the link name that was resolved successfully. It is a composite name. It can be null, which means the link resolved name field has not been set.
- See Also:
-
getLinkRemainingName
Retrieves the remaining unresolved portion of the link name.- Returns:
- The part of the link name that has not been resolved. It is a composite name. It can be null, which means the link remaining name field has not been set.
- See Also:
-
getLinkResolvedObj
Retrieves the object to which resolution was successful. This is the object to which the resolved link name is bound.- Returns:
- The possibly null object that was resolved so far. If null, it means the link resolved object field has not been set.
- See Also:
-
getLinkExplanation
Retrieves the explanation associated with the problem encountered when resolving a link.- Returns:
- The possibly null detail string explaining more about the problem with resolving a link. If null, it means there is no link detail message for this exception.
- See Also:
-
setLinkExplanation
Sets the explanation associated with the problem encountered when resolving a link.- Parameters:
msg- The possibly null detail string explaining more about the problem with resolving a link. If null, it means no detail will be recorded.- See Also:
-
setLinkResolvedName
Sets the resolved link name field of this exception.nameis a composite name. If the intent is to set this field using a compound name or string, you must "stringify" the compound name, and create a composite name with a single component using the string. You can then invoke this method using the resulting composite name.A copy of
nameis made and stored. Subsequent changes tonamedo not affect the copy in this NamingException and vice versa.- Parameters:
name- The name to set resolved link name to. This can be null. If null, it sets the link resolved name field to null.- See Also:
-
setLinkRemainingName
Sets the remaining link name field of this exception.nameis a composite name. If the intent is to set this field using a compound name or string, you must "stringify" the compound name, and create a composite name with a single component using the string. You can then invoke this method using the resulting composite name.A copy of
nameis made and stored. Subsequent changes tonamedo not affect the copy in this NamingException and vice versa.- Parameters:
name- The name to set remaining link name to. This can be null. If null, it sets the remaining name field to null.- See Also:
-
setLinkResolvedObj
Sets the link resolved object field of this exception. This indicates the last successfully resolved object of link name.- Parameters:
obj- The object to set link resolved object to. This can be null. If null, the link resolved object field is set to null.- See Also:
-
toString
Generates the string representation of this exception. This string consists of the NamingException information plus the link's remaining name. This string is used for debugging and not meant to be interpreted programmatically.- Overrides:
toStringin classNamingException- Returns:
- The non-null string representation of this link exception.
-
toString
Generates the string representation of this exception. This string consists of the NamingException information plus the additional information of resolving the link. If 'detail' is true, the string also contains information on the link resolved object. If false, this method is the same as the form of toString() that accepts no parameters. This string is used for debugging and not meant to be interpreted programmatically.- Overrides:
toStringin classNamingException- Parameters:
detail- If true, add information about the link resolved object.- Returns:
- The non-null string representation of this link exception.
-