org.apache.ode.bpel.compiler.bom

## Class OnMessage

- java.lang.Object
- - org.apache.ode.bpel.compiler.bom.BpelObject
  - - org.apache.ode.bpel.compiler.bom.OnMessage

- All Implemented Interfaces:
    SourceLocation, Communication
  Direct Known Subclasses:
    OnEvent

      public class OnMessage
      extends BpelObject
      implements Communication

  Representation of a message-driven event handler. This is used as part of a `pick` activity in both the 1.1 and 2.0 dialects, and this is used to represent the `onMessage` component of an `eventHandlers` for a `scope` or `process` in 1.1. In 2.0, the `OnEvent` is used as part of the `eventHandlers` construct for a `scope` or `process`.

  Note that the semantics of the variable set with `#setVariable(String)` are different depending on whether this is attached to a `pick` activity or to an `eventHandlers` for a `scope` or `process`. In the case of the `pick`, the variable is interpreted as being declared in the enclosing `scope`, but for the other construct, the variable is local to the `onMessage` instance. (Recall that the `eventHandlers` construct implements replication like the `!` operator in the pi-calculus, so there may be multiple instances of an `onMessage` handler around simultaneously.

  See Also:
    `PickActivity`, `OnEvent`

- - ### Field Summary

    - ### Fields inherited from class org.apache.ode.bpel.compiler.bom.BpelObject

      `ATTR_LINENO`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `OnMessage(org.w3c.dom.Element el)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Activity` | `getActivity()` Get the activity associated with the event (i.e.
    `java.util.List<Correlation>` | `getCorrelations()`
    `java.lang.String` | `getMessageExchangeId()` Get the optional message exchange identifier.
    `java.lang.String` | `getOperation()` Get the operation for the communication.
    `java.lang.String` | `getPartnerLink()` Get the partnerLink link on which to communicate.
    `javax.xml.namespace.QName` | `getPortType()` Get the port type for the communication.
    `java.lang.String` | `getRoute()`
    `java.lang.String` | `getVariable()` Get the input message variable for the event.

    - ### Methods inherited from class org.apache.ode.bpel.compiler.bom.BpelObject

      `createBpelObject, getAttribute, getAttribute, getAttribute, getAttribute, getChildren, getChildren, getChildren, getColumnNo, getElement, getExtensibilityElement, getExtensibilityElements, getFirstChild, getFirstChild, getFirstExtensibilityElementElement, getLineNo, getNamespaceContext, getPath, getTextValue, getType, getURI, is11, is20Draft, isAttributeSet, rewriteTargetNS, setURI, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### OnMessage

          public OnMessage(org.w3c.dom.Element el)

  - ### Method Detail

    - #### getMessageExchangeId

          public java.lang.String getMessageExchangeId()

      Get the optional message exchange identifier.
      Returns:

    - #### getRoute

          public java.lang.String getRoute()

    - #### getActivity

          public Activity getActivity()

      Get the activity associated with the event (i.e. the activity that is activated).
      Returns:
        activity activated when message event occurs

    - #### getVariable

          public java.lang.String getVariable()

      Get the input message variable for the event.
      Returns:
        input message variable

    - #### getOperation

          public java.lang.String getOperation()

      Description copied from interface: `Communication`
      Get the operation for the communication.
      Specified by:
        `getOperation` in interface `Communication`
      Returns:
        name of operation

    - #### getPartnerLink

          public java.lang.String getPartnerLink()

      Description copied from interface: `Communication`
      Get the partnerLink link on which to communicate.
      Specified by:
        `getPartnerLink` in interface `Communication`
      Returns:
        name of the partner link

    - #### getPortType

          public javax.xml.namespace.QName getPortType()

      Description copied from interface: `Communication`
      Get the port type for the communication. This property is optional as the partner link type implies a port type.
      Specified by:
        `getPortType` in interface `Communication`
      Returns:
        name of portType for the communication (or `null`)

    - #### getCorrelations

          public java.util.List<Correlation> getCorrelations()

      Specified by:
        `getCorrelations` in interface `Communication`