org.apache.axis.handlers.soap
Class SOAPService

java.lang.Object
  |
  +--org.apache.axis.handlers.BasicHandler
        |
        +--org.apache.axis.SimpleChain
              |
              +--org.apache.axis.SimpleTargetedChain
                    |
                    +--org.apache.axis.handlers.soap.SOAPService
All Implemented Interfaces:
Chain, Handler, java.io.Serializable, TargetedChain

public class SOAPService
extends SimpleTargetedChain

A SOAPService is a Handler which encapsulates a SOAP invocation. It has an request chain, an response chain, and a pivot-point, and handles the SOAP semantics when invoke()d.

Author:
Glen Daniels (gdaniels@macromedia.com), Doug Davis (dug@us.ibm.com)
See Also:
Serialized Form

Field Summary
protected static org.apache.commons.logging.Log log
           
 
Fields inherited from class org.apache.axis.SimpleTargetedChain
pivotHandler, requestHandler, responseHandler
 
Fields inherited from class org.apache.axis.SimpleChain
handlers, invoked
 
Fields inherited from class org.apache.axis.handlers.BasicHandler
makeLockable, name, options
 
Constructor Summary
SOAPService()
          Standard, no-arg constructor.
SOAPService(Handler serviceHandler)
          Convenience constructor for wrapping SOAP semantics around "service handlers" which actually do work.
SOAPService(Handler reqHandler, Handler pivHandler, Handler respHandler)
          Constructor with real or null request, pivot, and response handlers.
 
Method Summary
 boolean availableFromTransport(java.lang.String transportName)
           
 void disableTransport(java.lang.String transportName)
          Disable access to this service from a particular transport
 void enableTransport(java.lang.String transportName)
          Make this service available on a particular transport
 void generateWSDL(MessageContext msgContext)
          Generate WSDL.
 java.util.ArrayList getActors()
          Get the merged actor list for this service, including engine-wide actor URIs.
 AxisEngine getEngine()
           
 ServiceDesc getInitializedServiceDesc(MessageContext msgContext)
          Returns a service description with the implementation class filled in.
 int getSendType()
           
 java.util.ArrayList getServiceActors()
          Get the service-specific actor list
 ServiceDesc getServiceDescription()
           
 Style getStyle()
           
 TypeMappingRegistry getTypeMappingRegistry()
           
 Use getUse()
           
 void invoke(MessageContext msgContext)
          Invoke is called to do the actual work of the Handler object.
 boolean needsHighFidelityRecording()
           
 void setEngine(AxisEngine engine)
          Tell this service which engine it's deployed to.
 void setHighFidelityRecording(boolean highFidelityRecording)
           
 void setPropertyParent(java.util.Hashtable parent)
           
 void setSendType(int sendType)
           
 void setServiceDescription(ServiceDesc serviceDescription)
           
 void setStyle(Style style)
           
 void setUse(Use style)
           
 void start()
          Placeholder for "enable this service" method
 void stop()
          Placeholder for "disable this service" method
 
Methods inherited from class org.apache.axis.SimpleTargetedChain
getPivotHandler, getRequestHandler, getResponseHandler, init
 
Methods inherited from class org.apache.axis.SimpleChain
addHandler, canHandleBlock, cleanup, contains, getDeploymentData, getHandlers, init, onFault
 
Methods inherited from class org.apache.axis.handlers.BasicHandler
getName, getOption, getOptions, getUnderstoodHeaders, initHashtable, setName, setOption, setOptionDefault, setOptions, setOptionsLockable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.axis.Chain
addHandler, contains, getHandlers
 
Methods inherited from interface org.apache.axis.Handler
canHandleBlock, cleanup, getDeploymentData, getName, getOption, getOptions, getUnderstoodHeaders, init, onFault, setName, setOption, setOptions
 

Field Detail

log

protected static org.apache.commons.logging.Log log
Constructor Detail

SOAPService

public SOAPService()
Standard, no-arg constructor.


SOAPService

public SOAPService(Handler reqHandler,
                   Handler pivHandler,
                   Handler respHandler)
Constructor with real or null request, pivot, and response handlers. A special request handler is specified to inject SOAP semantics.


SOAPService

public SOAPService(Handler serviceHandler)
Convenience constructor for wrapping SOAP semantics around "service handlers" which actually do work.

Method Detail

getServiceActors

public java.util.ArrayList getServiceActors()
Get the service-specific actor list

Returns:

getActors

public java.util.ArrayList getActors()
Get the merged actor list for this service, including engine-wide actor URIs.

Returns:

getTypeMappingRegistry

public TypeMappingRegistry getTypeMappingRegistry()

setEngine

public void setEngine(AxisEngine engine)
Tell this service which engine it's deployed to.


getEngine

public AxisEngine getEngine()

availableFromTransport

public boolean availableFromTransport(java.lang.String transportName)

getStyle

public Style getStyle()

setStyle

public void setStyle(Style style)

getUse

public Use getUse()

setUse

public void setUse(Use style)

getServiceDescription

public ServiceDesc getServiceDescription()

getInitializedServiceDesc

public ServiceDesc getInitializedServiceDesc(MessageContext msgContext)
                                      throws AxisFault
Returns a service description with the implementation class filled in. Syncronized to prevent simutaneous modification of serviceDescription.

AxisFault

setServiceDescription

public void setServiceDescription(ServiceDesc serviceDescription)

setPropertyParent

public void setPropertyParent(java.util.Hashtable parent)

generateWSDL

public void generateWSDL(MessageContext msgContext)
                  throws AxisFault
Generate WSDL. If we have a specific file configured in the ServiceDesc, just return that. Otherwise run through all the Handlers (including the provider) and call generateWSDL() on them via our parent's implementation.

Specified by:
generateWSDL in interface Handler
Overrides:
generateWSDL in class SimpleChain
AxisFault

start

public void start()
Placeholder for "enable this service" method


stop

public void stop()
Placeholder for "disable this service" method


enableTransport

public void enableTransport(java.lang.String transportName)
Make this service available on a particular transport


disableTransport

public void disableTransport(java.lang.String transportName)
Disable access to this service from a particular transport


needsHighFidelityRecording

public boolean needsHighFidelityRecording()

setHighFidelityRecording

public void setHighFidelityRecording(boolean highFidelityRecording)

getSendType

public int getSendType()

setSendType

public void setSendType(int sendType)

invoke

public void invoke(MessageContext msgContext)
            throws AxisFault
Description copied from interface: Handler
Invoke is called to do the actual work of the Handler object. If there is a fault during the processing of this method it is invoke's job to catch the exception and undo any partial work that has been completed. Once we leave 'invoke' if a fault is thrown, this classes 'onFault' method will be called. Invoke should rethrow any exceptions it catches, wrapped in an AxisFault.

Specified by:
invoke in interface Handler
Overrides:
invoke in class SimpleChain
AxisFault


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