Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.ode.bpel.iapi
Interface MessageExchange

All Known Subinterfaces:
  MyRoleMessageExchange, PartnerRoleMessageExchange

All Known Implementing Classes:
  BrokeredMyRoleMessageExchangeImpl, PartnerRoleMessageExchangeImpl

    public interface MessageExchange

A representation of a communication (message-exchange) between the BPEL BPEL engine and an external "partner".

Nested Class Summary
`static class` | `MessageExchange.FailureType` Enumeration of the types of failures.
`static class` | `MessageExchange.MessageExchangePattern` Enumeration of message exchange patterns.
`static class` | `MessageExchange.Status` Enumeration of the possible states for the message exchange.

Field Summary
`static java.lang.String` | `PROPERTY_SEP_MYROLE_SESSIONID`
`static java.lang.String` | `PROPERTY_SEP_PARTNERROLE_EPR`
`static java.lang.String` | `PROPERTY_SEP_PARTNERROLE_SESSIONID`

Method Summary
`Message` | `createMessage(javax.xml.namespace.QName msgType)` Create a message associated with this exchange.
`EndpointReference` | `getEndpointReference()` Get a reference to the end-point targeted by this message exchange.
`javax.xml.namespace.QName` | `getFault()` Get the fault type.
`java.lang.String` | `getFaultExplanation()`
`Message` | `getFaultResponse()` Get the fault resposne message.
`java.lang.String` | `getMessageExchangeId()` Get the message exchange identifier.
`MessageExchange.MessageExchangePattern` | `getMessageExchangePattern()` Return the type of message-exchange that resulted form this invocation (request only/request-respone).
`javax.wsdl.Operation` | `getOperation()` Get the operation description for this message exchange.
`java.lang.String` | `getOperationName()` Get the name of the operation (WSDL 1.1) / message exchange (WSDL 1.2?).
`javax.wsdl.PortType` | `getPortType()` Get the port type description for this message exchange.
`java.lang.String` | `getProperty(java.lang.String key)` Get a message exchange property.
`java.util.Set<java.lang.String>` | `getPropertyNames()` Get a set containing the names of the defined properties.
`Message` | `getRequest()` Get the request message.
`Message` | `getResponse()` Get the response message.
`MessageExchange.Status` | `getStatus()` Get the message exchange status.
`boolean` | `isTransactionPropagated()`
`void` | `release()` Should be called by the external partner when it's done with the message exchange.
`void` | `setProperty(java.lang.String key, java.lang.String value)` Set a message exchange property.

Field Detail

### PROPERTY_SEP_MYROLE_SESSIONID

    static final java.lang.String PROPERTY_SEP_MYROLE_SESSIONID

See Also:
  Constant Field Values

### PROPERTY_SEP_PARTNERROLE_SESSIONID

    static final java.lang.String PROPERTY_SEP_PARTNERROLE_SESSIONID

See Also:
  Constant Field Values

### PROPERTY_SEP_PARTNERROLE_EPR

    static final java.lang.String PROPERTY_SEP_PARTNERROLE_EPR

See Also:
  Constant Field Values

Method Detail

### getMessageExchangeId

    java.lang.String getMessageExchangeId()
                                          throws BpelEngineException

  Get the message exchange identifier. This identifier should be globally unique as the BPEL engine may keep identifiers for extended periods of time.

  Returns:
    unique message exchange identifier
  Throws:
    `BpelEngineException`

### getOperationName

    java.lang.String getOperationName()
                                      throws BpelEngineException

  Get the name of the operation (WSDL 1.1) / message exchange (WSDL 1.2?).

  Returns:
    name of the operation (WSDL 1.1) /message exchange (WSDL 1.2?).
  Throws:
    `BpelEngineException`

### getEndpointReference

    EndpointReference getEndpointReference()
                                           throws BpelEngineException

  Get a reference to the end-point targeted by this message exchange.

  Returns:
    end-point reference for this message exchange
  Throws:
    `BpelEngineException`

### getMessageExchangePattern

    MessageExchange.MessageExchangePattern getMessageExchangePattern()

  Return the type of message-exchange that resulted form this invocation (request only/request-respone). If a `MessageExchange.MessageExchangePattern.REQUEST_RESPONSE` message-exchange was created, then the caller should expect a response in the future.

  Returns:
    type of message exchange created by the invocation

### createMessage

    Message createMessage(javax.xml.namespace.QName msgType)

  Create a message associated with this exchange.

  Parameters:
    `msgType` - message type
  Returns:
    a new `Message`

### isTransactionPropagated

    boolean isTransactionPropagated()
                                    throws BpelEngineException

  Throws:
    `BpelEngineException`

### getStatus

    MessageExchange.Status getStatus()

  Get the message exchange status.

  Returns:

### getRequest

    Message getRequest()

  Get the request message.

  Returns:
    request message

### getResponse

    Message getResponse()

  Get the response message.

  Returns:
    response message (or null if not avaiable)

### getFault

    javax.xml.namespace.QName getFault()

  Get the fault type.

  Returns:
    fault type, or `null` if not available/applicable.

### getFaultExplanation

    java.lang.String getFaultExplanation()

### getFaultResponse

    Message getFaultResponse()

  Get the fault resposne message.

  Returns:
    fault response, or `null` if not available/applicable.

### getOperation

    javax.wsdl.Operation getOperation()

  Get the operation description for this message exchange. It is possible that the description cannot be resolved, for example if the EPR is unknown or if the operation does not exist. TODO: How to get rid of the WSDL4j dependency?

  Returns:
    WSDL operation description or `null` if not availble

### getPortType

    javax.wsdl.PortType getPortType()

  Get the port type description for this message exchange. It is possible that the description cannot be resolved, for example if the EPR is unknown or if the operation does not exist. TODO: How to get rid of the WSDL4j dependency?

  Returns:
    WSDL port type description or `null` if not available.

### setProperty

    void setProperty(java.lang.String key,
                     java.lang.String value)

  Set a message exchange property. Message exchange properties are not interpreted by the engine--they exist to enable the integration layer to persist information about the exchange.

  Parameters:
    `key` - property key
    `value` - property value

### getProperty

    java.lang.String getProperty(java.lang.String key)

  Get a message exchange property.

  Parameters:
    `key` - property key
  Returns:
    property value

### getPropertyNames

    java.util.Set<java.lang.String> getPropertyNames()

  Get a set containing the names of the defined properties.

  Returns:
    set of property names.

### release

    void release()

  Should be called by the external partner when it's done with the message exchange. Ncessary for a better resource management and proper mex cleanup.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD