Author: ningjiang
Date: Wed Nov 5 23:59:26 2008
New Revision: 711786
URL: http://svn.apache.org/viewvc?rev=711786&view=rev
Log:
Merged revisions 711784 via svnmerge from
https://svn.apache.org/repos/asf/activemq/camel/trunk
........
r711784 | ningjiang | 2008-11-06 15:48:14 +0800 (Thu, 06 Nov 2008) | 1 line
CAMEL-822 added JSON data format support
........
Added:
activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java
- copied unchanged from r711784,
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java
activemq/camel/branches/camel-1.x/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/AbstractXStreamWrapper.java
- copied unchanged from r711784,
activemq/camel/trunk/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/AbstractXStreamWrapper.java
activemq/camel/branches/camel-1.x/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/JsonDataFormat.java
- copied unchanged from r711784,
activemq/camel/trunk/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/JsonDataFormat.java
activemq/camel/branches/camel-1.x/components/camel-xstream/src/test/java/org/apache/camel/dataformat/xstream/MarshalDomainObjectJSONTest.java
- copied unchanged from r711784,
activemq/camel/trunk/components/camel-xstream/src/test/java/org/apache/camel/dataformat/xstream/MarshalDomainObjectJSONTest.java
activemq/camel/branches/camel-1.x/components/camel-xstream/src/test/java/org/apache/camel/dataformat/xstream/UnmarshalThenMarshalJSONTest.java
- copied unchanged from r711784,
activemq/camel/trunk/components/camel-xstream/src/test/java/org/apache/camel/dataformat/xstream/UnmarshalThenMarshalJSONTest.java
Modified:
activemq/camel/branches/camel-1.x/ (props changed)
activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java
activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/processor/TransformProcessor.java
activemq/camel/branches/camel-1.x/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FromFtpPassiveModeTest.java
activemq/camel/branches/camel-1.x/components/camel-xstream/pom.xml
activemq/camel/branches/camel-1.x/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java
activemq/camel/branches/camel-1.x/components/camel-xstream/src/test/java/org/apache/camel/dataformat/xstream/MarshalDomainObjectTest.java
activemq/camel/branches/camel-1.x/pom.xml
Propchange: activemq/camel/branches/camel-1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Nov 5 23:59:26 2008
@@ -1 +1 @@
-/activemq/camel/trunk:709850,711200,711206,711219-711220,711523,711531,711756
+/activemq/camel/trunk:709850,711200,711206,711219-711220,711523,711531,711756,711784
Propchange: activemq/camel/branches/camel-1.x/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Wed Nov 5 23:59:26 2008
@@ -1 +1 @@
-/activemq/camel/trunk:1-708421,708553-709447,709449-709612,709614-709634,709636-710013,711200,711206,711219-711220,711523,711531,711599,711655-711656,711756
+/activemq/camel/trunk:1-708421,708553-709447,709449-709612,709614-709634,709636-710013,711200,711206,711219-711220,711523,711531,711599,711655-711656,711756,711784
Modified:
activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java
URL:
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java?rev=711786&r1=711785&r2=711786&view=diff
==============================================================================
---
activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java
(original)
+++
activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/builder/DataFormatClause.java
Wed Nov 5 23:59:26 2008
@@ -23,6 +23,7 @@
import org.apache.camel.model.dataformat.DataFormatType;
import org.apache.camel.model.dataformat.HL7DataFormat;
import org.apache.camel.model.dataformat.JaxbDataFormat;
+import org.apache.camel.model.dataformat.JsonDataFormat;
import org.apache.camel.model.dataformat.SerializationDataFormat;
import org.apache.camel.model.dataformat.StringDataFormat;
import org.apache.camel.model.dataformat.XMLBeansDataFormat;
@@ -155,6 +156,13 @@
public T xstream() {
return dataFormat(new XStreamDataFormat());
}
+
+ /**
+ * Uses the JSON data format
+ */
+ public T json() {
+ return dataFormat(new JsonDataFormat());
+ }
private T dataFormat(DataFormatType dataFormatType) {
switch (operation) {
Modified:
activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/processor/TransformProcessor.java
URL:
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/processor/TransformProcessor.java?rev=711786&r1=711785&r2=711786&view=diff
==============================================================================
---
activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/processor/TransformProcessor.java
(original)
+++
activemq/camel/branches/camel-1.x/camel-core/src/main/java/org/apache/camel/processor/TransformProcessor.java
Wed Nov 5 23:59:26 2008
@@ -50,6 +50,6 @@
@Override
public String toString() {
- return "transform(" + expression + "," +processor + ")";
+ return "transform(" + expression + "," + processor + ")";
}
}
Modified:
activemq/camel/branches/camel-1.x/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FromFtpPassiveModeTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FromFtpPassiveModeTest.java?rev=711786&r1=711785&r2=711786&view=diff
==============================================================================
---
activemq/camel/branches/camel-1.x/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FromFtpPassiveModeTest.java
(original)
+++
activemq/camel/branches/camel-1.x/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FromFtpPassiveModeTest.java
Wed Nov 5 23:59:26 2008
@@ -16,12 +16,12 @@
*/
package org.apache.camel.component.file.remote;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.component.file.FileComponent;
import org.apache.camel.Endpoint;
import org.apache.camel.Exchange;
import org.apache.camel.Producer;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.component.file.FileComponent;
+import org.apache.camel.component.mock.MockEndpoint;
/**
* @version $Revision$
Modified: activemq/camel/branches/camel-1.x/components/camel-xstream/pom.xml
URL:
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-xstream/pom.xml?rev=711786&r1=711785&r2=711786&view=diff
==============================================================================
--- activemq/camel/branches/camel-1.x/components/camel-xstream/pom.xml
(original)
+++ activemq/camel/branches/camel-1.x/components/camel-xstream/pom.xml Wed Nov
5 23:59:26 2008
@@ -45,13 +45,16 @@
</dependency>
<dependency>
<groupId>com.thoughtworks.xstream</groupId>
- <artifactId>xstream</artifactId>
- <version>1.3</version>
- </dependency>
+ <artifactId>xstream</artifactId>
+ </dependency>
<dependency>
<groupId>stax</groupId>
<artifactId>stax-api</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.codehaus.jettison</groupId>
+ <artifactId>jettison</artifactId>
+ </dependency>
<!-- testing -->
<dependency>
Modified:
activemq/camel/branches/camel-1.x/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java
URL:
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java?rev=711786&r1=711785&r2=711786&view=diff
==============================================================================
---
activemq/camel/branches/camel-1.x/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java
(original)
+++
activemq/camel/branches/camel-1.x/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/XStreamDataFormat.java
Wed Nov 5 23:59:26 2008
@@ -41,16 +41,14 @@
*
* @version $Revision$
*/
-public class XStreamDataFormat implements DataFormat {
-
- private XStream xstream;
- private StaxConverter staxConverter;
+public class XStreamDataFormat extends AbstractXStreamWrapper {
public XStreamDataFormat() {
+ super();
}
public XStreamDataFormat(XStream xstream) {
- setXStream(xstream);
+ super(xstream);
}
/**
@@ -75,51 +73,7 @@
xstream.processAnnotations(type);
}
return answer;
- }
-
- public void marshal(Exchange exchange, Object body, OutputStream stream)
throws Exception {
- HierarchicalStreamWriter writer =
createHierarchicalStreamWriter(exchange, body, stream);
- try {
- getXStream().marshal(body, writer);
- } finally {
- writer.close();
- }
- }
-
- public Object unmarshal(Exchange exchange, InputStream stream) throws
Exception {
- HierarchicalStreamReader reader =
createHierarchicalStreamReader(exchange, stream);
- try {
- return getXStream().unmarshal(reader);
- } finally {
- reader.close();
- }
- }
-
- public XStream getXStream() {
- if (xstream == null) {
- xstream = createXStream();
- }
- return xstream;
- }
-
- public void setXStream(XStream xstream) {
- this.xstream = xstream;
- }
-
- public StaxConverter getStaxConverter() {
- if (staxConverter == null) {
- staxConverter = new StaxConverter();
- }
- return staxConverter;
- }
-
- public void setStaxConverter(StaxConverter staxConverter) {
- this.staxConverter = staxConverter;
- }
-
- protected XStream createXStream() {
- return new XStream();
- }
+ }
protected HierarchicalStreamWriter createHierarchicalStreamWriter(Exchange
exchange, Object body, OutputStream stream) throws XMLStreamException {
XMLStreamWriter xmlWriter =
getStaxConverter().createXMLStreamWriter(stream);
Modified:
activemq/camel/branches/camel-1.x/components/camel-xstream/src/test/java/org/apache/camel/dataformat/xstream/MarshalDomainObjectTest.java
URL:
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-xstream/src/test/java/org/apache/camel/dataformat/xstream/MarshalDomainObjectTest.java?rev=711786&r1=711785&r2=711786&view=diff
==============================================================================
---
activemq/camel/branches/camel-1.x/components/camel-xstream/src/test/java/org/apache/camel/dataformat/xstream/MarshalDomainObjectTest.java
(original)
+++
activemq/camel/branches/camel-1.x/components/camel-xstream/src/test/java/org/apache/camel/dataformat/xstream/MarshalDomainObjectTest.java
Wed Nov 5 23:59:26 2008
@@ -71,7 +71,7 @@
// we get it back as byte array so type convert it to string
Object result = (Object)template.sendBody("direct:marshal", order);
- String body = context.getTypeConverter().convertTo(String.class,
result);
+ String body = context.getTypeConverter().convertTo(String.class,
result);
template.sendBody("direct:reverse", body);
mock.assertIsSatisfied();
Modified: activemq/camel/branches/camel-1.x/pom.xml
URL:
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/pom.xml?rev=711786&r1=711785&r2=711786&view=diff
==============================================================================
--- activemq/camel/branches/camel-1.x/pom.xml (original)
+++ activemq/camel/branches/camel-1.x/pom.xml Wed Nov 5 23:59:26 2008
@@ -909,6 +909,19 @@
<artifactId>mail</artifactId>
<version>1.4</version>
</dependency>
+
+ <!-- optional XStream -->
+ <dependency>
+ <groupId>com.thoughtworks.xstream</groupId>
+ <artifactId>xstream</artifactId>
+ <version>1.3</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.codehaus.jettison</groupId>
+ <artifactId>jettison</artifactId>
+ <version>1.0.1</version>
+ </dependency>
</dependencies>
</dependencyManagement>