org.eclipse.microprofile.rest.client.ext

## Class DefaultClientHeadersFactoryImpl

- java.lang.Object
- - org.eclipse.microprofile.rest.client.ext.DefaultClientHeadersFactoryImpl

All Implemented Interfaces:
  ClientHeadersFactory

    public class DefaultClientHeadersFactoryImpl
    extends Object
    implements ClientHeadersFactory

This class propagates JAX-RS headers whose names are specified using the MicroProfile Config property, `org.eclipse.microprofile.rest.client.propagateHeaders`.

The value of this property should be a comma-separated list of HTTP header names. If the headers specified in the property exist in the inbound JAX-RS request, this class will propagate those headers to the outbound Rest Client request.

Any headers present on `clientOutgoingHeaders` will not be returned when calling the `update` method.

Since:
  1.2

### Field Summary

Fields
`static String` `PROPAGATE_PROPERTY`

### Constructor Summary

Constructors
Constructor and Description
`DefaultClientHeadersFactoryImpl()`

### Method Summary

All Methods Instance Methods Concrete Methods
`javax.ws.rs.core.MultivaluedMap<String,String>` `update(javax.ws.rs.core.MultivaluedMap<String,String> incomingHeaders, javax.ws.rs.core.MultivaluedMap<String,String> clientOutgoingHeaders)` Updates the HTTP headers to send to the remote service.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### PROPAGATE_PROPERTY

    public static final String PROPAGATE_PROPERTY

See Also:
  Constant Field Values

### Constructor Detail

#### DefaultClientHeadersFactoryImpl

    public DefaultClientHeadersFactoryImpl()

### Method Detail

#### update

    public javax.ws.rs.core.MultivaluedMap<String,String> update(javax.ws.rs.core.MultivaluedMap<String,String> incomingHeaders,
                                                                 javax.ws.rs.core.MultivaluedMap<String,String> clientOutgoingHeaders)

Description copied from interface: `ClientHeadersFactory`
Updates the HTTP headers to send to the remote service. Note that providers on the outbound processing chain could further update the headers.

Specified by:
  `update` in interface `ClientHeadersFactory`
Parameters:
  `incomingHeaders` - - the map of headers from the inbound JAX-RS request. This will be an empty map if the associated client interface is not part of a JAX-RS request.
  `clientOutgoingHeaders` - - the read-only map of header parameters specified on the client interface.
Returns:
  a map of HTTP headers to merge with the clientOutgoingHeaders to be sent to the remote service.