org.apache.axis2.engine
Class AbstractDispatcher
java.lang.Object
org.apache.axis2.handlers.AbstractHandler
org.apache.axis2.engine.AbstractDispatcher
- All Implemented Interfaces:
- Handler
- Direct Known Subclasses:
- AddressingBasedDispatcher, GenericProviderDispatcher, HTTPLocationBasedDispatcher, MustUnderstandValidationDispatcher, RequestURIBasedDispatcher, RequestURIOperationDispatcher, SOAPActionBasedDispatcher, SOAPMessageBodyBasedDispatcher
public abstract class AbstractDispatcher
- extends AbstractHandler
This the base class for all dispatchers. A dispatcher's task is
to find the service for an incoming SOAP message.
In Axis2, a chain of dispatchers is setup. Each tries to
dispatch and return without throwing an exception, in case it fails
to find the service or operation. Dispatchers look for services, operations,
or both.
Field Summary |
static java.lang.String |
NAME
Field NAME |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
NAME
public static final java.lang.String NAME
- Field NAME
- See Also:
- Constant Field Values
AbstractDispatcher
public AbstractDispatcher()
findOperation
public abstract AxisOperation findOperation(AxisService service,
MessageContext messageContext)
throws AxisFault
- Called by Axis Engine to find the operation.
- Parameters:
service
- messageContext
-
- Returns:
- Returns AxisOperation.
- Throws:
AxisFault
findService
public abstract AxisService findService(MessageContext messageContext)
throws AxisFault
- Called by Axis Engine to find the service.
- Parameters:
messageContext
-
- Returns:
- Returns AxisService.
- Throws:
AxisFault
initDispatcher
public abstract void initDispatcher()
invoke
public Handler.InvocationResponse invoke(MessageContext msgctx)
throws AxisFault
- Description copied from interface:
Handler
- 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:
msgctx
-
- Returns:
- An InvocationResponse that indicates what
the next step in the message processing should be.
- Throws:
AxisFault
Copyright © 2007 Apache Web Services Project. All Rights Reserved.