org.apache.axis2.description
Class AxisOperation

java.lang.Object
  extended byorg.apache.axis2.description.AxisOperation
All Implemented Interfaces:
org.apache.wsdl.Component, DescriptionConstants, org.apache.wsdl.ExtensibleComponent, ParameterInclude, org.apache.wsdl.WSDLConstants, org.apache.wsdl.WSDLOperation
Direct Known Subclasses:
InOnlyAxisOperation, InOutAxisOperation, OutOnlyAxisOperation

public abstract class AxisOperation
extends java.lang.Object
implements ParameterInclude, DescriptionConstants, org.apache.wsdl.WSDLConstants, org.apache.wsdl.WSDLOperation


Field Summary
 
Fields inherited from interface org.apache.axis2.description.DescriptionConstants
CLASSLOADER_KEY, CONTEXTPATH_KEY, EXECUTION_CHAIN_KEY, EXECUTION_FAULT_CHAIN_KEY, EXECUTION_OUT_CHAIN_KEY, IN_FAULTFLOW_KEY, INFLOW_KEY, MESSAGE_RECEIVER_KEY, MODULEREF_KEY, OPERATION_KEY, OUT_FAULTFLOW_KEY, OUTFLOW_KEY, PARAMETER_KEY, PHASES_KEY, SERVICE_CLASS, SERVICE_CLASS_NAME, STYLE_KEY
 
Fields inherited from interface org.apache.wsdl.WSDLConstants
MEP_CONSTANT_IN_ONLY, MEP_CONSTANT_IN_OPTIONAL_OUT, MEP_CONSTANT_IN_OUT, MEP_CONSTANT_INVALID, MEP_CONSTANT_OUT_IN, MEP_CONSTANT_OUT_ONLY, MEP_CONSTANT_OUT_OPTIONAL_IN, MEP_CONSTANT_ROBUST_IN_ONLY, MEP_CONSTANT_ROBUST_OUT_ONLY, MEP_URI_IN_ONLY, MEP_URI_IN_OPTIONAL_OUT, MEP_URI_IN_OUT, MEP_URI_OUT_IN, MEP_URI_OUT_ONLY, MEP_URI_OUT_OPTIONAL_IN, MEP_URI_ROBUST_IN_ONLY, MEP_URI_ROBUST_OUT_ONLY, MESSAGE_LABEL_IN, MESSAGE_LABEL_IN_VALUE, MESSAGE_LABEL_OUT, MESSAGE_LABEL_OUT_VALUE, WSDL_MESSAGE_DIRECTION_IN, WSDL_MESSAGE_DIRECTION_OUT, WSDL_USE_ENCODED, WSDL_USE_LITERAL, WSDL1_1_NAMESPACE, WSDL2_0_NAMESPACE
 
Constructor Summary
AxisOperation()
           
AxisOperation(javax.xml.namespace.QName name)
           
AxisOperation(org.apache.wsdl.WSDLOperation wsdlopeartion)
           
 
Method Summary
 void addExtensibilityElement(org.apache.wsdl.WSDLExtensibilityElement element)
           
 void addExtensibleAttributes(org.apache.wsdl.WSDLExtensibilityAttribute attribute)
           
 void addFeature(org.apache.wsdl.WSDLFeature feature)
           
 void addInFault(org.apache.wsdl.WSDLFaultReference inFault)
           
abstract  void addMessage(AxisMessage message, java.lang.String label)
           
abstract  void addMessageContext(MessageContext msgContext, OperationContext opContext)
          To add a message Context into a operation context depending on MEPs this method has to be overided.
 void addModule(javax.xml.namespace.QName moduleName)
           
 void addModuleConfig(ModuleConfiguration moduleConfiguration)
          Adding module configuration , if there is moduleConfig tag in operation
 void addOutFault(org.apache.wsdl.WSDLFaultReference outFault)
           
 void addParameter(Parameter param)
          Method addParameter
 void addProperty(org.apache.wsdl.WSDLProperty wsdlProperty)
           
 void deserializeParameters(OMElement parameterElement)
           
 void engageModule(ModuleDescription moduleref, AxisConfiguration axisConfig)
          To ebgage a module it is reuired to use this method
 OperationContext findForExistingOperationContext(MessageContext msgContext)
          This will not create a new operation context if there is no one already.
 OperationContext findOperationContext(MessageContext msgContext, ServiceContext serviceContext)
          This method is responsible for finding a MEPContext for an incomming messages.
 int getAxisSpecifMEPConstant()
          This method will simply map the String URI of the Message exchange pattern to a integer.
 java.util.HashMap getComponentProperties()
           
 java.lang.Object getComponentProperty(java.lang.Object key)
           
 org.w3c.dom.Document getDocumentation()
           
 java.util.Collection getEngagedModules()
          Method getEngadgedModules
 java.util.List getExtensibilityAttributes()
           
 java.util.List getExtensibilityElements()
           
 java.util.List getFeatures()
           
 java.util.List getInfaults()
           
 org.apache.wsdl.MessageReference getInputMessage()
           
abstract  AxisMessage getMessage(java.lang.String label)
           
 java.lang.String getMessageExchangePattern()
           
 MessageReceiver getMessageReceiver()
           
 java.util.Map getMetadataBag()
           
 ModuleConfiguration getModuleConfig(javax.xml.namespace.QName moduleName)
           
 java.util.ArrayList getModuleRefs()
           
 javax.xml.namespace.QName getName()
           
 java.util.List getOutfaults()
           
 org.apache.wsdl.MessageReference getOutputMessage()
           
 Parameter getParameter(java.lang.String name)
          Method getParameter
 java.util.ArrayList getParameters()
          To get all the parameters in a given description
 AxisService getParent()
           
abstract  java.util.ArrayList getPhasesInFaultFlow()
           
abstract  java.util.ArrayList getPhasesOutFaultFlow()
           
abstract  java.util.ArrayList getPhasesOutFlow()
           
 java.util.List getProperties()
           
abstract  java.util.ArrayList getRemainingPhasesInFlow()
           
 java.lang.String getStyle()
           
 java.lang.String getTargetnamespace()
           
 java.util.ArrayList getWsamappingList()
           
 boolean isControlOperation()
           
 boolean isParameterLocked(java.lang.String paramterName)
          to check whether the parameter is locked at any level
 boolean isSafe()
           
 void registerOperationContext(MessageContext msgContext, OperationContext operationContext)
           
 void setComponentProperties(java.util.HashMap properties)
           
 void setComponentProperty(java.lang.Object key, java.lang.Object obj)
           
 void setControlOperation(boolean controlOperation)
           
 void setDocumentation(org.w3c.dom.Document documentation)
           
 void setInfaults(java.util.List infaults)
           
 void setInputMessage(org.apache.wsdl.MessageReference inputMessage)
           
 void setMessageExchangePattern(java.lang.String messageExchangePattern)
           
 void setMessageReceiver(MessageReceiver messageReceiver)
           
 void setMetadataBag(java.util.Map meMap)
           
 void setName(javax.xml.namespace.QName name)
           
 void setOutfaults(java.util.List outfaults)
           
 void setOutputMessage(org.apache.wsdl.MessageReference outputMessage)
           
 void setParent(AxisService parent)
           
abstract  void setPhasesInFaultFlow(java.util.ArrayList list)
           
abstract  void setPhasesOutFaultFlow(java.util.ArrayList list)
           
abstract  void setPhasesOutFlow(java.util.ArrayList list)
           
abstract  void setRemainingPhasesInFlow(java.util.ArrayList list)
           
 void setSafety(boolean safe)
           
 void setStyle(java.lang.String style)
           
 void setWsamappingList(java.util.ArrayList wsamappingList)
           
 void setWsdlopeartion(org.apache.wsdl.impl.WSDLOperationImpl wsdlopeartion)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AxisOperation

public AxisOperation(org.apache.wsdl.WSDLOperation wsdlopeartion)

AxisOperation

public AxisOperation()

AxisOperation

public AxisOperation(javax.xml.namespace.QName name)
Method Detail

engageModule

public final void engageModule(ModuleDescription moduleref,
                               AxisConfiguration axisConfig)
                        throws AxisFault
To ebgage a module it is reuired to use this method

Parameters:
moduleref -
Throws:
AxisFault

getEngagedModules

public java.util.Collection getEngagedModules()
Method getEngadgedModules


addParameter

public void addParameter(Parameter param)
                  throws AxisFault
Method addParameter

Specified by:
addParameter in interface ParameterInclude
Parameters:
param - Parameter that will be added
Throws:
AxisFault

getParameter

public Parameter getParameter(java.lang.String name)
Method getParameter

Specified by:
getParameter in interface ParameterInclude
Parameters:
name - Name of the parameter
Returns:

getParameters

public java.util.ArrayList getParameters()
Description copied from interface: ParameterInclude
To get all the parameters in a given description

Specified by:
getParameters in interface ParameterInclude
Returns:

getMessageReceiver

public MessageReceiver getMessageReceiver()

deserializeParameters

public void deserializeParameters(OMElement parameterElement)
                           throws AxisFault
Specified by:
deserializeParameters in interface ParameterInclude
Throws:
AxisFault

setMessageReceiver

public void setMessageReceiver(MessageReceiver messageReceiver)

getAxisSpecifMEPConstant

public int getAxisSpecifMEPConstant()
This method will simply map the String URI of the Message exchange pattern to a integer. Further in the first lookup it will cash the looked up value so that the subsequent method calls will be extremely efficient.


getPhasesInFaultFlow

public abstract java.util.ArrayList getPhasesInFaultFlow()

getPhasesOutFaultFlow

public abstract java.util.ArrayList getPhasesOutFaultFlow()

getPhasesOutFlow

public abstract java.util.ArrayList getPhasesOutFlow()

getRemainingPhasesInFlow

public abstract java.util.ArrayList getRemainingPhasesInFlow()

getMessage

public abstract AxisMessage getMessage(java.lang.String label)

setPhasesInFaultFlow

public abstract void setPhasesInFaultFlow(java.util.ArrayList list)

setPhasesOutFaultFlow

public abstract void setPhasesOutFaultFlow(java.util.ArrayList list)

setPhasesOutFlow

public abstract void setPhasesOutFlow(java.util.ArrayList list)

setRemainingPhasesInFlow

public abstract void setRemainingPhasesInFlow(java.util.ArrayList list)

addMessage

public abstract void addMessage(AxisMessage message,
                                java.lang.String label)

addModule

public void addModule(javax.xml.namespace.QName moduleName)

getModuleRefs

public java.util.ArrayList getModuleRefs()

getParent

public AxisService getParent()

setParent

public void setParent(AxisService parent)

isParameterLocked

public boolean isParameterLocked(java.lang.String paramterName)
Description copied from interface: ParameterInclude
to check whether the parameter is locked at any level

Specified by:
isParameterLocked in interface ParameterInclude

addModuleConfig

public void addModuleConfig(ModuleConfiguration moduleConfiguration)
Adding module configuration , if there is moduleConfig tag in operation

Parameters:
moduleConfiguration -

getModuleConfig

public ModuleConfiguration getModuleConfig(javax.xml.namespace.QName moduleName)

addMessageContext

public abstract void addMessageContext(MessageContext msgContext,
                                       OperationContext opContext)
                                throws AxisFault
To add a message Context into a operation context depending on MEPs this method has to be overided. Depending on the mep operation description know how to fill the message conetxt map in operationContext. As an exmple if the MEP is IN-OUT then depending on messagelbl operation description should know how to keep them in corret locations

Parameters:
msgContext - MessageContext
opContext - OperationContext
Throws:
AxisFault - AxisFault

getInfaults

public java.util.List getInfaults()
Specified by:
getInfaults in interface org.apache.wsdl.WSDLOperation

setInfaults

public void setInfaults(java.util.List infaults)
Specified by:
setInfaults in interface org.apache.wsdl.WSDLOperation

getInputMessage

public org.apache.wsdl.MessageReference getInputMessage()
Specified by:
getInputMessage in interface org.apache.wsdl.WSDLOperation

setInputMessage

public void setInputMessage(org.apache.wsdl.MessageReference inputMessage)
Specified by:
setInputMessage in interface org.apache.wsdl.WSDLOperation

getMessageExchangePattern

public java.lang.String getMessageExchangePattern()
Specified by:
getMessageExchangePattern in interface org.apache.wsdl.WSDLOperation

setMessageExchangePattern

public void setMessageExchangePattern(java.lang.String messageExchangePattern)
Specified by:
setMessageExchangePattern in interface org.apache.wsdl.WSDLOperation

getName

public javax.xml.namespace.QName getName()
Specified by:
getName in interface org.apache.wsdl.WSDLOperation

setName

public void setName(javax.xml.namespace.QName name)
Specified by:
setName in interface org.apache.wsdl.WSDLOperation

getOutfaults

public java.util.List getOutfaults()
Specified by:
getOutfaults in interface org.apache.wsdl.WSDLOperation

setOutfaults

public void setOutfaults(java.util.List outfaults)
Specified by:
setOutfaults in interface org.apache.wsdl.WSDLOperation

getOutputMessage

public org.apache.wsdl.MessageReference getOutputMessage()
Specified by:
getOutputMessage in interface org.apache.wsdl.WSDLOperation

setOutputMessage

public void setOutputMessage(org.apache.wsdl.MessageReference outputMessage)
Specified by:
setOutputMessage in interface org.apache.wsdl.WSDLOperation

isSafe

public boolean isSafe()
Specified by:
isSafe in interface org.apache.wsdl.WSDLOperation

setSafety

public void setSafety(boolean safe)
Specified by:
setSafety in interface org.apache.wsdl.WSDLOperation

getStyle

public java.lang.String getStyle()
Specified by:
getStyle in interface org.apache.wsdl.WSDLOperation

setStyle

public void setStyle(java.lang.String style)
Specified by:
setStyle in interface org.apache.wsdl.WSDLOperation

getTargetnamespace

public java.lang.String getTargetnamespace()
Specified by:
getTargetnamespace in interface org.apache.wsdl.WSDLOperation

addInFault

public void addInFault(org.apache.wsdl.WSDLFaultReference inFault)
Specified by:
addInFault in interface org.apache.wsdl.WSDLOperation

addOutFault

public void addOutFault(org.apache.wsdl.WSDLFaultReference outFault)
Specified by:
addOutFault in interface org.apache.wsdl.WSDLOperation

addFeature

public void addFeature(org.apache.wsdl.WSDLFeature feature)
Specified by:
addFeature in interface org.apache.wsdl.ExtensibleComponent

getFeatures

public java.util.List getFeatures()
Specified by:
getFeatures in interface org.apache.wsdl.ExtensibleComponent

addProperty

public void addProperty(org.apache.wsdl.WSDLProperty wsdlProperty)
Specified by:
addProperty in interface org.apache.wsdl.ExtensibleComponent

getProperties

public java.util.List getProperties()
Specified by:
getProperties in interface org.apache.wsdl.ExtensibleComponent

getDocumentation

public org.w3c.dom.Document getDocumentation()

setDocumentation

public void setDocumentation(org.w3c.dom.Document documentation)

getComponentProperties

public java.util.HashMap getComponentProperties()
Specified by:
getComponentProperties in interface org.apache.wsdl.Component

setComponentProperties

public void setComponentProperties(java.util.HashMap properties)
Specified by:
setComponentProperties in interface org.apache.wsdl.Component

setComponentProperty

public void setComponentProperty(java.lang.Object key,
                                 java.lang.Object obj)
Specified by:
setComponentProperty in interface org.apache.wsdl.Component

getComponentProperty

public java.lang.Object getComponentProperty(java.lang.Object key)
Specified by:
getComponentProperty in interface org.apache.wsdl.Component

addExtensibilityElement

public void addExtensibilityElement(org.apache.wsdl.WSDLExtensibilityElement element)
Specified by:
addExtensibilityElement in interface org.apache.wsdl.Component

getExtensibilityElements

public java.util.List getExtensibilityElements()
Specified by:
getExtensibilityElements in interface org.apache.wsdl.Component

addExtensibleAttributes

public void addExtensibleAttributes(org.apache.wsdl.WSDLExtensibilityAttribute attribute)
Specified by:
addExtensibleAttributes in interface org.apache.wsdl.Component

getExtensibilityAttributes

public java.util.List getExtensibilityAttributes()
Specified by:
getExtensibilityAttributes in interface org.apache.wsdl.Component

getMetadataBag

public java.util.Map getMetadataBag()
Specified by:
getMetadataBag in interface org.apache.wsdl.Component

setMetadataBag

public void setMetadataBag(java.util.Map meMap)
Specified by:
setMetadataBag in interface org.apache.wsdl.Component

findOperationContext

public OperationContext findOperationContext(MessageContext msgContext,
                                             ServiceContext serviceContext)
                                      throws AxisFault
This method is responsible for finding a MEPContext for an incomming messages. An incomming message can be of two states.

1)This is a new incomming message of a given MEP. 2)This message is a part of an MEP which has already begun.

The method is special cased for the two MEPs

#IN_ONLY #IN_OUT

for two reasons. First reason is the wide usage and the second being that the need for the MEPContext to be saved for further incomming messages.

In the event that MEP of this operation is different from the two MEPs deafulted above the decession of creating a new or this message relates to a MEP which already in business is decided by looking at the WSA Relates TO of the incomming message.

Parameters:
msgContext -
Throws:
AxisFault

findForExistingOperationContext

public OperationContext findForExistingOperationContext(MessageContext msgContext)
                                                 throws AxisFault
This will not create a new operation context if there is no one already.

Parameters:
msgContext -
Returns:
Throws:
AxisFault

registerOperationContext

public void registerOperationContext(MessageContext msgContext,
                                     OperationContext operationContext)
                              throws AxisFault
Throws:
AxisFault

setWsdlopeartion

public void setWsdlopeartion(org.apache.wsdl.impl.WSDLOperationImpl wsdlopeartion)

getWsamappingList

public java.util.ArrayList getWsamappingList()

setWsamappingList

public void setWsamappingList(java.util.ArrayList wsamappingList)

isControlOperation

public boolean isControlOperation()

setControlOperation

public void setControlOperation(boolean controlOperation)