org.apache.axis2.engine
Interface Handler

All Known Subinterfaces:
TransportSender
All Known Implementing Classes:
AbstractDispatcher, AbstractHandler, AbstractOperationDispatcher, AbstractServiceDispatcher, ActionBasedOperationDispatcher, AddressingBasedDispatcher, AddressingBasedDispatcher, AddressingInFaultHandler, AddressingInHandler, AddressingOutHandler, AddressingValidationHandler, CommonsHTTPTransportSender, DispatchOperationHandler, DispatchPhase, GenericProviderDispatcher, HttpCoreNIOSender, HttpCoreNIOSSLSender, HTTPLocationBasedDispatcher, HTTPLocationBasedDispatcher, InstanceDispatcher, JavaTransportSender, JMSSender, LocalResponder, LocalTransportSender, MailTransportSender, MustUnderstandChecker, MustUnderstandValidationDispatcher, Phase, RelatesToBasedOperationDispatcher, RelatesToBasedServiceDispatcher, RequestBlockingHandler, RequestURIBasedDispatcher, RequestURIBasedDispatcher, RequestURIBasedOperationDispatcher, RequestURIBasedServiceDispatcher, RequestURIOperationDispatcher, RequestURIOperationDispatcher, SMTPFaultHandler, SOAPActionBasedDispatcher, SOAPActionBasedDispatcher, SOAPMessageBodyBasedDispatcher, SOAPMessageBodyBasedDispatcher, SOAPMessageBodyBasedOperationDispatcher, SOAPMessageBodyBasedServiceDispatcher, SOAPMonitorHandler, TCPTransportSender, UnderstandAllHeadersHandler, XMPPSender

public interface Handler

A Handler represents a piece of message processing functionality in Axis2. Handlers are combined into chains and phases in order to provide customizable functionality such as security, reliability, etc. Handlers must be multi-thread safe and should keep all their state in Context objects (see the org.apache.axis2.context package).


Nested Class Summary
static class Handler.InvocationResponse
          This type encapsulates an enumeration of possible message processing instruction values that may be returned by a handler/phase within the runtime.
 
Method Summary
 void cleanup()
          Deprecated. This method will be going away after the 1.3 release, it was never used.
 void flowComplete(MessageContext msgContext)
          This method will be called on each registered handler that had its invoke(...) method called during the processing of the message, once the message processing has completed.
 HandlerDescription getHandlerDesc()
          Gets the HandlerDescription of a handler.
 java.lang.String getName()
          Return the name of this Handler
 Parameter getParameter(java.lang.String name)
          Get a Parameter from this Handler
 void init(HandlerDescription handlerDesc)
          Initialize a Handler.
 Handler.InvocationResponse invoke(MessageContext msgContext)
          This method will be called on each registered handler when a message needs to be processed.
 

Method Detail

cleanup

void cleanup()
Deprecated. This method will be going away after the 1.3 release, it was never used.


init

void init(HandlerDescription handlerDesc)
Initialize a Handler.

Parameters:
handlerDesc - the HandlerDescription for this Handler

invoke

Handler.InvocationResponse invoke(MessageContext msgContext)
                                  throws AxisFault
This method will be called on each registered handler when a message needs to be processed. If the message processing is paused by the handler, then this method will be called again for the handler that paused the processing once it is resumed.

This method may be called concurrently from multiple threads.

Handlers that want to determine the type of message that is to be processed (e.g. response vs request, inbound vs. outbound, etc.) can retrieve that information from the MessageContext via MessageContext.getFLOW() and MessageContext.getAxisOperation().getMessageExchangePattern() APIs.

Parameters:
msgContext - the MessageContext to process with this Handler.
Returns:
An InvocationResponse that indicates what the next step in the message processing should be.
Throws:
AxisFault - if the handler encounters an error

flowComplete

void flowComplete(MessageContext msgContext)
This method will be called on each registered handler that had its invoke(...) method called during the processing of the message, once the message processing has completed. During execution of the flowComplete's, handlers are invoked in the opposite order that they were invoked originally. Note that implementations SHOULD check msgContext.getFailureReason() to see if this is an error or a normal completion.

Parameters:
msgContext - the MessageContext to process with this Handler.

getHandlerDesc

HandlerDescription getHandlerDesc()
Gets the HandlerDescription of a handler.

Returns:
Returns HandlerDescription.

getName

java.lang.String getName()
Return the name of this Handler

Returns:
the handler's name as a String

getParameter

Parameter getParameter(java.lang.String name)
Get a Parameter from this Handler

Parameters:
name - the name of the desired value
Returns:
the Parameter, or null.


Copyright © 2007 Apache Web Services Project. All Rights Reserved.