You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2015/06/19 17:10:45 UTC

camel git commit: CAMEL-8888: Camel-Aws EC2: Add getMessageForResponse to the producer as the other components already do

Repository: camel
Updated Branches:
  refs/heads/master fac97da87 -> 6c29f90cf


CAMEL-8888: Camel-Aws EC2: Add getMessageForResponse to the producer as the other components already do


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

Branch: refs/heads/master
Commit: 6c29f90cf83b50f6a0b96c70754a0024631c167e
Parents: fac97da
Author: Andrea Cosentino <an...@gmail.com>
Authored: Fri Jun 19 17:09:31 2015 +0200
Committer: Andrea Cosentino <an...@gmail.com>
Committed: Fri Jun 19 17:09:31 2015 +0200

----------------------------------------------------------------------
 .../camel/component/aws/ec2/EC2Producer.java    | 34 +++++++++++++++-----
 .../aws/ec2/EC2ComponentSpringTest.java         | 18 +++++------
 2 files changed, 35 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/6c29f90c/components/camel-aws/src/main/java/org/apache/camel/component/aws/ec2/EC2Producer.java
----------------------------------------------------------------------
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/ec2/EC2Producer.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/ec2/EC2Producer.java
index 2d5681d..5ae28e4 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/ec2/EC2Producer.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/ec2/EC2Producer.java
@@ -42,6 +42,7 @@ import com.amazonaws.services.ec2.model.UnmonitorInstancesResult;
 
 import org.apache.camel.Endpoint;
 import org.apache.camel.Exchange;
+import org.apache.camel.Message;
 import org.apache.camel.impl.DefaultProducer;
 import org.apache.camel.util.ObjectHelper;
 import org.apache.camel.util.URISupport;
@@ -115,6 +116,15 @@ public class EC2Producer extends DefaultProducer {
     public EC2Endpoint getEndpoint() {
         return (EC2Endpoint) super.getEndpoint();
     }
+
+    private Message getMessageForResponse(final Exchange exchange) {
+        if (exchange.getPattern().isOutCapable()) {
+            Message out = exchange.getOut();
+            out.copyFrom(exchange.getIn());
+            return out;
+        }
+        return exchange.getIn();
+    }
     
     private void createAndRunInstance(AmazonEC2Client ec2Client, Exchange exchange) {
         String ami;
@@ -188,7 +198,8 @@ public class EC2Producer extends DefaultProducer {
             LOG.trace("Run Instances command returned the error code {}", ase.getErrorCode());
             throw ase;
         }
-        exchange.getIn().setBody(result);
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result);
     }
     
     private void startInstances(AmazonEC2Client ec2Client, Exchange exchange) {
@@ -207,7 +218,8 @@ public class EC2Producer extends DefaultProducer {
             LOG.trace("Start Instances command returned the error code {}", ase.getErrorCode());
             throw ase;
         }
-        exchange.getIn().setBody(result);        
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result);        
     }
     
     private void stopInstances(AmazonEC2Client ec2Client, Exchange exchange) {
@@ -226,7 +238,8 @@ public class EC2Producer extends DefaultProducer {
             LOG.trace("Stop Instances command returned the error code {}", ase.getErrorCode());
             throw ase;
         }
-        exchange.getIn().setBody(result);        
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result);        
     }
     
     private void terminateInstances(AmazonEC2Client ec2Client, Exchange exchange) {
@@ -245,7 +258,8 @@ public class EC2Producer extends DefaultProducer {
             LOG.trace("Terminate Instances command returned the error code {}", ase.getErrorCode());
             throw ase;
         }
-        exchange.getIn().setBody(result);        
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result);        
     }
     
     private void describeInstances(AmazonEC2Client ec2Client, Exchange exchange) {
@@ -262,7 +276,8 @@ public class EC2Producer extends DefaultProducer {
             LOG.trace("Describe Instances command returned the error code {}", ase.getErrorCode());
             throw ase;
         }
-        exchange.getIn().setBody(result);        
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result);        
     }
     
     private void describeInstancesStatus(AmazonEC2Client ec2Client, Exchange exchange) {
@@ -279,7 +294,8 @@ public class EC2Producer extends DefaultProducer {
             LOG.trace("Describe Instances Status command returned the error code {}", ase.getErrorCode());
             throw ase;
         }
-        exchange.getIn().setBody(result);        
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result);        
     }
     
     private void rebootInstances(AmazonEC2Client ec2Client, Exchange exchange) {
@@ -315,7 +331,8 @@ public class EC2Producer extends DefaultProducer {
             LOG.trace("Monitor Instances command returned the error code {}", ase.getErrorCode());
             throw ase;
         }
-        exchange.getIn().setBody(result); 
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result); 
     }
     
     private void unmonitorInstances(AmazonEC2Client ec2Client, Exchange exchange) {
@@ -334,6 +351,7 @@ public class EC2Producer extends DefaultProducer {
             LOG.trace("Unmonitor Instances command returned the error code {}", ase.getErrorCode());
             throw ase;
         }
-        exchange.getIn().setBody(result); 
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result); 
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/camel/blob/6c29f90c/components/camel-aws/src/test/java/org/apache/camel/component/aws/ec2/EC2ComponentSpringTest.java
----------------------------------------------------------------------
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/ec2/EC2ComponentSpringTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/ec2/EC2ComponentSpringTest.java
index 849bf2d..7341fa5 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/ec2/EC2ComponentSpringTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/ec2/EC2ComponentSpringTest.java
@@ -64,7 +64,7 @@ public class EC2ComponentSpringTest extends CamelSpringTestSupport {
             }
         });
         
-        RunInstancesResult resultGet = (RunInstancesResult) exchange.getIn().getBody();
+        RunInstancesResult resultGet = (RunInstancesResult) exchange.getOut().getBody();
         assertEquals(resultGet.getReservation().getInstances().get(0).getImageId(), "test-1");
         assertEquals(resultGet.getReservation().getInstances().get(0).getInstanceType(), InstanceType.T2Micro.toString());
         assertEquals(resultGet.getReservation().getInstances().get(0).getInstanceId(), "instance-1");
@@ -85,7 +85,7 @@ public class EC2ComponentSpringTest extends CamelSpringTestSupport {
             }
         });
         
-        RunInstancesResult resultGet = (RunInstancesResult) exchange.getIn().getBody();
+        RunInstancesResult resultGet = (RunInstancesResult) exchange.getOut().getBody();
         assertEquals(resultGet.getReservation().getInstances().get(0).getImageId(), "test-1");
         assertEquals(resultGet.getReservation().getInstances().get(0).getInstanceType(), InstanceType.T2Micro.toString());
         assertEquals(resultGet.getReservation().getInstances().get(0).getInstanceId(), "instance-1");
@@ -106,7 +106,7 @@ public class EC2ComponentSpringTest extends CamelSpringTestSupport {
             }
         });
                 
-        StartInstancesResult resultGet = (StartInstancesResult) exchange.getIn().getBody();
+        StartInstancesResult resultGet = (StartInstancesResult) exchange.getOut().getBody();
         assertEquals(resultGet.getStartingInstances().get(0).getInstanceId(), "test-1");
         assertEquals(resultGet.getStartingInstances().get(0).getPreviousState().getName(), InstanceStateName.Stopped.toString());
         assertEquals(resultGet.getStartingInstances().get(0).getCurrentState().getName(), InstanceStateName.Running.toString());
@@ -124,7 +124,7 @@ public class EC2ComponentSpringTest extends CamelSpringTestSupport {
             }
         });
                 
-        StopInstancesResult resultGet = (StopInstancesResult) exchange.getIn().getBody();
+        StopInstancesResult resultGet = (StopInstancesResult) exchange.getOut().getBody();
         assertEquals(resultGet.getStoppingInstances().get(0).getInstanceId(), "test-1");
         assertEquals(resultGet.getStoppingInstances().get(0).getPreviousState().getName(), InstanceStateName.Running.toString());
         assertEquals(resultGet.getStoppingInstances().get(0).getCurrentState().getName(), InstanceStateName.Stopped.toString());
@@ -142,7 +142,7 @@ public class EC2ComponentSpringTest extends CamelSpringTestSupport {
             }
         });
                 
-        TerminateInstancesResult resultGet = (TerminateInstancesResult) exchange.getIn().getBody();
+        TerminateInstancesResult resultGet = (TerminateInstancesResult) exchange.getOut().getBody();
         assertEquals(resultGet.getTerminatingInstances().get(0).getInstanceId(), "test-1");
         assertEquals(resultGet.getTerminatingInstances().get(0).getPreviousState().getName(), InstanceStateName.Running.toString());
         assertEquals(resultGet.getTerminatingInstances().get(0).getCurrentState().getName(), InstanceStateName.Terminated.toString());
@@ -161,7 +161,7 @@ public class EC2ComponentSpringTest extends CamelSpringTestSupport {
             }
         });
         
-        DescribeInstancesResult resultGet = (DescribeInstancesResult) exchange.getIn().getBody();
+        DescribeInstancesResult resultGet = (DescribeInstancesResult) exchange.getOut().getBody();
         assertEquals(resultGet.getReservations().size(), 1);
         assertEquals(resultGet.getReservations().get(0).getInstances().size(), 1);
     }
@@ -181,7 +181,7 @@ public class EC2ComponentSpringTest extends CamelSpringTestSupport {
         
         assertMockEndpointsSatisfied();
         
-        DescribeInstanceStatusResult resultGet = (DescribeInstanceStatusResult) exchange.getIn().getBody();
+        DescribeInstanceStatusResult resultGet = (DescribeInstanceStatusResult) exchange.getOut().getBody();
         assertEquals(resultGet.getInstanceStatuses().size(), 1);
         assertEquals(resultGet.getInstanceStatuses().get(0).getInstanceState().getName(), InstanceStateName.Running.toString());
     }
@@ -214,7 +214,7 @@ public class EC2ComponentSpringTest extends CamelSpringTestSupport {
             }
         });
         
-        MonitorInstancesResult resultGet = (MonitorInstancesResult) exchange.getIn().getBody();
+        MonitorInstancesResult resultGet = (MonitorInstancesResult) exchange.getOut().getBody();
         
         assertEquals(resultGet.getInstanceMonitorings().size(), 1);
         assertEquals(resultGet.getInstanceMonitorings().get(0).getInstanceId(), "test-1");
@@ -234,7 +234,7 @@ public class EC2ComponentSpringTest extends CamelSpringTestSupport {
             }
         });
         
-        UnmonitorInstancesResult resultGet = (UnmonitorInstancesResult) exchange.getIn().getBody();
+        UnmonitorInstancesResult resultGet = (UnmonitorInstancesResult) exchange.getOut().getBody();
         
         assertEquals(resultGet.getInstanceMonitorings().size(), 1);
         assertEquals(resultGet.getInstanceMonitorings().get(0).getInstanceId(), "test-1");