[[exchangeProperty-language]]
= ExchangeProperty Language
:docTitle: ExchangeProperty
:artifactId: camel-core-languages
:description: Get the value of named Camel Exchange property.
:since: 2.0
:supportLevel: Stable
include::{cq-version}@camel-quarkus:ROOT:partial$reference/languages/exchangeProperty.adoc[opts=optional]

*Since Camel {since}*

The ExchangeProperty Expression Language allows you to extract values of
named exchange properties.

== Exchange Property Options

// language options: START
The ExchangeProperty language supports 1 options, which are listed below.



[width="100%",cols="2,1m,1m,6",options="header"]
|===
| Name | Default | Java Type | Description
| trim | true | Boolean | Whether to trim the value to remove leading and trailing whitespaces and line breaks
|===
// language options: END

== Example usage

The recipientList element of the Spring DSL can utilize a
exchangeProperty expression like:

In this case, the list of recipients are contained in the property
'myProperty'.

[source,xml]
----
<route>
  <from uri="direct:a" />
  <recipientList>
    <exchangeProperty>myProperty</exchangeProperty>
  </recipientList>
</route>
----

And the same example in Java DSL:

[source,java]
----
from("direct:a").recipientList(exchangeProperty("myProperty"));
----

And with a slightly different syntax where you use the builder to the
fullest (i.e. avoid using parameters but using stacked operations,
notice that exchangeProperty is not a parameter but a stacked method
call)

[source,java]
----
from("direct:a").recipientList().exchangeProperty("myProperty");
----

== Dependencies

The ExchangeProperty language is part of *camel-core*.
