Class LdapReferralException
- All Implemented Interfaces:
Serializable
ReferralException
by providing a
getReferralContext()
method that accepts request controls.
LdapReferralException is an abstract class. Concrete implementations of it
determine its synchronization and serialization properties.
A Control[]
array passed as a parameter to
the getReferralContext()
method is owned by the caller.
The service provider will not modify the array or keep a reference to it,
although it may keep references to the individual Control
objects
in the array.
- Since:
- 1.3
- See Also:
-
Field Summary
Fields declared in class NamingException
remainingName, resolvedName, resolvedObj, rootException
Modifier and TypeFieldDescriptionprotected Name
Contains the remaining name that has not been resolved yet.protected Name
Contains the part of the name that has been successfully resolved.protected Object
Contains the object to which resolution of the part of the name was successful.protected Throwable
Contains the original exception that caused this NamingException to be thrown. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
Constructs a new instance of LdapReferralException.protected
LdapReferralException
(String explanation) Constructs a new instance of LdapReferralException using the explanation supplied. -
Method Summary
Modifier and TypeMethodDescriptionabstract Context
Retrieves the context at which to continue the method using the context's environment and no controls.abstract Context
getReferralContext
(Hashtable<?, ?> env) Retrieves the context at which to continue the method using environment properties and no controls.abstract Context
getReferralContext
(Hashtable<?, ?> env, Control[] reqCtls) Retrieves the context at which to continue the method using request controls and environment properties.Methods declared in class ReferralException
getReferralInfo, retryReferral, skipReferral
Modifier and TypeMethodDescriptionabstract Object
Retrieves information (such as URLs) related to this referral.abstract void
Retries the referral currently being processed.abstract boolean
Discards the referral about to be processed.Methods declared in class NamingException
appendRemainingComponent, appendRemainingName, getCause, getExplanation, getRemainingName, getResolvedName, getResolvedObj, getRootCause, initCause, setRemainingName, setResolvedName, setResolvedObj, setRootCause, toString, toString
Modifier and TypeMethodDescriptionvoid
Add name as the last component in remaining name.void
appendRemainingName
(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.void
setRemainingName
(Name name) Sets the remaining name field of this exception.void
setResolvedName
(Name name) Sets the resolved name field of this exception.void
setResolvedObj
(Object obj) Sets the resolved object field of this exception.void
Records the root cause of this NamingException.toString()
Generates the string representation of this exception.toString
(boolean detail) Generates the string representation in more detail.Methods declared in class Throwable
addSuppressed, fillInStackTrace, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, printStackTrace, printStackTrace, printStackTrace, setStackTrace
Modifier and TypeMethodDescriptionfinal void
addSuppressed
(Throwable exception) Appends the specified exception to the exceptions that were suppressed in order to deliver this exception.Fills in the execution stack trace.Creates a localized description of this throwable.Returns the detail message string of this throwable.Provides programmatic access to the stack trace information printed byThrowable.printStackTrace()
.final Throwable[]
Returns an array containing all of the exceptions that were suppressed, typically by thetry
-with-resources statement, in order to deliver this exception.void
Prints this throwable and its backtrace to the standard error stream.void
Prints this throwable and its backtrace to the specified print stream.void
Prints this throwable and its backtrace to the specified print writer.void
setStackTrace
(StackTraceElement[] stackTrace) Sets the stack trace elements that will be returned byThrowable.getStackTrace()
and printed byThrowable.printStackTrace()
and related methods.Methods declared in class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Modifier and TypeMethodDescriptionprotected Object
clone()
Creates and returns a copy of this object.boolean
Indicates whether some other object is "equal to" this one.protected void
finalize()
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
.int
hashCode()
Returns a hash code value for this object.final void
notify()
Wakes up a single thread that is waiting on this object's monitor.final void
Wakes up all threads that are waiting on this object's monitor.final void
wait()
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.final void
wait
(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 void
wait
(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
-
LdapReferralException
Constructs a new instance of LdapReferralException using the explanation supplied. All other fields are set to null.- Parameters:
explanation
- Additional detail about this exception. Can be null.- See Also:
-
LdapReferralException
protected LdapReferralException()Constructs a new instance of LdapReferralException. All fields are set to null.
-
-
Method Details
-
getReferralContext
Retrieves the context at which to continue the method using the context's environment and no controls. The referral context is created using the environment properties of the context that threw theReferralException
and no controls.This method is equivalent to
wheregetReferralContext(ctx.getEnvironment(), null);
ctx
is the context that threw theReferralException.
It is overridden in this class for documentation purposes only. See
ReferralException
for how to use this method.- Specified by:
getReferralContext
in classReferralException
- Returns:
- The non-null context at which to continue the method.
- Throws:
NamingException
- If a naming exception was encountered. Call eitherretryReferral()
orskipReferral()
to continue processing referrals.
-
getReferralContext
Retrieves the context at which to continue the method using environment properties and no controls. The referral context is created usingenv
as its environment properties and no controls.This method is equivalent to
getReferralContext(env, null);
It is overridden in this class for documentation purposes only. See
ReferralException
for how to use this method.- Specified by:
getReferralContext
in classReferralException
- Parameters:
env
- The possibly null environment to use when retrieving the referral context. If null, no environment properties will be used.- Returns:
- The non-null context at which to continue the method.
- Throws:
NamingException
- If a naming exception was encountered. Call eitherretryReferral()
orskipReferral()
to continue processing referrals.
-
getReferralContext
public abstract Context getReferralContext(Hashtable<?, ?> env, Control[] reqCtls) throws NamingExceptionRetrieves the context at which to continue the method using request controls and environment properties. Regardless of whether a referral is encountered directly during a context operation, or indirectly, for example, during a search enumeration, the referral exception should provide a context at which to continue the operation. To continue the operation, the client program should re-invoke the method using the same arguments as the original invocation.reqCtls
is used when creating the connection to the referred server. These controls will be used as the connection request controls for the context and context instances derived from the context.reqCtls
will also be the context's request controls for subsequent context operations. See theLdapContext
class description for details.This method should be used instead of the other two overloaded forms when the caller needs to supply request controls for creating the referral context. It might need to do this, for example, when it needs to supply special controls relating to authentication.
Service provider implementors should read the "Service Provider" section in the
LdapContext
class description for implementation details.- Parameters:
env
- The possibly null environment properties to use when for the new context. If null, the context is initialized with no environment properties.reqCtls
- The possibly null request controls to use for the new context. If null or the empty array means use no request controls.- Returns:
- The non-null context at which to continue the method.
- Throws:
NamingException
- If a naming exception was encountered. Call eitherretryReferral()
orskipReferral()
to continue processing referrals.
-