[CONF] Apache Camel: Bindy (page edited)

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[CONF] Apache Camel: Bindy (page edited)

Dhiraj Bokde (Confluence)

Bindy has been edited by Charles Moulliard (Feb 05, 2009).

(View changes)

Content:

Bindy

Available as of Camel 2.0

The idea that the developers have followed to design this component was to allow the binding of non structured data (or to be more precise non-XML data)
to Java Bean using annotations. Using Bindy, you can bind data like :

  • CSV record,
  • Fixedlength record,
  • or any other non-structured data

to one or many POJOS and to convert the data according to the type of the java property. Moreover, for data type like Date, Double, Float, Integer, Short and Long, you can provide the pattern to apply.

Remark : This first release only support binding of CSV record

Bindy is a Data Format which uses ...

Using the Java DSL

For example the following uses a named DataFormat of bindy which is configured with a number of Java package names to initialize the model objects.

DataFormat bindy = new CsvBindyDataFormat("com.acme.model");

from("file://inbox").
  unmarshal(bindy).
  to("bean:handleOrder");

You can if you prefer use a named reference to a data format which can then be defined in your Registry such as via your Spring XML file. e.g.

from("file://inbox").
  unmarshal("myBindyDataFormat").
  to("bean:handleOrder");

Using Spring XML

TODO:

Dependencies

To use Bindy in your camel routes you need to add the a dependency on camel-bindy which implements this data format.

If you use maven you could just add the following to your pom.xml, substituting the version number for the latest & greatest release (see the download page for the latest versions).

<dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-bindy</artifactId>
  <version>2.0.0</version>
</dependency>