Package com.unboundid.ldap.listener
Class ProxyRequestHandler
java.lang.Object
com.unboundid.ldap.listener.LDAPListenerRequestHandler
com.unboundid.ldap.listener.ProxyRequestHandler
- All Implemented Interfaces:
IntermediateResponseListener,Serializable
@NotMutable
@ThreadSafety(level=COMPLETELY_THREADSAFE)
public final class ProxyRequestHandler
extends LDAPListenerRequestHandler
implements IntermediateResponseListener
This class provides an implementation of a simple LDAP listener request
handler that may be used to forward the request to another LDAP directory
server.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionProxyRequestHandler(ServerSet serverSet) Creates a new instance of this proxy request handler that will use the providedServerSetto connect to an LDAP server. -
Method Summary
Modifier and TypeMethodDescriptionvoidIndicates that the client connection with which this request handler instance is associated is being closed and any resources associated with it should be released.voidintermediateResponseReturned(IntermediateResponse intermediateResponse) Indicates that the provided intermediate response has been returned by the server and may be processed by this intermediate response listener.newInstance(LDAPListenerClientConnection connection) Creates a new instance of this request handler that will be used to process requests read by the provided connection.processAddRequest(int messageID, AddRequestProtocolOp request, List<Control> controls) Performs any processing necessary for the provided add request.processBindRequest(int messageID, BindRequestProtocolOp request, List<Control> controls) Performs any processing necessary for the provided bind request.processCompareRequest(int messageID, CompareRequestProtocolOp request, List<Control> controls) Performs any processing necessary for the provided compare request.processDeleteRequest(int messageID, DeleteRequestProtocolOp request, List<Control> controls) Performs any processing necessary for the provided delete request.processExtendedRequest(int messageID, ExtendedRequestProtocolOp request, List<Control> controls) Performs any processing necessary for the provided extended request.processModifyDNRequest(int messageID, ModifyDNRequestProtocolOp request, List<Control> controls) Performs any processing necessary for the provided modify DN request.processModifyRequest(int messageID, ModifyRequestProtocolOp request, List<Control> controls) Performs any processing necessary for the provided modify request.processSearchRequest(int messageID, SearchRequestProtocolOp request, List<Control> controls) Performs any processing necessary for the provided search request.Methods inherited from class com.unboundid.ldap.listener.LDAPListenerRequestHandler
processAbandonRequest, processUnbindRequest
-
Constructor Details
-
ProxyRequestHandler
Creates a new instance of this proxy request handler that will use the providedServerSetto connect to an LDAP server.- Parameters:
serverSet- The server that will be used to create LDAP connections to forward any requests received. It must not benull.
-
-
Method Details
-
newInstance
@NotNull public ProxyRequestHandler newInstance(@NotNull LDAPListenerClientConnection connection) throws LDAPException Creates a new instance of this request handler that will be used to process requests read by the provided connection.- Specified by:
newInstancein classLDAPListenerRequestHandler- Parameters:
connection- The connection with which this request handler instance will be associated.- Returns:
- The request handler instance that will be used for the provided connection.
- Throws:
LDAPException- If the connection should not be accepted.
-
closeInstance
Indicates that the client connection with which this request handler instance is associated is being closed and any resources associated with it should be released.- Overrides:
closeInstancein classLDAPListenerRequestHandler
-
processAddRequest
@NotNull public LDAPMessage processAddRequest(int messageID, @NotNull AddRequestProtocolOp request, @NotNull List<Control> controls) Performs any processing necessary for the provided add request.- Specified by:
processAddRequestin classLDAPListenerRequestHandler- Parameters:
messageID- The message ID of the LDAP message containing the add request.request- The add request that was included in the LDAP message that was received.controls- The set of controls included in the LDAP message. It may be empty if there were no controls, but will not benull.- Returns:
- The
LDAPMessagecontaining the response to send to the client. The protocol op in theLDAPMessagemust be anAddResponseProtocolOp.
-
processBindRequest
@NotNull public LDAPMessage processBindRequest(int messageID, @NotNull BindRequestProtocolOp request, @NotNull List<Control> controls) Performs any processing necessary for the provided bind request.- Specified by:
processBindRequestin classLDAPListenerRequestHandler- Parameters:
messageID- The message ID of the LDAP message containing the bind request.request- The bind request that was included in the LDAP message that was received.controls- The set of controls included in the LDAP message. It may be empty if there were no controls, but will not benull.- Returns:
- The
LDAPMessagecontaining the response to send to the client. The protocol op in theLDAPMessagemust be aBindResponseProtocolOp.
-
processCompareRequest
@NotNull public LDAPMessage processCompareRequest(int messageID, @NotNull CompareRequestProtocolOp request, @NotNull List<Control> controls) Performs any processing necessary for the provided compare request.- Specified by:
processCompareRequestin classLDAPListenerRequestHandler- Parameters:
messageID- The message ID of the LDAP message containing the compare request.request- The compare request that was included in the LDAP message that was received.controls- The set of controls included in the LDAP message. It may be empty if there were no controls, but will not benull.- Returns:
- The
LDAPMessagecontaining the response to send to the client. The protocol op in theLDAPMessagemust be aCompareResponseProtocolOp.
-
processDeleteRequest
@NotNull public LDAPMessage processDeleteRequest(int messageID, @NotNull DeleteRequestProtocolOp request, @NotNull List<Control> controls) Performs any processing necessary for the provided delete request.- Specified by:
processDeleteRequestin classLDAPListenerRequestHandler- Parameters:
messageID- The message ID of the LDAP message containing the delete request.request- The delete request that was included in the LDAP message that was received.controls- The set of controls included in the LDAP message. It may be empty if there were no controls, but will not benull.- Returns:
- The
LDAPMessagecontaining the response to send to the client. The protocol op in theLDAPMessagemust be aDeleteResponseProtocolOp.
-
processExtendedRequest
@NotNull public LDAPMessage processExtendedRequest(int messageID, @NotNull ExtendedRequestProtocolOp request, @NotNull List<Control> controls) Performs any processing necessary for the provided extended request.- Specified by:
processExtendedRequestin classLDAPListenerRequestHandler- Parameters:
messageID- The message ID of the LDAP message containing the extended request.request- The extended request that was included in the LDAP message that was received.controls- The set of controls included in the LDAP message. It may be empty if there were no controls, but will not benull.- Returns:
- The
LDAPMessagecontaining the response to send to the client. The protocol op in theLDAPMessagemust be anExtendedResponseProtocolOp.
-
processModifyRequest
@NotNull public LDAPMessage processModifyRequest(int messageID, @NotNull ModifyRequestProtocolOp request, @NotNull List<Control> controls) Performs any processing necessary for the provided modify request.- Specified by:
processModifyRequestin classLDAPListenerRequestHandler- Parameters:
messageID- The message ID of the LDAP message containing the modify request.request- The modify request that was included in the LDAP message that was received.controls- The set of controls included in the LDAP message. It may be empty if there were no controls, but will not benull.- Returns:
- The
LDAPMessagecontaining the response to send to the client. The protocol op in theLDAPMessagemust be anModifyResponseProtocolOp.
-
processModifyDNRequest
@NotNull public LDAPMessage processModifyDNRequest(int messageID, @NotNull ModifyDNRequestProtocolOp request, @NotNull List<Control> controls) Performs any processing necessary for the provided modify DN request.- Specified by:
processModifyDNRequestin classLDAPListenerRequestHandler- Parameters:
messageID- The message ID of the LDAP message containing the modify DN request.request- The modify DN request that was included in the LDAP message that was received.controls- The set of controls included in the LDAP message. It may be empty if there were no controls, but will not benull.- Returns:
- The
LDAPMessagecontaining the response to send to the client. The protocol op in theLDAPMessagemust be anModifyDNResponseProtocolOp.
-
processSearchRequest
@NotNull public LDAPMessage processSearchRequest(int messageID, @NotNull SearchRequestProtocolOp request, @NotNull List<Control> controls) Performs any processing necessary for the provided search request.- Specified by:
processSearchRequestin classLDAPListenerRequestHandler- Parameters:
messageID- The message ID of the LDAP message containing the search request.request- The search request that was included in the LDAP message that was received.controls- The set of controls included in the LDAP message. It may be empty if there were no controls, but will not benull.- Returns:
- The
LDAPMessagecontaining the response to send to the client. The protocol op in theLDAPMessagemust be anSearchResultDoneProtocolOp.
-
intermediateResponseReturned
Indicates that the provided intermediate response has been returned by the server and may be processed by this intermediate response listener.- Specified by:
intermediateResponseReturnedin interfaceIntermediateResponseListener- Parameters:
intermediateResponse- The intermediate response that has been returned by the server.
-