## Uses of Interface
org.apache.cxf.message.Exchange

- Packages that use Exchange
  Package | Description
  --- | ---
  org.apache.cxf.annotations |
  org.apache.cxf.endpoint |
  org.apache.cxf.interceptor |
  org.apache.cxf.message |
  org.apache.cxf.service.invoker |
  org.apache.cxf.service.invoker.spring |
  org.apache.cxf.service.model |
  org.apache.cxf.transport |
  org.apache.cxf.ws.addressing |

- - ### Uses of Exchange in org.apache.cxf.annotations

    Methods in org.apache.cxf.annotations with parameters of type Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `Object` | FactoryType.DEFAULT.`create​(Exchange e)` |
    `void` | FactoryType.DEFAULT.`release​(Exchange e, Object o)` |

  - ### Uses of Exchange in org.apache.cxf.endpoint

    Methods in org.apache.cxf.endpoint with parameters of type Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | AbstractConduitSelector.`complete​(Exchange exchange)` | Called on completion of the MEP for which the Conduit was required.
    `void` | ConduitSelector.`complete​(Exchange exchange)` | Called on completion of the MEP for which the Conduit was required.
    `void` | NullConduitSelector.`complete​(Exchange exchange)` | Called on completion of the MEP for which the Conduit was required.
    `void` | PreexistingConduitSelector.`complete​(Exchange exchange)` | Called on completion of the MEP for which the Conduit was required.
    `protected Conduit` | AbstractConduitSelector.`createConduit​(Message message, Exchange exchange, ConduitInitiator conduitInitiator)` |
    `protected Exception` | ClientImpl.`getException​(Exchange exchange)` |
    `void` | Client.`invoke​(ClientCallback callback, BindingOperationInfo oi, Object[] params, Map<String,​Object> context, Exchange exchange)` | Invokes an operation asynchronously
    `void` | Client.`invoke​(ClientCallback callback, BindingOperationInfo oi, Object[] params, Exchange exchange)` | Invokes an operation asynchronously
    `Object[]` | Client.`invoke​(BindingOperationInfo oi, Object[] params, Map<String,​Object> context, Exchange exchange)` | Invokes an operation synchronously
    `void` | ClientImpl.`invoke​(ClientCallback callback, BindingOperationInfo oi, Object[] params, Map<String,​Object> context, Exchange exchange)` |
    `void` | ClientImpl.`invoke​(ClientCallback callback, BindingOperationInfo oi, Object[] params, Exchange exchange)` |
    `Object[]` | ClientImpl.`invoke​(BindingOperationInfo oi, Object[] params, Map<String,​Object> context, Exchange exchange)` |
    `Object[]` | ClientImpl.`invoke​(BindingOperationInfo oi, Object[] params, Exchange exchange)` |
    `Object[]` | Retryable.`invoke​(BindingOperationInfo oi, Object[] params, Map<String,​Object> context, Exchange exchange)` |
    `protected Object[]` | ClientImpl.`processResult​(Message message, Exchange exchange, BindingOperationInfo oi, Map<String,​Object> resContext)` |
    `protected void` | ClientImpl.`setExchangeProperties​(Exchange exchange, Endpoint endpoint, BindingOperationInfo boi)` |
    `protected void` | ClientImpl.`waitResponse​(Exchange exchange)` |

  - ### Uses of Exchange in org.apache.cxf.interceptor

    Methods in org.apache.cxf.interceptor with parameters of type Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected MessagePartInfo` | AbstractInDatabindingInterceptor.`findMessagePart​(Exchange exchange, Collection<OperationInfo> operations, QName name, boolean client, int index, Message message)` | Find the next possible message part in the message.
    `protected BindingOperationInfo` | AbstractInDatabindingInterceptor.`getBindingOperationInfo​(Exchange exchange, QName name, boolean client)` | Returns a BindingOperationInfo if the operation is indentified as a wrapped method, return null if it is not a wrapped method (i.e., it is a bare method)
    `static InterceptorChain` | OutgoingChainInterceptor.`getOutInterceptorChain​(Exchange ex)` |
    `protected void` | AbstractFaultChainInitiatorObserver.`initializeInterceptors​(Exchange ex, PhaseInterceptorChain chain)` |
    `protected void` | InFaultChainInitiatorObserver.`initializeInterceptors​(Exchange ex, PhaseInterceptorChain chain)` |
    `protected void` | OutFaultChainInitiatorObserver.`initializeInterceptors​(Exchange ex, PhaseInterceptorChain chain)` |
    `protected void` | AbstractOutDatabindingInterceptor.`writeParts​(Message message, Exchange exchange, BindingOperationInfo operation, MessageContentsList objs, List<MessagePartInfo> parts)` |

  - ### Uses of Exchange in org.apache.cxf.message

    Classes in org.apache.cxf.message that implement Exchange
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ExchangeImpl` |

    Methods in org.apache.cxf.message that return Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `Exchange` | AbstractWrappedMessage.`getExchange()` |
    `Exchange` | Message.`getExchange()` |
    `Exchange` | MessageImpl.`getExchange()` |

    Methods in org.apache.cxf.message with parameters of type Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | AbstractWrappedMessage.`setExchange​(Exchange exchange)` |
    `void` | Message.`setExchange​(Exchange exchange)` |
    `void` | MessageImpl.`setExchange​(Exchange e)` |

  - ### Uses of Exchange in org.apache.cxf.service.invoker

    Methods in org.apache.cxf.service.invoker with parameters of type Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected Method` | AbstractInvoker.`adjustMethodAndParams​(Method m, Exchange ex, List<Object> params, Class<?> serviceObjectClass)` |
    `protected void` | AbstractInvoker.`checkSuspendedInvocation​(Exchange exchange, Object serviceObject, Method m, List<Object> params, Throwable t)` |
    `Object` | Factory.`create​(Exchange e)` | Creates the object that will be used for the invoke
    `Object` | PerRequestFactory.`create​(Exchange ex)` |
    `Object` | PooledFactory.`create​(Exchange ex)` | Creates the object that will be used for the invoke
    `Object` | SessionFactory.`create​(Exchange e)` | Creates the object that will be used for the invoke
    `Object` | SingletonFactory.`create​(Exchange ex)` | Creates the object that will be used for the invoke
    `protected Object` | PooledFactory.`createObject​(Exchange e)` |
    `abstract Object` | AbstractInvoker.`getServiceObject​(Exchange context)` | Creates and returns a service object depending on the scope.
    `Object` | BeanInvoker.`getServiceObject​(Exchange ex)` |
    `Object` | FactoryInvoker.`getServiceObject​(Exchange ex)` |
    `Object[]` | AbstractInvoker.`insertExchange​(Method method, Object[] params, Exchange context)` |
    `Object` | AbstractInvoker.`invoke​(Exchange exchange, Object o)` |
    `protected Object` | AbstractInvoker.`invoke​(Exchange exchange, Object serviceObject, Method m, List<Object> params)` |
    `Object` | Invoker.`invoke​(Exchange exchange, Object o)` |
    `protected Object` | AbstractInvoker.`performInvocation​(Exchange exchange, Object serviceObject, Method m, Object[] paramArray)` |
    `void` | Factory.`release​(Exchange e, Object o)` | Post invoke, this is called to allow the factory to release the object, store it, etc...
    `void` | PerRequestFactory.`release​(Exchange ex, Object o)` |
    `void` | PooledFactory.`release​(Exchange ex, Object o)` | Post invoke, this is called to allow the factory to release the object, store it, etc...
    `void` | SessionFactory.`release​(Exchange e, Object o)` | Post invoke, this is called to allow the factory to release the object, store it, etc...
    `void` | SingletonFactory.`release​(Exchange ex, Object o)` | Post invoke, this is called to allow the factory to release the object, store it, etc...
    `void` | AbstractInvoker.`releaseServiceObject​(Exchange context, Object obj)` | Called when the invoker is done with the object.
    `void` | FactoryInvoker.`releaseServiceObject​(Exchange ex, Object obj)` |

  - ### Uses of Exchange in org.apache.cxf.service.invoker.spring

    Methods in org.apache.cxf.service.invoker.spring with parameters of type Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `Object` | SpringBeanFactory.`create​(Exchange e)` | Creates the object that will be used for the invoke
    `void` | SpringBeanFactory.`release​(Exchange e, Object o)` | Post invoke, this is called to allow the factory to release the object, store it, etc...

  - ### Uses of Exchange in org.apache.cxf.service.model

    Methods in org.apache.cxf.service.model with parameters of type Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `static BindingOperationInfo` | ServiceModelUtil.`getOperation​(Exchange exchange, String opName)` |
    `static BindingOperationInfo` | ServiceModelUtil.`getOperation​(Exchange exchange, QName opName)` |
    `static BindingOperationInfo` | ServiceModelUtil.`getOperationForWrapperElement​(Exchange exchange, QName opName, boolean output)` |
    `static Service` | ServiceModelUtil.`getService​(Exchange exchange)` |
    `static String` | ServiceModelUtil.`getTargetNamespace​(Exchange exchange)` |

  - ### Uses of Exchange in org.apache.cxf.transport

    Methods in org.apache.cxf.transport with parameters of type Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | ChainInitiationObserver.`setExchangeProperties​(Exchange exchange, Message m)` |
    `protected void` | MultipleEndpointObserver.`setExchangeProperties​(Exchange exchange, Message m)` |

  - ### Uses of Exchange in org.apache.cxf.ws.addressing

    Methods in org.apache.cxf.ws.addressing with parameters of type Exchange
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Destination` | ContextUtils.`createDecoupledDestination​(Exchange exchange, org.apache.cxf.ws.addressing.EndpointReferenceType reference)` |
    `static Message` | ContextUtils.`createMessage​(Exchange exchange)` | Create a Binding specific Message.
    `static void` | ContextUtils.`propogateReceivedMAPs​(AddressingProperties inMAPs, Exchange exchange)` | Propagate inbound MAPs onto full reponse & fault messages.