Package org.apache.cxf.message

## Interface Exchange

- All Superinterfaces:
    `Map<String,​Object>`, `StringMap`
  All Known Implementing Classes:
    `ExchangeImpl`

      public interface Exchange
      extends StringMap

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface java.util.Map

      `Map.Entry<K extends Object,​V extends Object>`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `clear()`
    `Binding` | `getBinding()` |
    `BindingOperationInfo` | `getBindingOperationInfo()` |
    `Bus` | `getBus()` |
    `Conduit` | `getConduit​(Message message)` |
    `Destination` | `getDestination()` |
    `Endpoint` | `getEndpoint()` |
    `Message` | `getInFaultMessage()` |
    `Message` | `getInMessage()` | Returns the inbound message for the exchange.
    `Message` | `getOutFaultMessage()` |
    `Message` | `getOutMessage()` | Returns the outbound message for the exchange.
    `Service` | `getService()` |
    `Session` | `getSession()` |
    `boolean` | `isOneWay()` | Determines if the exchange is one-way.
    `boolean` | `isSynchronous()` | Determines if the exchange requires the frontend to wait for a response.
    `void` | `setConduit​(Conduit conduit)` |
    `void` | `setDestination​(Destination destination)` |
    `void` | `setInFaultMessage​(Message m)` |
    `void` | `setInMessage​(Message m)` |
    `void` | `setOneWay​(boolean b)` |
    `void` | `setOutFaultMessage​(Message m)` |
    `void` | `setOutMessage​(Message m)` |
    `void` | `setSynchronous​(boolean b)` |

    - ### Methods inherited from interface java.util.Map

      `compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, equals, forEach, get, getOrDefault, hashCode, isEmpty, keySet, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values`

    - ### Methods inherited from interface org.apache.cxf.message.StringMap

      `get, put, remove`

- - ### Method Detail

    - #### getInMessage

          Message getInMessage()

      Returns the inbound message for the exchange. On the client-side, this is the response. On the server-side, this is the request.
      Returns:
        the inbound message

    - #### setInMessage

          void setInMessage​(Message m)

    - #### getOutMessage

          Message getOutMessage()

      Returns the outbound message for the exchange. On the client-side, this is the request. On the server-side, this is the response. During the inbound message processing, the outbound message is null.
      Returns:
        the outbound message

    - #### setOutMessage

          void setOutMessage​(Message m)

    - #### getInFaultMessage

          Message getInFaultMessage()

    - #### setInFaultMessage

          void setInFaultMessage​(Message m)

    - #### getOutFaultMessage

          Message getOutFaultMessage()

    - #### setOutFaultMessage

          void setOutFaultMessage​(Message m)

    - #### getSession

          Session getSession()

    - #### getDestination

          Destination getDestination()

      Returns:
        the associated incoming Destination (may be anonymous)

    - #### setDestination

          void setDestination​(Destination destination)

      Parameters:
        `destination` - the associated incoming Destination

    - #### getConduit

          Conduit getConduit​(Message message)

      Parameters:
        `message` - the associated message
      Returns:
        the associated outgoing Conduit (may be anonymous)

    - #### setConduit

          void setConduit​(Conduit conduit)

      Parameters:
        `conduit` - the associated outgoing Conduit

    - #### isOneWay

          boolean isOneWay()

      Determines if the exchange is one-way.
      Returns:
        true if the exchange is known to be a one-way exchange

    - #### isSynchronous

          boolean isSynchronous()

      Determines if the exchange requires the frontend to wait for a response. Transports can then optimize themselves to process the response immediately instead of using a background thread or similar.
      Returns:
        true if the frontend will wait for the response

    - #### setSynchronous

          void setSynchronous​(boolean b)

    - #### setOneWay

          void setOneWay​(boolean b)

      Parameters:
        `b` - true if the exchange is known to be a one-way exchange

    - #### clear

          void clear()

      Specified by:
        `clear` in interface `Map<String,​Object>`

    - #### getBus

          Bus getBus()

    - #### getService

          Service getService()

    - #### getEndpoint

          Endpoint getEndpoint()

    - #### getBinding

          Binding getBinding()

    - #### getBindingOperationInfo

          BindingOperationInfo getBindingOperationInfo()