Components
^^^^^^^^^^





// components: START
[width="100%",cols="4,6",options="header"]
|=======================================================================
| Component | Description

| link:src/main/docs/bean-component.adoc[Bean] (camel-core) +
`bean:beanName` | The bean component is for invoking Java beans from Camel.

| link:src/main/docs/binding-component.adoc[Binding] (camel-core) +
`binding:bindingName:delegateUri` | The binding component is used for as a of wrapping an Endpoint in a contract with a data format.

| link:src/main/docs/browse-component.adoc[Browse] (camel-core) +
`browse:name` | The browse component is used for viewsing the messages received on endpoints that supports BrowsableEndpoint.

| link:src/main/docs/class-component.adoc[Class] (camel-core) +
`class:beanName` | The Class Component is for invoking Java Classes (Java beans) from Camel.

| link:src/main/docs/controlbus-component.adoc[Control Bus] (camel-core) +
`controlbus:command:language` | The controlbus component provides easy management of Camel applications based on the Control Bus EIP pattern.

| link:src/main/docs/dataformat-component.adoc[Data Format] (camel-core) +
`dataformat:name:operation` | The dataformat component is used for working with Data Formats as if it was a regular Component supporting Endpoints and URIs.

| link:src/main/docs/dataset-component.adoc[Dataset] (camel-core) +
`dataset:name` | The dataset component provides a mechanism to easily perform load & soak testing of your system.

| link:src/main/docs/direct-component.adoc[Direct] (camel-core) +
`direct:name` | The direct component provides direct synchronous call to another endpoint from the same CamelContext.

| link:src/main/docs/direct-vm-component.adoc[Direct VM] (camel-core) +
`direct-vm:name` | The direct-vm component provides direct synchronous call to another endpoint from any CamelContext in the same JVM.

| link:src/main/docs/file-component.adoc[File] (camel-core) +
`file:directoryName` | The file component is used for reading or writing files.

| link:src/main/docs/language-component.adoc[Language] (camel-core) +
`language:languageName:resourceUri` | The language component allows you to send a message to an endpoint which executes a script by any of the supported Languages in Camel.

| link:src/main/docs/log-component.adoc[Log] (camel-core) +
`log:loggerName` | The log component logs message exchanges to the underlying logging mechanism.

| link:src/main/docs/mock-component.adoc[Mock] (camel-core) +
`mock:name` | The mock component is used for testing routes and mediation rules using mocks.

| link:src/main/docs/properties-component.adoc[Properties] (camel-core) +
`properties:key` | The properties component is used for using property placeholders in endpoint uris.

| link:src/main/docs/ref-component.adoc[Ref] (camel-core) +
`ref:name` | The ref component is used for lookup of existing endpoints bound in the Registry.

| link:src/main/docs/rest-component.adoc[REST] (camel-core) +
`rest:method:path:uriTemplate` | The rest component is used for either hosting REST services (consumer) or calling external REST services (producer).

| link:src/main/docs/rest-api-component.adoc[REST API] (camel-core) +
`rest-api:path/contextIdPattern` | The rest-api component is used for providing Swagger API of the REST services which has been defined using the rest-dsl in Camel.

| link:src/main/docs/scheduler-component.adoc[Scheduler] (camel-core) +
`scheduler:name` | The scheduler component is used for generating message exchanges when a scheduler fires.

| link:src/main/docs/seda-component.adoc[SEDA] (camel-core) +
`seda:name` | The seda component provides asynchronous call to another endpoint from any CamelContext in the same JVM.

| link:src/main/docs/stub-component.adoc[Stub] (camel-core) +
`stub:name` | The stub component provides a simple way to stub out any physical endpoints while in development or testing.

| link:src/main/docs/test-component.adoc[Test] (camel-core) +
`test:name` | The test component extends the mock component by on startup to pull messages from another endpoint to set the expected message bodies.

| link:src/main/docs/timer-component.adoc[Timer] (camel-core) +
`timer:timerName` | The timer component is used for generating message exchanges when a timer fires.

| link:src/main/docs/validator-component.adoc[Validator] (camel-core) +
`validator:resourceUri` | Validates the payload of a message using XML Schema and JAXP Validation.

| link:src/main/docs/vm-component.adoc[VM] (camel-core) +
`vm:name` | The vm component provides asynchronous call to another endpoint from the same CamelContext.

| link:src/main/docs/xslt-component.adoc[XSLT] (camel-core) +
`xslt:resourceUri` | Transforms the message using a XSLT template.

|=======================================================================
// components: END






Data Formats
^^^^^^^^^^^^





// dataformats: START
[width="100%",cols="4,6",options="header"]
|=======================================================================
| Data Format | Description

| link:src/main/docs/gzip-dataformat.adoc[GZip] (camel-core) | GZip compression data format

| link:src/main/docs/serialization-dataformat.adoc[Java Object Serialization] (camel-core) | Java Object Serialization data format

| link:src/main/docs/string-dataformat.adoc[String Encoding] (camel-core) | String (text based) data format

| link:src/main/docs/zip-dataformat.adoc[Zip Deflate Compression] (camel-core) | Zip compression data format (not for zip files)
|=======================================================================
// dataformats: END







Expression Languages
^^^^^^^^^^^^^^^^^^^^





// languages: START
[width="100%",cols="4,6",options="header"]
|=======================================================================
| Language | Description

| link:src/main/docs/bean-language.adoc[Bean method] (camel-core) | For expressions and predicates using a java bean (aka method call)

| link:src/main/docs/constant-language.adoc[Constant] (camel-core) | For expressions and predicates using a constant

| link:src/main/docs/exchangeProperty-language.adoc[ExchangeProperty] (camel-core) | An expression which extracts the named exchange property

| link:src/main/docs/file-language.adoc[File] (camel-core) | For expressions and predicates using the file/simple language

| link:src/main/docs/header-language.adoc[Header] (camel-core) | An expression which extracts the named exchange header

| link:src/main/docs/ref-language.adoc[Ref] (camel-core) | For using a custom expression

| link:src/main/docs/simple-language.adoc[Simple] (camel-core) | For expressions and predicates using the simple language

| link:src/main/docs/tokenize-language.adoc[Tokenize] (camel-core) | For expressions and predicates using a body or header tokenizer

| link:src/main/docs/xtokenize-language.adoc[XML Tokenize] (camel-core) | For expressions and predicates using a body or header tokenizer

| link:src/main/docs/xpath-language.adoc[XPath] (camel-core) | For XPath expressions and predicates
|=======================================================================
// languages: END





