You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by js...@apache.org on 2007/11/14 19:13:48 UTC
svn commit: r594998 - in /activemq/camel/trunk/camel-core/src/main:
java/org/apache/camel/impl/ java/org/apache/camel/model/
java/org/apache/camel/model/dataformat/
resources/org/apache/camel/model/dataformat/
Author: jstrachan
Date: Wed Nov 14 10:13:47 2007
New Revision: 594998
URL: http://svn.apache.org/viewvc?rev=594998&view=rev
Log:
added a new string based data format for http://issues.apache.org/activemq/browse/CAMEL-219
Added:
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/StringDataFormat.java
- copied, changed from r594497, activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/SerializationDataFormat.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/StringDataFormat.java
- copied, changed from r594497, activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/SerializationDataFormat.java
Modified:
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/MarshalType.java
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/UnmarshalType.java
activemq/camel/trunk/camel-core/src/main/resources/org/apache/camel/model/dataformat/jaxb.index
Copied: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/StringDataFormat.java (from r594497, activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/SerializationDataFormat.java)
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/StringDataFormat.java?p2=activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/StringDataFormat.java&p1=activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/SerializationDataFormat.java&r1=594497&r2=594998&rev=594998&view=diff
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/SerializationDataFormat.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/StringDataFormat.java Wed Nov 14 10:13:47 2007
@@ -19,13 +19,14 @@
import java.io.IOException;
import java.io.InputStream;
-import java.io.ObjectInput;
-import java.io.ObjectOutput;
import java.io.OutputStream;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
import org.apache.camel.Exchange;
import org.apache.camel.converter.IOConverter;
import org.apache.camel.spi.DataFormat;
+import org.apache.camel.util.ExchangeHelper;
/**
* The <a href="http://activemq.apache.org/camel/data-format.html">data format</a>
@@ -33,15 +34,15 @@
*
* @version $Revision: 1.1 $
*/
-public class SerializationDataFormat implements DataFormat {
+public class StringDataFormat implements DataFormat {
public void marshal(Exchange exchange, Object graph, OutputStream stream) throws IOException {
- ObjectOutput out = IOConverter.toObjectOutput(stream);
- out.writeObject(graph);
+ String text = ExchangeHelper.convertToType(exchange, String.class, graph);
+ Writer out = new OutputStreamWriter(stream);
+ out.write(text);
out.flush();
}
public Object unmarshal(Exchange exchange, InputStream stream) throws IOException, ClassNotFoundException {
- ObjectInput in = IOConverter.toObjectInput(stream);
- return in.readObject();
+ return IOConverter.toString(stream);
}
-}
+}
\ No newline at end of file
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/MarshalType.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/MarshalType.java?rev=594998&r1=594997&r2=594998&view=diff
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/MarshalType.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/MarshalType.java Wed Nov 14 10:13:47 2007
@@ -29,10 +29,10 @@
import org.apache.camel.model.dataformat.DataFormatType;
import org.apache.camel.model.dataformat.JaxbDataFormat;
import org.apache.camel.model.dataformat.SerializationDataFormat;
+import org.apache.camel.model.dataformat.StringDataFormat;
import org.apache.camel.model.dataformat.XMLBeansDataFormat;
import org.apache.camel.processor.MarshalProcessor;
import org.apache.camel.spi.DataFormat;
-import static org.apache.camel.util.ObjectHelper.notNull;
/**
* Marshals to a binary payload using the given {@link DataFormatType}
@@ -50,6 +50,7 @@
@XmlElement(required = false, name = "artixDS", type = ArtixDSDataFormat.class),
@XmlElement(required = false, name = "jaxb", type = JaxbDataFormat.class),
@XmlElement(required = false, name = "serialization", type = SerializationDataFormat.class),
+ @XmlElement(required = false, name = "string", type = StringDataFormat.class),
@XmlElement(required = false, name = "xmlBeans", type = XMLBeansDataFormat.class)}
)
private DataFormatType dataFormatType;
Modified: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/UnmarshalType.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/UnmarshalType.java?rev=594998&r1=594997&r2=594998&view=diff
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/UnmarshalType.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/UnmarshalType.java Wed Nov 14 10:13:47 2007
@@ -30,6 +30,7 @@
import org.apache.camel.model.dataformat.JaxbDataFormat;
import org.apache.camel.model.dataformat.SerializationDataFormat;
import org.apache.camel.model.dataformat.XMLBeansDataFormat;
+import org.apache.camel.model.dataformat.StringDataFormat;
import org.apache.camel.processor.UnmarshalProcessor;
import org.apache.camel.spi.DataFormat;
@@ -49,6 +50,7 @@
@XmlElement(required = false, name = "artixDS", type = ArtixDSDataFormat.class),
@XmlElement(required = false, name = "jaxb", type = JaxbDataFormat.class),
@XmlElement(required = false, name = "serialization", type = SerializationDataFormat.class),
+ @XmlElement(required = false, name = "string", type = StringDataFormat.class),
@XmlElement(required = false, name = "xmlBeans", type = XMLBeansDataFormat.class)}
)
private DataFormatType dataFormatType;
Copied: activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/StringDataFormat.java (from r594497, activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/SerializationDataFormat.java)
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/StringDataFormat.java?p2=activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/StringDataFormat.java&p1=activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/SerializationDataFormat.java&r1=594497&r2=594998&rev=594998&view=diff
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/SerializationDataFormat.java (original)
+++ activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/StringDataFormat.java Wed Nov 14 10:13:47 2007
@@ -23,14 +23,14 @@
import org.apache.camel.impl.RouteContext;
/**
- * Represents the Java Serialization {@link DataFormat}
+ * Represents the String (text based) {@link DataFormat}
*
* @version $Revision: 1.1 $
*/
-@XmlRootElement(name = "serialization")
-public class SerializationDataFormat extends DataFormatType {
+@XmlRootElement(name = "string")
+public class StringDataFormat extends DataFormatType {
@Override
protected DataFormat createDataFormat(RouteContext routeContext) {
- return new org.apache.camel.impl.SerializationDataFormat();
+ return new org.apache.camel.impl.StringDataFormat();
}
-}
+}
\ No newline at end of file
Modified: activemq/camel/trunk/camel-core/src/main/resources/org/apache/camel/model/dataformat/jaxb.index
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/resources/org/apache/camel/model/dataformat/jaxb.index?rev=594998&r1=594997&r2=594998&view=diff
==============================================================================
--- activemq/camel/trunk/camel-core/src/main/resources/org/apache/camel/model/dataformat/jaxb.index (original)
+++ activemq/camel/trunk/camel-core/src/main/resources/org/apache/camel/model/dataformat/jaxb.index Wed Nov 14 10:13:47 2007
@@ -19,5 +19,6 @@
DataFormatType
JaxbDataFormat
SerializationDataFormat
+StringDataFormat
XMLBeansDataFormat
XStreamDataFormat