You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2015/09/25 11:12:33 UTC

[2/4] camel git commit: CAMEL-9157: JMX - Add explain to data format so we can know how exactly they are configured at runtime

CAMEL-9157: JMX - Add explain to data format so we can know how exactly they are configured at runtime


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a8bf17ed
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a8bf17ed
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a8bf17ed

Branch: refs/heads/master
Commit: a8bf17ed6fedd0c1fd03fb793874b321c55bcb8e
Parents: f652549
Author: Claus Ibsen <da...@apache.org>
Authored: Fri Sep 25 10:13:13 2015 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Fri Sep 25 10:13:13 2015 +0200

----------------------------------------------------------------------
 .../camel/dataformat/avro/AvroDataFormat.java   |  8 ++-
 .../dataformat/barcode/BarcodeDataFormat.java   |  8 ++-
 .../dataformat/base64/Base64DataFormat.java     |  8 ++-
 .../dataformat/beanio/BeanIODataFormat.java     |  8 ++-
 .../bindy/BindyAbstractDataFormat.java          |  8 ++-
 .../camel/component/boon/BoonDataFormat.java    |  8 ++-
 .../castor/AbstractCastorDataFormat.java        |  8 ++-
 .../converter/crypto/CryptoDataFormat.java      |  8 ++-
 .../crypto/PGPKeyAccessDataFormat.java          |  8 ++-
 .../camel/dataformat/csv/CsvDataFormat.java     |  8 ++-
 .../dataformat/flatpack/FlatpackDataFormat.java |  8 ++-
 .../camel/component/hl7/HL7DataFormat.java      |  8 ++-
 .../camel/component/ical/ICalDataFormat.java    | 53 +++++++++++---------
 .../camel/converter/jaxb/JaxbDataFormat.java    |  9 +++-
 .../camel/dataformat/jibx/JibxDataFormat.java   |  8 ++-
 .../dataformat/protobuf/ProtobufDataFormat.java |  8 ++-
 .../camel/dataformat/rss/RssDataFormat.java     | 17 ++++---
 .../dataformat/soap/SoapJaxbDataFormat.java     |  5 ++
 .../component/syslog/SyslogDataFormat.java      |  8 ++-
 .../tagsoup/TidyMarkupDataFormat.java           | 10 +++-
 .../dataformat/tarfile/TarFileDataFormat.java   | 16 ++++--
 .../univocity/AbstractUniVocityDataFormat.java  |  3 +-
 .../univocity/UniVocityCsvDataFormat.java       |  5 ++
 .../UniVocityFixedWidthDataFormat.java          |  5 ++
 .../univocity/UniVocityTsvDataFormat.java       |  5 ++
 .../converter/xmlbeans/XmlBeansDataFormat.java  | 11 ++--
 .../dataformat/xmljson/XmlJsonDataFormat.java   |  8 ++-
 .../dataformat/xmlrpc/XmlRpcDataFormat.java     |  8 ++-
 .../xmlsecurity/XMLSecurityDataFormat.java      | 10 +++-
 .../xstream/AbstractXStreamWrapper.java         |  3 +-
 .../dataformat/xstream/JsonDataFormat.java      |  8 ++-
 .../dataformat/xstream/XStreamDataFormat.java   |  7 ++-
 .../dataformat/zipfile/ZipFileDataFormat.java   | 18 +++++--
 33 files changed, 252 insertions(+), 69 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-avro/src/main/java/org/apache/camel/dataformat/avro/AvroDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-avro/src/main/java/org/apache/camel/dataformat/avro/AvroDataFormat.java b/components/camel-avro/src/main/java/org/apache/camel/dataformat/avro/AvroDataFormat.java
index 51ee131..9a03373 100644
--- a/components/camel-avro/src/main/java/org/apache/camel/dataformat/avro/AvroDataFormat.java
+++ b/components/camel-avro/src/main/java/org/apache/camel/dataformat/avro/AvroDataFormat.java
@@ -36,10 +36,11 @@ import org.apache.camel.CamelContextAware;
 import org.apache.camel.CamelException;
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ObjectHelper;
 
-public class AvroDataFormat extends ServiceSupport implements DataFormat, CamelContextAware {
+public class AvroDataFormat extends ServiceSupport implements DataFormat, DataFormatName, CamelContextAware {
 
     private static final String GENERIC_CONTAINER_CLASSNAME = GenericContainer.class.getName();
     private CamelContext camelContext;
@@ -54,6 +55,11 @@ public class AvroDataFormat extends ServiceSupport implements DataFormat, CamelC
         this.schema = schema;
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "avro";
+    }
+
     public CamelContext getCamelContext() {
         return camelContext;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-barcode/src/main/java/org/apache/camel/dataformat/barcode/BarcodeDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-barcode/src/main/java/org/apache/camel/dataformat/barcode/BarcodeDataFormat.java b/components/camel-barcode/src/main/java/org/apache/camel/dataformat/barcode/BarcodeDataFormat.java
index 0f6ea37..c062aa0 100644
--- a/components/camel-barcode/src/main/java/org/apache/camel/dataformat/barcode/BarcodeDataFormat.java
+++ b/components/camel-barcode/src/main/java/org/apache/camel/dataformat/barcode/BarcodeDataFormat.java
@@ -38,6 +38,7 @@ import com.google.zxing.datamatrix.encoder.SymbolShapeHint;
 import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ExchangeHelper;
 import org.slf4j.Logger;
@@ -50,7 +51,7 @@ import org.slf4j.LoggerFactory;
  * <p/>
  * https://github.com/zxing/zxing
  */
-public class BarcodeDataFormat extends ServiceSupport implements DataFormat {
+public class BarcodeDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
 
     /**
      * Logger.
@@ -137,6 +138,11 @@ public class BarcodeDataFormat extends ServiceSupport implements DataFormat {
         this.optimizeHints();
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "barcode";
+    }
+
     /**
      * Marshall a {@link String} payload to a code image.
      */

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-base64/src/main/java/org/apache/camel/dataformat/base64/Base64DataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-base64/src/main/java/org/apache/camel/dataformat/base64/Base64DataFormat.java b/components/camel-base64/src/main/java/org/apache/camel/dataformat/base64/Base64DataFormat.java
index 4b9ee75..61aefc5 100644
--- a/components/camel-base64/src/main/java/org/apache/camel/dataformat/base64/Base64DataFormat.java
+++ b/components/camel-base64/src/main/java/org/apache/camel/dataformat/base64/Base64DataFormat.java
@@ -21,6 +21,7 @@ import java.io.OutputStream;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ExchangeHelper;
 import org.apache.camel.util.IOHelper;
@@ -28,13 +29,18 @@ import org.apache.commons.codec.binary.Base64;
 import org.apache.commons.codec.binary.Base64InputStream;
 import org.apache.commons.codec.binary.Base64OutputStream;
 
-public class Base64DataFormat extends ServiceSupport implements DataFormat {
+public class Base64DataFormat extends ServiceSupport implements DataFormat, DataFormatName {
 
     private int lineLength = Base64.MIME_CHUNK_SIZE;
     private byte[] lineSeparator = {'\r', '\n'};
     private boolean urlSafe;
 
     @Override
+    public String getDataFormatName() {
+        return "base64";
+    }
+
+    @Override
     public void marshal(Exchange exchange, Object graph, OutputStream stream) throws Exception {
         if (urlSafe) {
             marshalUrlSafe(exchange, graph, stream);

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-beanio/src/main/java/org/apache/camel/dataformat/beanio/BeanIODataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-beanio/src/main/java/org/apache/camel/dataformat/beanio/BeanIODataFormat.java b/components/camel-beanio/src/main/java/org/apache/camel/dataformat/beanio/BeanIODataFormat.java
index 4b244ed..fb2ed4c 100644
--- a/components/camel-beanio/src/main/java/org/apache/camel/dataformat/beanio/BeanIODataFormat.java
+++ b/components/camel-beanio/src/main/java/org/apache/camel/dataformat/beanio/BeanIODataFormat.java
@@ -32,6 +32,7 @@ import org.apache.camel.CamelContext;
 import org.apache.camel.CamelContextAware;
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.IOHelper;
 import org.apache.camel.util.ObjectHelper;
@@ -50,7 +51,7 @@ import org.slf4j.LoggerFactory;
  * A <a href="http://camel.apache.org/data-format.html">data format</a> (
  * {@link DataFormat}) for beanio data.
  */
-public class BeanIODataFormat extends ServiceSupport implements DataFormat, CamelContextAware {
+public class BeanIODataFormat extends ServiceSupport implements DataFormat, DataFormatName, CamelContextAware {
 
     private static final String LOG_PREFIX = "BeanIO: ";
     private static final Logger LOG = LoggerFactory.getLogger(BeanIODataFormat.class);
@@ -74,6 +75,11 @@ public class BeanIODataFormat extends ServiceSupport implements DataFormat, Came
     }
 
     @Override
+    public String getDataFormatName() {
+        return "beanio";
+    }
+
+    @Override
     protected void doStart() throws Exception {
         ObjectHelper.notNull(streamName, "Stream name not configured.");
         if (factory == null) {

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyAbstractDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyAbstractDataFormat.java b/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyAbstractDataFormat.java
index b01e6d7..ebaada9 100644
--- a/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyAbstractDataFormat.java
+++ b/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyAbstractDataFormat.java
@@ -21,9 +21,10 @@ import java.util.List;
 import java.util.Map;
 
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 
-public abstract class BindyAbstractDataFormat extends ServiceSupport implements DataFormat {
+public abstract class BindyAbstractDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
     private String locale;
     private BindyAbstractFactory modelFactory;
     private Class<?> classType;
@@ -35,6 +36,11 @@ public abstract class BindyAbstractDataFormat extends ServiceSupport implements
         this.classType = classType;
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "bindy";
+    }
+
     public Class<?> getClassType() {
         return classType;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-boon/src/main/java/org/apache/camel/component/boon/BoonDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-boon/src/main/java/org/apache/camel/component/boon/BoonDataFormat.java b/components/camel-boon/src/main/java/org/apache/camel/component/boon/BoonDataFormat.java
index 24fbc42..09a5c10 100644
--- a/components/camel-boon/src/main/java/org/apache/camel/component/boon/BoonDataFormat.java
+++ b/components/camel-boon/src/main/java/org/apache/camel/component/boon/BoonDataFormat.java
@@ -26,6 +26,7 @@ import java.util.HashMap;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ChildServiceSupport;
 import org.apache.camel.util.IOHelper;
 import org.boon.json.JsonFactory;
@@ -37,7 +38,7 @@ import org.boon.json.ObjectMapper;
  * href="http://richardhightower.github.io/site/Boon/">Boon</a> to marshal to
  * and from JSON.
  */
-public class BoonDataFormat extends ChildServiceSupport implements DataFormat {
+public class BoonDataFormat extends ChildServiceSupport implements DataFormat, DataFormatName {
 
     private final ObjectMapper objectMapper;
     private Class<?> unmarshalType;
@@ -68,6 +69,11 @@ public class BoonDataFormat extends ChildServiceSupport implements DataFormat {
     }
 
     @Override
+    public String getDataFormatName() {
+        return "boon";
+    }
+
+    @Override
     public void marshal(Exchange exchange, Object graph, OutputStream stream) throws Exception {
         BufferedWriter writer = IOHelper.buffered(new OutputStreamWriter(stream, IOHelper.getCharsetName(exchange)));
         objectMapper.toJson(graph, writer);

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-castor/src/main/java/org/apache/camel/dataformat/castor/AbstractCastorDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-castor/src/main/java/org/apache/camel/dataformat/castor/AbstractCastorDataFormat.java b/components/camel-castor/src/main/java/org/apache/camel/dataformat/castor/AbstractCastorDataFormat.java
index 24cbcf2..dee44cc 100644
--- a/components/camel-castor/src/main/java/org/apache/camel/dataformat/castor/AbstractCastorDataFormat.java
+++ b/components/camel-castor/src/main/java/org/apache/camel/dataformat/castor/AbstractCastorDataFormat.java
@@ -28,6 +28,7 @@ import org.apache.camel.CamelContextAware;
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.ClassResolver;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ObjectHelper;
 import org.exolab.castor.mapping.Mapping;
@@ -41,7 +42,7 @@ import org.exolab.castor.xml.XMLContext;
  * interface which leverage the Castor library for XML marshaling and
  * unmarshaling
  */
-public abstract class AbstractCastorDataFormat extends ServiceSupport implements DataFormat, CamelContextAware {
+public abstract class AbstractCastorDataFormat extends ServiceSupport implements DataFormat, DataFormatName, CamelContextAware {
 
     /**
      * The default encoding used for stream access.
@@ -63,6 +64,11 @@ public abstract class AbstractCastorDataFormat extends ServiceSupport implements
         this.xmlContext = xmlContext;
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "castor";
+    }
+
     public void marshal(Exchange exchange, Object body, OutputStream outputStream) throws Exception {
         Writer writer = new OutputStreamWriter(outputStream, encoding);
 

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java b/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java
index dd1d2c4..e8c5178 100644
--- a/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java
+++ b/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java
@@ -35,6 +35,7 @@ import static javax.crypto.Cipher.ENCRYPT_MODE;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ExchangeHelper;
 import org.apache.camel.util.IOHelper;
@@ -68,7 +69,7 @@ import org.slf4j.LoggerFactory;
  * <li>http://en.wikipedia.org/wiki/HMAC</li>
  * </ul>
  */
-public class CryptoDataFormat extends ServiceSupport implements DataFormat {
+public class CryptoDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
 
     public static final String KEY = "CamelCryptoKey";
 
@@ -97,6 +98,11 @@ public class CryptoDataFormat extends ServiceSupport implements DataFormat {
         this.cryptoProvider = cryptoProvider;
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "crypto";
+    }
+
     private Cipher initializeCipher(int mode, Key key, byte[] iv) throws Exception {
         Cipher cipher = cryptoProvider == null ? Cipher.getInstance(algorithm) : Cipher.getInstance(algorithm, cryptoProvider);
 

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPKeyAccessDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPKeyAccessDataFormat.java b/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPKeyAccessDataFormat.java
index 0d521a8..c926a81 100644
--- a/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPKeyAccessDataFormat.java
+++ b/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/PGPKeyAccessDataFormat.java
@@ -33,6 +33,7 @@ import java.util.List;
 import org.apache.camel.Exchange;
 import org.apache.camel.converter.stream.CachedOutputStream;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ExchangeHelper;
 import org.apache.camel.util.IOHelper;
@@ -78,7 +79,7 @@ import org.slf4j.LoggerFactory;
  * array or file, then you should use the class {@link PGPDataFormat}.
  * 
  */
-public class PGPKeyAccessDataFormat extends ServiceSupport implements DataFormat {
+public class PGPKeyAccessDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
 
     private static final Logger log = LoggerFactory.getLogger(PGPKeyAccessDataFormat.class);
 
@@ -180,6 +181,11 @@ public class PGPKeyAccessDataFormat extends ServiceSupport implements DataFormat
     public PGPKeyAccessDataFormat() {
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "pgp";
+    }
+
     protected String findKeyUserid(Exchange exchange) {
         return exchange.getIn().getHeader(KEY_USERID, getKeyUserid(), String.class);
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java b/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java
index 3437a3f..53476d6 100644
--- a/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java
+++ b/components/camel-csv/src/main/java/org/apache/camel/dataformat/csv/CsvDataFormat.java
@@ -22,6 +22,7 @@ import java.util.Arrays;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.commons.csv.CSVFormat;
 import org.apache.commons.csv.QuoteMode;
@@ -35,7 +36,7 @@ import org.apache.commons.csv.QuoteMode;
  * Autogeneration can be disabled. In this case, only the fields defined in
  * csvConfig are written on the output.
  */
-public class CsvDataFormat extends ServiceSupport implements DataFormat {
+public class CsvDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
     // CSV format options
     private CSVFormat format = CSVFormat.DEFAULT;
     private boolean commentMarkerDisabled;
@@ -72,6 +73,11 @@ public class CsvDataFormat extends ServiceSupport implements DataFormat {
         setFormat(format);
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "csv";
+    }
+
     public void marshal(Exchange exchange, Object object, OutputStream outputStream) throws Exception {
         marshaller.marshal(exchange, object, outputStream);
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-flatpack/src/main/java/org/apache/camel/dataformat/flatpack/FlatpackDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-flatpack/src/main/java/org/apache/camel/dataformat/flatpack/FlatpackDataFormat.java b/components/camel-flatpack/src/main/java/org/apache/camel/dataformat/flatpack/FlatpackDataFormat.java
index a2bb9bc..941f819 100644
--- a/components/camel-flatpack/src/main/java/org/apache/camel/dataformat/flatpack/FlatpackDataFormat.java
+++ b/components/camel-flatpack/src/main/java/org/apache/camel/dataformat/flatpack/FlatpackDataFormat.java
@@ -36,6 +36,7 @@ import net.sf.flatpack.writer.Writer;
 import org.apache.camel.Exchange;
 import org.apache.camel.component.flatpack.DataSetList;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.IOHelper;
 import org.apache.camel.util.ObjectHelper;
@@ -56,7 +57,7 @@ import org.slf4j.LoggerFactory;
  *
  * @version 
  */
-public class FlatpackDataFormat extends ServiceSupport implements DataFormat {
+public class FlatpackDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
     private static final Logger LOG = LoggerFactory.getLogger(FlatpackDataFormat.class);
     private ParserFactory parserFactory = DefaultParserFactory.getInstance();
     private char delimiter = ',';
@@ -67,6 +68,11 @@ public class FlatpackDataFormat extends ServiceSupport implements DataFormat {
     private boolean ignoreExtraColumns;
     private String definition;
 
+    @Override
+    public String getDataFormatName() {
+        return "flatback";
+    }
+
     @SuppressWarnings("unchecked")
     public void marshal(Exchange exchange, Object graph, OutputStream stream) throws Exception {
         ObjectHelper.notNull(graph, "The object to marshal must be provided");

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java
index d56e7ea..378f4f6 100644
--- a/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java
+++ b/components/camel-hl7/src/main/java/org/apache/camel/component/hl7/HL7DataFormat.java
@@ -29,6 +29,7 @@ import ca.uhn.hl7v2.util.Terser;
 import ca.uhn.hl7v2.validation.impl.ValidationContextFactory;
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ExchangeHelper;
 import org.apache.camel.util.IOHelper;
@@ -70,7 +71,7 @@ import static org.apache.camel.component.hl7.HL7Constants.*;
  *
  * @see org.apache.camel.component.hl7.HL7MLLPCodec
  */
-public class HL7DataFormat extends ServiceSupport implements DataFormat {
+public class HL7DataFormat extends ServiceSupport implements DataFormat, DataFormatName {
 
     private static final Map<String, String> HEADER_MAP = new HashMap<String, String>();
 
@@ -93,6 +94,11 @@ public class HL7DataFormat extends ServiceSupport implements DataFormat {
         HEADER_MAP.put(HL7_CHARSET, "MSH-18");
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "hl7";
+    }
+
     public void marshal(Exchange exchange, Object body, OutputStream outputStream) throws Exception {
         Message message = ExchangeHelper.convertToMandatoryType(exchange, Message.class, body);
         String charsetName = HL7Charset.getCharsetName(message, exchange);

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-ical/src/main/java/org/apache/camel/component/ical/ICalDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-ical/src/main/java/org/apache/camel/component/ical/ICalDataFormat.java b/components/camel-ical/src/main/java/org/apache/camel/component/ical/ICalDataFormat.java
index 1db789b..eae6ff8 100644
--- a/components/camel-ical/src/main/java/org/apache/camel/component/ical/ICalDataFormat.java
+++ b/components/camel-ical/src/main/java/org/apache/camel/component/ical/ICalDataFormat.java
@@ -25,19 +25,43 @@ import net.fortuna.ical4j.model.Calendar;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 
 /**
  * Bridge ICal data format to camel world.
  */
-public class ICalDataFormat extends ServiceSupport implements DataFormat {
+public class ICalDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
 
-    /**
-     * Class responsible for writing out calendar instances.
-     */
     private CalendarOutputter outputer = new CalendarOutputter();
     private CalendarBuilder builder = new CalendarBuilder();
 
+    @Override
+    public String getDataFormatName() {
+        return "ical";
+    }
+
+    @Override
+    public void marshal(Exchange exchange, Object graph, OutputStream stream) throws Exception {
+        Calendar calendar = exchange.getContext().getTypeConverter().convertTo(Calendar.class, graph);
+        outputer.output(calendar, stream);
+    }
+
+    @Override
+    public Object unmarshal(Exchange exchange, InputStream stream) throws Exception {
+        return builder.build(stream);
+    }
+
+    @Override
+    protected void doStart() throws Exception {
+        // noop
+    }
+
+    @Override
+    protected void doStop() throws Exception {
+        // noop
+    }
+
     public void setValidating(boolean validate) {
         outputer.setValidating(validate);
     }
@@ -62,25 +86,4 @@ public class ICalDataFormat extends ServiceSupport implements DataFormat {
         this.builder = builder;
     }
 
-    @Override
-    public void marshal(Exchange exchange, Object graph, OutputStream stream) throws Exception {
-        Calendar calendar = exchange.getContext().getTypeConverter().convertTo(Calendar.class, graph);
-        outputer.output(calendar, stream);
-    }
-
-    @Override
-    public Object unmarshal(Exchange exchange, InputStream stream) throws Exception {
-        return builder.build(stream);
-    }
-
-    @Override
-    protected void doStart() throws Exception {
-        // noop
-    }
-
-    @Override
-    protected void doStop() throws Exception {
-        // noop
-    }
-
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java b/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
index 68593eb..dc5090e 100644
--- a/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
+++ b/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
@@ -44,6 +44,8 @@ import javax.xml.transform.Source;
 import javax.xml.transform.stream.StreamSource;
 import javax.xml.validation.Schema;
 import javax.xml.validation.SchemaFactory;
+
+import org.apache.camel.spi.DataFormatName;
 import org.xml.sax.SAXException;
 
 import org.apache.camel.CamelContext;
@@ -68,7 +70,7 @@ import org.slf4j.LoggerFactory;
  *
  * @version
  */
-public class JaxbDataFormat extends ServiceSupport implements DataFormat, CamelContextAware {
+public class JaxbDataFormat extends ServiceSupport implements DataFormat, DataFormatName, CamelContextAware {
 
     private static final Logger LOG = LoggerFactory.getLogger(JaxbDataFormat.class);
     private static final BlockingQueue<SchemaFactory> SCHEMA_FACTORY_POOL = new LinkedBlockingQueue<SchemaFactory>();
@@ -109,6 +111,11 @@ public class JaxbDataFormat extends ServiceSupport implements DataFormat, CamelC
         this.contextPath = contextPath;
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "jaxb";
+    }
+
     public void marshal(Exchange exchange, Object graph, OutputStream stream) throws IOException, SAXException {
         try {
             // must create a new instance of marshaller as its not thread safe

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-jibx/src/main/java/org/apache/camel/dataformat/jibx/JibxDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-jibx/src/main/java/org/apache/camel/dataformat/jibx/JibxDataFormat.java b/components/camel-jibx/src/main/java/org/apache/camel/dataformat/jibx/JibxDataFormat.java
index 2727a89..6d9d519 100644
--- a/components/camel-jibx/src/main/java/org/apache/camel/dataformat/jibx/JibxDataFormat.java
+++ b/components/camel-jibx/src/main/java/org/apache/camel/dataformat/jibx/JibxDataFormat.java
@@ -21,6 +21,7 @@ import java.io.OutputStream;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ObjectHelper;
 import org.jibx.runtime.BindingDirectory;
@@ -29,7 +30,7 @@ import org.jibx.runtime.IMarshallingContext;
 import org.jibx.runtime.IUnmarshallingContext;
 import org.jibx.runtime.JiBXException;
 
-public class JibxDataFormat extends ServiceSupport implements DataFormat {
+public class JibxDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
     private Class<?> unmarshallClass;
     private String bindingName;
 
@@ -45,6 +46,11 @@ public class JibxDataFormat extends ServiceSupport implements DataFormat {
         this.setBindingName(bindingName);
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "jibx";
+    }
+
     public void marshal(Exchange exchange, Object body, OutputStream stream) throws Exception {
         IBindingFactory bindingFactory = createBindingFactory(body.getClass(), bindingName);
         IMarshallingContext marshallingContext = bindingFactory.createMarshallingContext();

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-protobuf/src/main/java/org/apache/camel/dataformat/protobuf/ProtobufDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-protobuf/src/main/java/org/apache/camel/dataformat/protobuf/ProtobufDataFormat.java b/components/camel-protobuf/src/main/java/org/apache/camel/dataformat/protobuf/ProtobufDataFormat.java
index 446edfc..485ad8c 100755
--- a/components/camel-protobuf/src/main/java/org/apache/camel/dataformat/protobuf/ProtobufDataFormat.java
+++ b/components/camel-protobuf/src/main/java/org/apache/camel/dataformat/protobuf/ProtobufDataFormat.java
@@ -28,10 +28,11 @@ import org.apache.camel.CamelException;
 import org.apache.camel.Exchange;
 import org.apache.camel.InvalidPayloadException;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ObjectHelper;
 
-public class ProtobufDataFormat extends ServiceSupport implements DataFormat, CamelContextAware {
+public class ProtobufDataFormat extends ServiceSupport implements DataFormat, DataFormatName, CamelContextAware {
 
     private CamelContext camelContext;
     private Message defaultInstance;
@@ -44,6 +45,11 @@ public class ProtobufDataFormat extends ServiceSupport implements DataFormat, Ca
         this.defaultInstance = defaultInstance;
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "protobuf";
+    }
+
     public CamelContext getCamelContext() {
         return camelContext;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-rss/src/main/java/org/apache/camel/dataformat/rss/RssDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-rss/src/main/java/org/apache/camel/dataformat/rss/RssDataFormat.java b/components/camel-rss/src/main/java/org/apache/camel/dataformat/rss/RssDataFormat.java
index f74666e..8808d38 100644
--- a/components/camel-rss/src/main/java/org/apache/camel/dataformat/rss/RssDataFormat.java
+++ b/components/camel-rss/src/main/java/org/apache/camel/dataformat/rss/RssDataFormat.java
@@ -22,10 +22,9 @@ import java.io.OutputStream;
 import com.sun.syndication.feed.synd.SyndFeed;
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ExchangeHelper;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 /**
  * RSS DataFormat
@@ -39,12 +38,16 @@ import org.slf4j.LoggerFactory;
  * Uses <a href="https://rome.dev.java.net/">ROME</a> for RSS parsing.
  * <p/>
  */
-public class RssDataFormat extends ServiceSupport implements DataFormat {
-    protected static final Logger LOG = LoggerFactory.getLogger(RssDataFormat.class);
-    
+public class RssDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
+
+    @Override
+    public String getDataFormatName() {
+        return "rss";
+    }
+
     public void marshal(Exchange exchange, Object body, OutputStream out) throws Exception {
-        SyndFeed feed = ExchangeHelper.convertToMandatoryType(exchange, SyndFeed.class, body);        
-        String xml = RssConverter.feedToXml(feed);            
+        SyndFeed feed = ExchangeHelper.convertToMandatoryType(exchange, SyndFeed.class, body);
+        String xml = RssConverter.feedToXml(feed);
         out.write(xml.getBytes());
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-soap/src/main/java/org/apache/camel/dataformat/soap/SoapJaxbDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-soap/src/main/java/org/apache/camel/dataformat/soap/SoapJaxbDataFormat.java b/components/camel-soap/src/main/java/org/apache/camel/dataformat/soap/SoapJaxbDataFormat.java
index cdc3a5e..c4581d5 100644
--- a/components/camel-soap/src/main/java/org/apache/camel/dataformat/soap/SoapJaxbDataFormat.java
+++ b/components/camel-soap/src/main/java/org/apache/camel/dataformat/soap/SoapJaxbDataFormat.java
@@ -92,6 +92,11 @@ public class SoapJaxbDataFormat extends JaxbDataFormat {
     }
 
     @Override
+    public String getDataFormatName() {
+        return "soapjaxb";
+    }
+
+    @Override
     protected void doStart() throws Exception {
         if ("1.2".equals(version)) {
             LOG.debug("Using SOAP 1.2 adapter");

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-syslog/src/main/java/org/apache/camel/component/syslog/SyslogDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-syslog/src/main/java/org/apache/camel/component/syslog/SyslogDataFormat.java b/components/camel-syslog/src/main/java/org/apache/camel/component/syslog/SyslogDataFormat.java
index 84860cb..c85275f 100644
--- a/components/camel-syslog/src/main/java/org/apache/camel/component/syslog/SyslogDataFormat.java
+++ b/components/camel-syslog/src/main/java/org/apache/camel/component/syslog/SyslogDataFormat.java
@@ -22,10 +22,16 @@ import java.util.Date;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ExchangeHelper;
 
-public class SyslogDataFormat extends ServiceSupport implements DataFormat {
+public class SyslogDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
+
+    @Override
+    public String getDataFormatName() {
+        return "syslog";
+    }
 
     @Override
     public void marshal(Exchange exchange, Object body, OutputStream stream) throws Exception {

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-tagsoup/src/main/java/org/apache/camel/dataformat/tagsoup/TidyMarkupDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-tagsoup/src/main/java/org/apache/camel/dataformat/tagsoup/TidyMarkupDataFormat.java b/components/camel-tagsoup/src/main/java/org/apache/camel/dataformat/tagsoup/TidyMarkupDataFormat.java
index e5a8250..69eeb7d 100644
--- a/components/camel-tagsoup/src/main/java/org/apache/camel/dataformat/tagsoup/TidyMarkupDataFormat.java
+++ b/components/camel-tagsoup/src/main/java/org/apache/camel/dataformat/tagsoup/TidyMarkupDataFormat.java
@@ -28,7 +28,6 @@ import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.dom.DOMResult;
 import javax.xml.transform.sax.SAXSource;
 
-import org.apache.camel.support.ServiceSupport;
 import org.w3c.dom.Node;
 
 import org.xml.sax.ContentHandler;
@@ -38,6 +37,8 @@ import org.xml.sax.XMLReader;
 import org.apache.camel.CamelException;
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
+import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ObjectHelper;
 import org.ccil.cowan.tagsoup.HTMLSchema;
 import org.ccil.cowan.tagsoup.Parser;
@@ -53,7 +54,7 @@ import org.slf4j.LoggerFactory;
  * xpath'ed on.
  * 
  */
-public class TidyMarkupDataFormat extends ServiceSupport implements DataFormat {
+public class TidyMarkupDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
 
     /*
      * Our Logger
@@ -104,6 +105,11 @@ public class TidyMarkupDataFormat extends ServiceSupport implements DataFormat {
      */
     private Map<String, Object> parserPropeties;
 
+    @Override
+    public String getDataFormatName() {
+        return "tidyMarkup";
+    }
+
     /**
      * Unsupported operation. We cannot create ugly HTML.
      */

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-tarfile/src/main/java/org/apache/camel/dataformat/tarfile/TarFileDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-tarfile/src/main/java/org/apache/camel/dataformat/tarfile/TarFileDataFormat.java b/components/camel-tarfile/src/main/java/org/apache/camel/dataformat/tarfile/TarFileDataFormat.java
index d994cf2..e195699 100644
--- a/components/camel-tarfile/src/main/java/org/apache/camel/dataformat/tarfile/TarFileDataFormat.java
+++ b/components/camel-tarfile/src/main/java/org/apache/camel/dataformat/tarfile/TarFileDataFormat.java
@@ -24,6 +24,7 @@ import java.io.OutputStream;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.IOHelper;
 import org.apache.camel.util.StringHelper;
@@ -39,11 +40,12 @@ import static org.apache.camel.Exchange.FILE_NAME;
  * Tar file data format.
  * Based on ZipFileDataFormat from camel-zipfile component
  */
-public class TarFileDataFormat extends ServiceSupport implements DataFormat {
+public class TarFileDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
     private boolean usingIterator;
 
-    public void setUsingIterator(boolean usingIterator) {
-        this.usingIterator = usingIterator;
+    @Override
+    public String getDataFormatName() {
+        return "tarfile";
     }
 
     @Override
@@ -110,6 +112,14 @@ public class TarFileDataFormat extends ServiceSupport implements DataFormat {
         }
     }
 
+    public boolean isUsingIterator() {
+        return usingIterator;
+    }
+
+    public void setUsingIterator(boolean usingIterator) {
+        this.usingIterator = usingIterator;
+    }
+
     @Override
     protected void doStart() throws Exception {
         // noop

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/AbstractUniVocityDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/AbstractUniVocityDataFormat.java b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/AbstractUniVocityDataFormat.java
index f459377..39faf37 100644
--- a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/AbstractUniVocityDataFormat.java
+++ b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/AbstractUniVocityDataFormat.java
@@ -31,6 +31,7 @@ import com.univocity.parsers.common.CommonWriterSettings;
 import com.univocity.parsers.common.Format;
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 
 import static org.apache.camel.util.IOHelper.getCharsetName;
@@ -50,7 +51,7 @@ import static org.apache.camel.util.IOHelper.getCharsetName;
  */
 public abstract class AbstractUniVocityDataFormat<F extends Format, CWS extends CommonWriterSettings<F>,
         W extends AbstractWriter<CWS>, CPS extends CommonParserSettings<F>, P extends AbstractParser<CPS>, DF extends AbstractUniVocityDataFormat<F, CWS, W, CPS, P, DF>>
-        extends ServiceSupport implements DataFormat {
+        extends ServiceSupport implements DataFormat, DataFormatName {
     protected String nullValue;
     protected Boolean skipEmptyLines;
     protected Boolean ignoreTrailingWhitespaces;

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityCsvDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityCsvDataFormat.java b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityCsvDataFormat.java
index 8e39cfb..99a8da9 100644
--- a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityCsvDataFormat.java
+++ b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityCsvDataFormat.java
@@ -206,4 +206,9 @@ public class UniVocityCsvDataFormat extends AbstractUniVocityDataFormat<CsvForma
             format.setDelimiter(delimiter);
         }
     }
+
+    @Override
+    public String getDataFormatName() {
+        return "univocity-csv";
+    }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityFixedWidthDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityFixedWidthDataFormat.java b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityFixedWidthDataFormat.java
index 6458849..f9b125d 100644
--- a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityFixedWidthDataFormat.java
+++ b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityFixedWidthDataFormat.java
@@ -216,4 +216,9 @@ public class UniVocityFixedWidthDataFormat extends AbstractUniVocityDataFormat<F
         }
         return new FixedWidthFieldLengths(fields);
     }
+
+    @Override
+    public String getDataFormatName() {
+        return "univocity-fixed";
+    }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityTsvDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityTsvDataFormat.java b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityTsvDataFormat.java
index b7f8eaa..2e980fd 100644
--- a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityTsvDataFormat.java
+++ b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/UniVocityTsvDataFormat.java
@@ -98,4 +98,9 @@ public class UniVocityTsvDataFormat extends AbstractUniVocityDataFormat<TsvForma
             format.setEscapeChar(escapeChar);
         }
     }
+
+    @Override
+    public String getDataFormatName() {
+        return "univocity-tsv";
+    }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-xmlbeans/src/main/java/org/apache/camel/converter/xmlbeans/XmlBeansDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-xmlbeans/src/main/java/org/apache/camel/converter/xmlbeans/XmlBeansDataFormat.java b/components/camel-xmlbeans/src/main/java/org/apache/camel/converter/xmlbeans/XmlBeansDataFormat.java
index a357fc5..8e0be84 100644
--- a/components/camel-xmlbeans/src/main/java/org/apache/camel/converter/xmlbeans/XmlBeansDataFormat.java
+++ b/components/camel-xmlbeans/src/main/java/org/apache/camel/converter/xmlbeans/XmlBeansDataFormat.java
@@ -22,6 +22,7 @@ import java.util.concurrent.Callable;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ExchangeHelper;
 import org.apache.camel.util.ObjectHelper;
@@ -31,7 +32,12 @@ import org.apache.xmlbeans.XmlObject;
  * A <a href="http://camel.apache.org/data-format.html">data format</a>
  * ({@link DataFormat}) using XmlBeans to marshal to and from XML
  */
-public class XmlBeansDataFormat extends ServiceSupport implements DataFormat {
+public class XmlBeansDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
+
+    @Override
+    public String getDataFormatName() {
+        return "xmlBeans";
+    }
 
     public void marshal(final Exchange exchange, final Object body, final OutputStream stream) throws Exception {
         ObjectHelper.callWithTCCL(new Callable<Void>() {
@@ -42,7 +48,7 @@ public class XmlBeansDataFormat extends ServiceSupport implements DataFormat {
                 return null;
             }
         }, exchange);
-        
+
     }
 
     public Object unmarshal(final Exchange exchange, final InputStream stream) throws Exception {
@@ -63,5 +69,4 @@ public class XmlBeansDataFormat extends ServiceSupport implements DataFormat {
     protected void doStop() throws Exception {
         // noop
     }
-
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java b/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java
index 81d9420..be34928 100644
--- a/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java
+++ b/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/XmlJsonDataFormat.java
@@ -30,6 +30,7 @@ import net.sf.json.JSONSerializer;
 import net.sf.json.xml.XMLSerializer;
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.IOHelper;
 
@@ -38,7 +39,7 @@ import org.apache.camel.util.IOHelper;
  * <a href="http://json-lib.sourceforge.net/">json-lib</a> to convert between XML
  * and JSON directly.
  */
-public class XmlJsonDataFormat extends ServiceSupport implements DataFormat {
+public class XmlJsonDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
 
     private XMLSerializer serializer;
 
@@ -60,6 +61,11 @@ public class XmlJsonDataFormat extends ServiceSupport implements DataFormat {
     }
 
     @Override
+    public String getDataFormatName() {
+        return "xmljson";
+    }
+
+    @Override
     protected void doStart() throws Exception {
         serializer = new XMLSerializer();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/XmlRpcDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/XmlRpcDataFormat.java b/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/XmlRpcDataFormat.java
index 1e2be5a..cd90a0d 100644
--- a/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/XmlRpcDataFormat.java
+++ b/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/XmlRpcDataFormat.java
@@ -23,6 +23,7 @@ import java.io.OutputStream;
 import java.io.OutputStreamWriter;
 import java.io.UnsupportedEncodingException;
 
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.xml.sax.InputSource;
 import org.xml.sax.SAXException;
@@ -46,7 +47,7 @@ import org.apache.xmlrpc.parser.XmlRpcRequestParser;
 import org.apache.xmlrpc.parser.XmlRpcResponseParser;
 import org.apache.xmlrpc.util.SAXParsers;
 
-public class XmlRpcDataFormat extends ServiceSupport implements DataFormat {
+public class XmlRpcDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
     private XmlRpcStreamRequestConfig xmlRpcStreamRequestConfig = new XmlRpcHttpRequestConfigImpl();
     private TypeFactory typeFactory = new TypeFactoryImpl(null);
     private boolean isRequest;
@@ -66,6 +67,11 @@ public class XmlRpcDataFormat extends ServiceSupport implements DataFormat {
     }
 
     @Override
+    public String getDataFormatName() {
+        return "xmlrpc";
+    }
+
+    @Override
     public void marshal(Exchange exchange, Object graph, OutputStream stream) throws Exception {
         // need to check the object type
         XMLWriter control = getXMLWriter(exchange, stream);

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java b/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java
index b7eed69..25da8f4 100755
--- a/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java
+++ b/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java
@@ -40,6 +40,7 @@ import javax.crypto.spec.DESedeKeySpec;
 import javax.crypto.spec.SecretKeySpec;
 import javax.xml.transform.dom.DOMSource;
 
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
@@ -66,7 +67,7 @@ import org.slf4j.LoggerFactory;
 
 
 
-public class XMLSecurityDataFormat extends ServiceSupport implements DataFormat, CamelContextAware {
+public class XMLSecurityDataFormat extends ServiceSupport implements DataFormat, DataFormatName, CamelContextAware {
 
     /**
      * @deprecated  Use {@link #XMLSecurityDataFormat(String, Map, boolean, String, String, String, KeyStoreParameters)} instead.
@@ -363,7 +364,12 @@ public class XMLSecurityDataFormat extends ServiceSupport implements DataFormat,
         this.setKeyPassword(keyPassword);
         this.setDigestAlgorithm(digestAlgorithm);
     }
-    
+
+    @Override
+    public String getDataFormatName() {
+        return "secureXML";
+    }
+
     @Override
     public void setCamelContext(CamelContext camelContext) {
         this.camelContext = camelContext;

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/AbstractXStreamWrapper.java
----------------------------------------------------------------------
diff --git a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/AbstractXStreamWrapper.java b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/AbstractXStreamWrapper.java
index 8b51a4b..b98725e 100644
--- a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/AbstractXStreamWrapper.java
+++ b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/AbstractXStreamWrapper.java
@@ -38,6 +38,7 @@ import org.apache.camel.Exchange;
 import org.apache.camel.converter.jaxp.StaxConverter;
 import org.apache.camel.spi.ClassResolver;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.ObjectHelper;
 
@@ -45,7 +46,7 @@ import org.apache.camel.util.ObjectHelper;
  * An abstract class which implement <a href="http://camel.apache.org/data-format.html">data format</a>
  * ({@link DataFormat}) interface which leverage the XStream library for XML or JSON's marshaling and unmarshaling
  */
-public abstract class AbstractXStreamWrapper extends ServiceSupport implements DataFormat {
+public abstract class AbstractXStreamWrapper extends ServiceSupport implements DataFormat, DataFormatName {
 
     private XStream xstream;
     private HierarchicalStreamDriver xstreamDriver;

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/JsonDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/JsonDataFormat.java b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/JsonDataFormat.java
index bbf96b7..2819718 100644
--- a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/JsonDataFormat.java
+++ b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/JsonDataFormat.java
@@ -40,11 +40,10 @@ import org.codehaus.jettison.mapped.MappedXMLOutputFactory;
 
 /**
  * A <a href="http://camel.apache.org/data-format.html">data format</a>
- * ({@link DataFormat}) using XStream and Jettison to marshal to and from JSON
+ * ({@link org.apache.camel.spi.DataFormat}) using XStream and Jettison to marshal to and from JSON
  *
  * @version
  */
-
 public class JsonDataFormat extends AbstractXStreamWrapper {
     private final MappedXMLOutputFactory mof;
     private final MappedXMLInputFactory mif;
@@ -56,6 +55,11 @@ public class JsonDataFormat extends AbstractXStreamWrapper {
         mif = new MappedXMLInputFactory(nstjsons);
     }
 
+    @Override
+    public String getDataFormatName() {
+        return "json";
+    }
+
     public boolean isPrettyPrint() {
         return prettyPrint;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java
index ca8a945..84169dc 100644
--- a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java
+++ b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java
@@ -50,7 +50,12 @@ public class XStreamDataFormat extends AbstractXStreamWrapper  {
     public XStreamDataFormat(XStream xstream) {
         super(xstream);
     }
-    
+
+    @Override
+    public String getDataFormatName() {
+        return "xstream";
+    }
+
     public void setEncoding(String encoding) {
         this.encoding = encoding;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/a8bf17ed/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
----------------------------------------------------------------------
diff --git a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
index 4427650..1dd79e7 100644
--- a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
+++ b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
@@ -26,6 +26,7 @@ import java.util.zip.ZipOutputStream;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.spi.DataFormat;
+import org.apache.camel.spi.DataFormatName;
 import org.apache.camel.support.ServiceSupport;
 import org.apache.camel.util.IOHelper;
 import org.apache.camel.util.StringHelper;
@@ -36,11 +37,12 @@ import static org.apache.camel.Exchange.FILE_NAME;
  * Zip file data format.
  * See {@link org.apache.camel.model.dataformat.ZipDataFormat} for "deflate" compression.
  */
-public class ZipFileDataFormat extends ServiceSupport implements DataFormat {
+public class ZipFileDataFormat extends ServiceSupport implements DataFormat, DataFormatName {
     private boolean usingIterator;
-    
-    public void setUsingIterator(boolean usingIterator) {
-        this.usingIterator = usingIterator;
+
+    @Override
+    public String getDataFormatName() {
+        return "zipFile";
     }
 
     @Override
@@ -98,6 +100,14 @@ public class ZipFileDataFormat extends ServiceSupport implements DataFormat {
         }
     }
 
+    public boolean isUsingIterator() {
+        return usingIterator;
+    }
+
+    public void setUsingIterator(boolean usingIterator) {
+        this.usingIterator = usingIterator;
+    }
+
     @Override
     protected void doStart() throws Exception {
         // noop