com.unboundid.ldap.sdk
Interface DisconnectHandler
public interface DisconnectHandler
This interface defines an API that may be implemented by a class that should
be notified whenever an LDAP connection is closed for any reason. (whether
the connection was closed at the request of the client via a method like
LDAPConnection#close
, terminated by the server, or closed due to an
internal error). This interface may be used by applications to attempt to
automatically re-establish connections as soon as they are terminated,
potentially falling over to another server.
It is acceptable to attempt to re-connect the connection that has been
disconnected, but in general that should only be attempted if
DisconnectType#isExpected(DisconnectType)
returns true
for
the provided disconnectType
value. The disconnect handler will be
temporarily de-registered from the connection so that closing the connection
in the course of processing the DisconnectHandler#handleDisconnect
method will not cause it to be recursively re-invoked.
Implementations of this interface should be threadsafe to ensure that
multiple connections will be able to safely use the same
DisconnectHandler
instance.
Method Summary |
void |
handleDisconnect(LDAPConnection connection,
java.lang.String host,
int port,
DisconnectType disconnectType,
java.lang.String message,
java.lang.Throwable cause)
Performs any processing that may be necessary in response to the closure
of the provided connection. |
handleDisconnect
void handleDisconnect(LDAPConnection connection,
java.lang.String host,
int port,
DisconnectType disconnectType,
java.lang.String message,
java.lang.Throwable cause)
- Performs any processing that may be necessary in response to the closure
of the provided connection.
- Parameters:
connection
- The connection that has been closed.host
- The address of the server to which the connection
had been established.port
- The port of the server to which the connection had
been established.disconnectType
- The disconnect type, which provides general
information about the nature of the disconnect.message
- A message that may be associated with the
disconnect. It may be null
if no message
is available.cause
- A Throwable
that was caught and triggered
the disconnect. It may be null
if the
disconnect was not triggered by a client-side
exception or error.