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:
java.io.Serializable
,Chain
,Handler
,TargetedChain
public class SOAPService extends SimpleTargetedChain
ASOAPService
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:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description int
nextObjectID
java.util.Map
serviceObjects
A list of our active service objects (these can have lifetimes and be reaped)-
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
Constructors Constructor Description 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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addSession(Session session)
Add this passed in Session to this Service's list of sessionsboolean
availableFromTransport(java.lang.String transportName)
void
clearSessions()
Remove all of this Service's serviceObjects from it known sessionsvoid
disableTransport(java.lang.String transportName)
Disable access to this service from a particular transportvoid
enableTransport(java.lang.String transportName)
Make this service available on a particular transportvoid
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.java.util.List
getRoles()
int
getSendType()
java.util.ArrayList
getServiceActors()
Get the service-specific actor listServiceDesc
getServiceDescription()
Style
getStyle()
TypeMappingRegistry
getTypeMappingRegistry()
Use
getUse()
void
invoke(MessageContext msgContext)
Iterate over the chain invoking each handler.boolean
isRunning()
Is this service suspended?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
setRoles(java.util.List roles)
Set the service-specific role listvoid
setSendType(int sendType)
void
setServiceDescription(ServiceDesc serviceDescription)
void
setStyle(Style style)
void
setUse(Use style)
void
start()
Placeholder for "resume this service" methodvoid
stop()
Placeholder for "suspend 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
-
-
-
-
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
-
addSession
public void addSession(Session session)
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
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:
-
getRoles
public java.util.List getRoles()
-
setRoles
public void setRoles(java.util.List roles)
Set the service-specific role list- Parameters:
roles
- a List of Strings, each containing a role URI
-
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.- Throws:
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 interfaceHandler
- Overrides:
generateWSDL
in classSimpleChain
- Parameters:
msgContext
- theMessageContext
to 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
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 class:SimpleChain
Iterate 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:
invoke
in interfaceHandler
- Overrides:
invoke
in classSimpleChain
- Parameters:
msgContext
- theMessageContext
to process with thisHandler
.- Throws:
AxisFault
- if there was a fault with any of the handlers
-
-