Package 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:
Serializable,Chain,Handler,TargetedChain
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@apache.org), Doug Davis (dug@us.ibm.com)
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionintA list of our active service objects (these can have lifetimes and be reaped)Fields inherited from class org.apache.axis.SimpleTargetedChain
pivotHandler, requestHandler, responseHandlerFields inherited from class org.apache.axis.SimpleChain
handlers, invokedFields inherited from class org.apache.axis.handlers.BasicHandler
makeLockable, name, options -
Constructor Summary
ConstructorsConstructorDescriptionStandard, 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
Modifier and TypeMethodDescriptionvoidaddSession(Session session) Add this passed in Session to this Service's list of sessionsbooleanavailableFromTransport(String transportName) voidRemove all of this Service's serviceObjects from it known sessionsvoiddisableTransport(String transportName) Disable access to this service from a particular transportvoidenableTransport(String transportName) Make this service available on a particular transportvoidgenerateWSDL(MessageContext msgContext) Generate WSDL.Get the merged actor list for this service, including engine-wide actor URIs.getInitializedServiceDesc(MessageContext msgContext) Returns a service description with the implementation class filled in.getRoles()intGet the service-specific actor listgetStyle()getUse()voidinvoke(MessageContext msgContext) Iterate over the chain invoking each handler.booleanIs this service suspended?booleanvoidsetEngine(AxisEngine engine) Tell this service which engine it's deployed to.voidsetHighFidelityRecording(boolean highFidelityRecording) voidsetPropertyParent(Hashtable parent) voidSet the service-specific role listvoidsetSendType(int sendType) voidsetServiceDescription(ServiceDesc serviceDescription) voidvoidvoidstart()Placeholder for "resume this service" methodvoidstop()Placeholder for "suspend this service" methodMethods inherited from class org.apache.axis.SimpleTargetedChain
getPivotHandler, getRequestHandler, getResponseHandler, initMethods inherited from class org.apache.axis.SimpleChain
addHandler, canHandleBlock, cleanup, contains, getDeploymentData, getHandlers, init, onFaultMethods inherited from class org.apache.axis.handlers.BasicHandler
getName, getOption, getOptions, getUnderstoodHeaders, initHashtable, setName, setOption, setOptionDefault, setOptions, setOptionsLockableMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.axis.Chain
addHandler, contains, getHandlersMethods inherited from interface org.apache.axis.Handler
canHandleBlock, cleanup, getDeploymentData, getName, getOption, getOptions, getUnderstoodHeaders, init, onFault, setName, setOption, setOptions
-
Field Details
-
serviceObjects
A list of our active service objects (these can have lifetimes and be reaped) -
nextObjectID
public int nextObjectID
-
-
Constructor Details
-
SOAPService
public SOAPService()Standard, no-arg constructor. -
SOAPService
Constructor with real or null request, pivot, and response handlers. A special request handler is specified to inject SOAP semantics. -
SOAPService
Convenience constructor for wrapping SOAP semantics around "service handlers" which actually do work.
-
-
Method Details
-
addSession
Add this passed in Session to this Service's list of sessions -
clearSessions
public void clearSessions()Remove all of this Service's serviceObjects from it known sessions -
getServiceActors
Get the service-specific actor list- Returns:
-
getActors
Get the merged actor list for this service, including engine-wide actor URIs.- Returns:
-
getRoles
-
setRoles
Set the service-specific role list- Parameters:
roles- a List of Strings, each containing a role URI
-
getTypeMappingRegistry
-
setEngine
Tell this service which engine it's deployed to. -
getEngine
-
availableFromTransport
-
getStyle
-
setStyle
-
getUse
-
setUse
-
getServiceDescription
-
getInitializedServiceDesc
Returns a service description with the implementation class filled in. Syncronized to prevent simutaneous modification of serviceDescription.- Throws:
AxisFault
-
setServiceDescription
-
setPropertyParent
-
generateWSDL
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:
generateWSDLin interfaceHandler- Overrides:
generateWSDLin classSimpleChain- Parameters:
msgContext- theMessageContextto write the WSDL out to- Throws:
AxisFault- if there was a problem writing the WSDL
-
start
public void start()Placeholder for "resume this service" method -
stop
public void stop()Placeholder for "suspend this service" method -
isRunning
public boolean isRunning()Is this service suspended?- Returns:
-
enableTransport
Make this service available on a particular transport -
disableTransport
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
Description copied from class:SimpleChainIterate over the chain invoking each handler. If there's a fault then call 'onFault' for each completed handler in reverse order, then rethrow the exception.- Specified by:
invokein interfaceHandler- Overrides:
invokein classSimpleChain- Parameters:
msgContext- theMessageContextto process with thisHandler.- Throws:
AxisFault- if there was a fault with any of the handlers
-