Package com.unboundid.ldap.listener
Class LDAPListenerRequestHandler
- java.lang.Object
-
- com.unboundid.ldap.listener.LDAPListenerRequestHandler
-
- Direct Known Subclasses:
AccessLogRequestHandler,CannedResponseRequestHandler,ConcurrentRequestLimiterRequestHandler,InMemoryOperationInterceptorRequestHandler,InMemoryRequestHandler,LDAPDebuggerRequestHandler,ProxyRequestHandler,RateLimiterRequestHandler,StartTLSRequestHandler,ToCodeRequestHandler
@Extensible @ThreadSafety(level=INTERFACE_NOT_THREADSAFE) public abstract class LDAPListenerRequestHandler extends java.lang.Object
This class defines an API that may be used to process requests read from a client connection. A separate instance of this class, obtained through thenewInstance(com.unboundid.ldap.listener.LDAPListenerClientConnection)method, will be used for each connection created by anLDAPListener.
-
-
Constructor Summary
Constructors Constructor Description LDAPListenerRequestHandler()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidcloseInstance()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.abstract LDAPListenerRequestHandlernewInstance(LDAPListenerClientConnection connection)Creates a new instance of this request handler that will be used to process requests read by the provided connection.voidprocessAbandonRequest(int messageID, AbandonRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided abandon request.abstract LDAPMessageprocessAddRequest(int messageID, AddRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided add request.abstract LDAPMessageprocessBindRequest(int messageID, BindRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided bind request.abstract LDAPMessageprocessCompareRequest(int messageID, CompareRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided compare request.abstract LDAPMessageprocessDeleteRequest(int messageID, DeleteRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided delete request.abstract LDAPMessageprocessExtendedRequest(int messageID, ExtendedRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided extended request.abstract LDAPMessageprocessModifyDNRequest(int messageID, ModifyDNRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided modify DN request.abstract LDAPMessageprocessModifyRequest(int messageID, ModifyRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided modify request.abstract LDAPMessageprocessSearchRequest(int messageID, SearchRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided search request.voidprocessUnbindRequest(int messageID, UnbindRequestProtocolOp request, java.util.List<Control> controls)Performs any processing necessary for the provided unbind request.
-
-
-
Constructor Detail
-
LDAPListenerRequestHandler
public LDAPListenerRequestHandler()
-
-
Method Detail
-
newInstance
public abstract LDAPListenerRequestHandler newInstance(LDAPListenerClientConnection connection) throws LDAPException
Creates a new instance of this request handler that will be used to process requests read by the provided connection.- 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
public void 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.
-
processAbandonRequest
public void processAbandonRequest(int messageID, AbandonRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided abandon request.- Parameters:
messageID- The message ID of the LDAP message containing the abandon request.request- The abandon 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.
-
processAddRequest
public abstract LDAPMessage processAddRequest(int messageID, AddRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided add request.- 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
public abstract LDAPMessage processBindRequest(int messageID, BindRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided bind request.- 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
public abstract LDAPMessage processCompareRequest(int messageID, CompareRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided compare request.- 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
public abstract LDAPMessage processDeleteRequest(int messageID, DeleteRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided delete request.- 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
public abstract LDAPMessage processExtendedRequest(int messageID, ExtendedRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided extended request.- 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
public abstract LDAPMessage processModifyRequest(int messageID, ModifyRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided modify request.- 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
public abstract LDAPMessage processModifyDNRequest(int messageID, ModifyDNRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided modify DN request.- 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
public abstract LDAPMessage processSearchRequest(int messageID, SearchRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided search request.- 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.
-
processUnbindRequest
public void processUnbindRequest(int messageID, UnbindRequestProtocolOp request, java.util.List<Control> controls)
Performs any processing necessary for the provided unbind request.- 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.
-
-