org.apache.ode.bpel.iapi

## Interface PartnerRoleMessageExchange

- All Superinterfaces:
    MessageExchange
  All Known Implementing Classes:
    PartnerRoleMessageExchangeImpl

      public interface PartnerRoleMessageExchange
      extends MessageExchange

  A message exchange orginating from the BPEL server and targeting some external partner.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.ode.bpel.iapi.MessageExchange

      `MessageExchange.FailureType, MessageExchange.MessageExchangePattern, MessageExchange.Status`

  - ### Field Summary

    - ### Fields inherited from interface org.apache.ode.bpel.iapi.MessageExchange

      `PROPERTY_SEP_MYROLE_SESSIONID, PROPERTY_SEP_PARTNERROLE_EPR, PROPERTY_SEP_PARTNERROLE_SESSIONID`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `javax.xml.namespace.QName` | `getCaller()` Get the identifier of the process that created this message exchange.
    `PartnerRoleChannel` | `getChannel()` Get the communication channel.
    `EndpointReference` | `getMyRoleEndpointReference()` Get the `EndpointReference` associated with the my-role of the partner link to which this message exchange belongs.
    `void` | `reply(Message response)` Indicate that the partner has responded to the message exchange.
    `void` | `replyAsync()` Indicate that the response to the request/response operation is not yet available and that the response will be delivered asynchronously.
    `void` | `replyOneWayOk()` Indicate that the partner processed the one-way invocation successfully.
    `void` | `replyWithFailure(MessageExchange.FailureType type, java.lang.String description, org.w3c.dom.Element details)` Indicate that the partner has failed to process the message exchange.
    `void` | `replyWithFault(javax.xml.namespace.QName faultType, Message outputFaultMessage)` Indicate that the partner faulted in processing the message exchange.

    - ### Methods inherited from interface org.apache.ode.bpel.iapi.MessageExchange

      `createMessage, getEndpointReference, getFault, getFaultExplanation, getFaultResponse, getMessageExchangeId, getMessageExchangePattern, getOperation, getOperationName, getPortType, getProperty, getPropertyNames, getRequest, getResponse, getStatus, isTransactionPropagated, release, setProperty`

- - ### Method Detail

    - #### getCaller

          javax.xml.namespace.QName getCaller()

      Get the identifier of the process that created this message exchange.
      Returns:

    - #### getChannel

          PartnerRoleChannel getChannel()

      Get the communication channel.
      Returns:
        communication channel

    - #### replyWithFault

          void replyWithFault(javax.xml.namespace.QName faultType,
                              Message outputFaultMessage)
                       throws BpelEngineException

      Indicate that the partner faulted in processing the message exchange.
      Parameters:
        `faultType` - fault type
        `outputFaultMessage` - the input message
      Throws:
        `java.lang.IllegalStateException` - if delivering this type of message is inappropriate at the present point.
        `BpelEngineException`

    - #### reply

          void reply(Message response)
              throws BpelEngineException

      Indicate that the partner has responded to the message exchange.
      Parameters:
        `response` - the response from the partner
      Throws:
        `java.lang.IllegalStateException` - if delivering this type of message is inappropriate at the present point.
        `BpelEngineException`

    - #### replyWithFailure

          void replyWithFailure(MessageExchange.FailureType type,
                                java.lang.String description,
                                org.w3c.dom.Element details)
                         throws BpelEngineException

      Indicate that the partner has failed to process the message exchange.
      Parameters:
        `type` - type of failure
        `description` - description of failure
      Throws:
        `BpelEngineException`

    - #### replyOneWayOk

          void replyOneWayOk()

      Indicate that the partner processed the one-way invocation successfully.

    - #### replyAsync

          void replyAsync()

      Indicate that the response to the request/response operation is not yet available and that the response will be delivered asynchronously.

    - #### getMyRoleEndpointReference

          EndpointReference getMyRoleEndpointReference()

      Get the `EndpointReference` associated with the my-role of the partner link to which this message exchange belongs. This method is typically used to provide protocol-specific "callback" mechanisms.
      Returns:
        endpoint reference associate with the corresponding my-role, or null if no my-role is defined