Package org.apache.cxf.transport

## Interface Conduit

- All Superinterfaces:
    `Observable`
  All Known Implementing Classes:
    `AbstractConduit`, `AbstractDestination.AbstractBackChannelConduit`

      public interface Conduit
      extends Observable

  A pipe between peers that channels transport-level messages.

  A Conduit channels messages to a single destination, though this destination may fan-out to multiple receivers (for example a JMS topic).

  A Conduit may have a back-channel, on which transport-level responses are received. Alternatively the back-channel destination may be decoupled, in which case the response it is received via a separate Conduit. The crucial distinction is whether the Conduit can itself correlate the response (which may be synchronous, or may be delivered via a dedicated destination).

  Conduits may be used for multiple messages, either serially or concurrently, with the implementation taking care of mapping onto multiple transport resources (e.g. connections) if neccessary to support concurrency.

  Binding-level MEPs may be realized over one or more Conduits.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` | Close the conduit
    `void` | `close​(Message message)` | Close the connections associated with the message
    `org.apache.cxf.ws.addressing.EndpointReferenceType` | `getTarget()` |
    `void` | `prepare​(Message message)` | Prepare the message for sending.

    - ### Methods inherited from interface org.apache.cxf.transport.Observable

      `getMessageObserver, setMessageObserver`

- - ### Method Detail

    - #### prepare

          void prepare​(Message message)
                throws IOException

      Prepare the message for sending. This will typically involve setting an OutputStream on the message, but it may do nothing at all.
      Parameters:
        `message` - the message to be sent.
      Throws:
        `IOException`

    - #### close

          void close​(Message message)
              throws IOException

      Close the connections associated with the message
      Throws:
        `IOException`

    - #### getTarget

          org.apache.cxf.ws.addressing.EndpointReferenceType getTarget()

      Returns:
        the reference associated with the target Destination

    - #### close

          void close()

      Close the conduit