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>


Reply via email to