Camel binding support in SwitchYard allows Camel components to be used as gateway bindings for services and references within an application.
Every camel component binding supported by SwitchYard has it's own configuration namespace. However, there is a small exception. Bindings for direct, seda, timer and mock share same namespace urn:switchyard-component-camel-core:config:1.0.
Composite-level services can be bound to a Camel component using the <binding.uri> binding definition. The following configuration options are available for binding.uri:
- configURI : contains the Camel endpoint URI used to configure a Camel component instance
- operationSelector : specification of the operation to use for the message exchange. See Operation Selector for more details. This setting is not used for cxfrs configurations.
binding.uri is not linked with any specific component. It allows usage of 3rd party camel components which are not part of distribution.
Here's an example of what a service binding looks like using a Camel component.
Binding a reference with Camel is very similar to binding a service. The only significant difference is that specification of the operationSelector is not required on reference bindings. Logically reference elements points to outgoing communication eg. service called by Switchyard.