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 2018/10/02 12:35:23 UTC

[camel] branch master updated (0201758 -> 060e2cd)

This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git.


    from 0201758  CAMEL-12841: camel-restdsl-swagger:generate - Special case for Spring Boot with servlet component to generate CamelRestController support class to allow using root context-path and spring boot health check/actuators at the same time.
     new 360fae7  CAMEL-12849 - Camel-AWS MQ: Add a describeBroker operation to the producer side
     new 060e2cd  Camel-AWS: Lets use AbstractAmazonMQ in the AWS MQ Client Mock for tests

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../camel/component/aws/mq/MQOperations.java       |  3 ++-
 .../apache/camel/component/aws/mq/MQProducer.java  | 25 ++++++++++++++++++++++
 .../camel/component/aws/mq/AmazonMQClientMock.java | 10 ++++++---
 .../component/aws/mq/MQProducerSpringTest.java     | 22 +++++++++++++++++++
 .../camel/component/aws/mq/MQProducerTest.java     | 25 ++++++++++++++++++++++
 .../aws/mq/MQComponentSpringTest-context.xml       |  5 +++++
 6 files changed, 86 insertions(+), 4 deletions(-)


[camel] 02/02: Camel-AWS: Lets use AbstractAmazonMQ in the AWS MQ Client Mock for tests

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 060e2cd179ecf7a9c02ad2e380d1857492d49d54
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue Oct 2 14:34:16 2018 +0200

    Camel-AWS: Lets use AbstractAmazonMQ in the AWS MQ Client Mock for tests
---
 .../java/org/apache/camel/component/aws/mq/AmazonMQClientMock.java   | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/AmazonMQClientMock.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/AmazonMQClientMock.java
index 082874a..4016ad6 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/AmazonMQClientMock.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/AmazonMQClientMock.java
@@ -21,7 +21,7 @@ import java.util.List;
 
 import com.amazonaws.AmazonWebServiceRequest;
 import com.amazonaws.ResponseMetadata;
-import com.amazonaws.services.mq.AmazonMQ;
+import com.amazonaws.services.mq.AbstractAmazonMQ;
 import com.amazonaws.services.mq.model.BrokerState;
 import com.amazonaws.services.mq.model.BrokerSummary;
 import com.amazonaws.services.mq.model.ConfigurationId;
@@ -59,9 +59,8 @@ import com.amazonaws.services.mq.model.UpdateConfigurationRequest;
 import com.amazonaws.services.mq.model.UpdateConfigurationResult;
 import com.amazonaws.services.mq.model.UpdateUserRequest;
 import com.amazonaws.services.mq.model.UpdateUserResult;
-import com.sun.corba.se.pept.broker.Broker;
 
-public class AmazonMQClientMock implements AmazonMQ {
+public class AmazonMQClientMock extends AbstractAmazonMQ {
 
     public AmazonMQClientMock() {
         super();


[camel] 01/02: CAMEL-12849 - Camel-AWS MQ: Add a describeBroker operation to the producer side

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 360fae71a287b9e6461977cee819b69cab9b08ba
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue Oct 2 14:28:29 2018 +0200

    CAMEL-12849 - Camel-AWS MQ: Add a describeBroker operation to the producer side
---
 .../camel/component/aws/mq/MQOperations.java       |  3 ++-
 .../apache/camel/component/aws/mq/MQProducer.java  | 25 ++++++++++++++++++++++
 .../camel/component/aws/mq/AmazonMQClientMock.java |  7 +++++-
 .../component/aws/mq/MQProducerSpringTest.java     | 22 +++++++++++++++++++
 .../camel/component/aws/mq/MQProducerTest.java     | 25 ++++++++++++++++++++++
 .../aws/mq/MQComponentSpringTest-context.xml       |  5 +++++
 6 files changed, 85 insertions(+), 2 deletions(-)

diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/mq/MQOperations.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/mq/MQOperations.java
index 241d237..2a2bef0 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/mq/MQOperations.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/mq/MQOperations.java
@@ -22,5 +22,6 @@ public enum MQOperations {
     createBroker,
     deleteBroker,
     rebootBroker,
-    updateBroker
+    updateBroker,
+    describeBroker
 }
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/mq/MQProducer.java b/components/camel-aws/src/main/java/org/apache/camel/component/aws/mq/MQProducer.java
index c217c14..87f7d3c 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/mq/MQProducer.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/mq/MQProducer.java
@@ -23,6 +23,8 @@ import com.amazonaws.services.mq.model.CreateBrokerRequest;
 import com.amazonaws.services.mq.model.CreateBrokerResult;
 import com.amazonaws.services.mq.model.DeleteBrokerRequest;
 import com.amazonaws.services.mq.model.DeleteBrokerResult;
+import com.amazonaws.services.mq.model.DescribeBrokerRequest;
+import com.amazonaws.services.mq.model.DescribeBrokerResult;
 import com.amazonaws.services.mq.model.ListBrokersRequest;
 import com.amazonaws.services.mq.model.ListBrokersResult;
 import com.amazonaws.services.mq.model.RebootBrokerRequest;
@@ -72,6 +74,9 @@ public class MQProducer extends DefaultProducer {
         case updateBroker:
             updateBroker(getEndpoint().getAmazonMqClient(), exchange);
             break;
+        case describeBroker:
+            describeBroker(getEndpoint().getAmazonMqClient(), exchange);
+            break;
         default:
             throw new IllegalArgumentException("Unsupported operation");
         }
@@ -210,4 +215,24 @@ public class MQProducer extends DefaultProducer {
         Message message = getMessageForResponse(exchange);
         message.setBody(result);
     }
+    
+    private void describeBroker(AmazonMQ mqClient, Exchange exchange) {
+        String brokerId;
+        DescribeBrokerRequest request = new DescribeBrokerRequest();
+        if (ObjectHelper.isNotEmpty(exchange.getIn().getHeader(MQConstants.BROKER_ID))) {
+            brokerId = exchange.getIn().getHeader(MQConstants.BROKER_ID, String.class);
+            request.withBrokerId(brokerId);
+        } else {
+            throw new IllegalArgumentException("Broker Name must be specified");
+        }
+        DescribeBrokerResult result;
+        try {
+            result = mqClient.describeBroker(request);
+        } catch (AmazonServiceException ase) {
+            LOG.trace("Reboot Broker command returned the error code {}", ase.getErrorCode());
+            throw ase;
+        }
+        Message message = getMessageForResponse(exchange);
+        message.setBody(result);
+    }
 }
\ No newline at end of file
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/AmazonMQClientMock.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/AmazonMQClientMock.java
index ff309af..082874a 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/AmazonMQClientMock.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/AmazonMQClientMock.java
@@ -59,6 +59,7 @@ import com.amazonaws.services.mq.model.UpdateConfigurationRequest;
 import com.amazonaws.services.mq.model.UpdateConfigurationResult;
 import com.amazonaws.services.mq.model.UpdateUserRequest;
 import com.amazonaws.services.mq.model.UpdateUserResult;
+import com.sun.corba.se.pept.broker.Broker;
 
 public class AmazonMQClientMock implements AmazonMQ {
 
@@ -98,7 +99,11 @@ public class AmazonMQClientMock implements AmazonMQ {
 
     @Override
     public DescribeBrokerResult describeBroker(DescribeBrokerRequest describeBrokerRequest) {
-        throw new UnsupportedOperationException();
+        DescribeBrokerResult result = new DescribeBrokerResult();
+        result.setBrokerId("1");
+        result.setBrokerName("Test");
+        result.setBrokerState(BrokerState.RUNNING.toString());
+        return result;
     }
 
     @Override
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/MQProducerSpringTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/MQProducerSpringTest.java
index f14e39d..ace9f00 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/MQProducerSpringTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/MQProducerSpringTest.java
@@ -21,6 +21,7 @@ import com.amazonaws.services.mq.model.ConfigurationId;
 import com.amazonaws.services.mq.model.CreateBrokerResult;
 import com.amazonaws.services.mq.model.DeleteBrokerResult;
 import com.amazonaws.services.mq.model.DeploymentMode;
+import com.amazonaws.services.mq.model.DescribeBrokerResult;
 import com.amazonaws.services.mq.model.ListBrokersResult;
 import com.amazonaws.services.mq.model.UpdateBrokerResult;
 
@@ -131,6 +132,27 @@ public class MQProducerSpringTest extends CamelSpringTestSupport {
         assertEquals(resultGet.getBrokerId(), "1");
     }
     
+    @Test
+    public void mqDescribeBrokerTest() throws Exception {
+
+        mock.expectedMessageCount(1);
+        Exchange exchange = template.request("direct:describeBroker", new Processor() {
+            @Override
+            public void process(Exchange exchange) throws Exception {
+                exchange.getIn().setHeader(MQConstants.OPERATION, MQOperations.describeBroker);
+                exchange.getIn().setHeader(MQConstants.BROKER_ID, "1");
+                ConfigurationId cId = new ConfigurationId();
+                cId.setId("1");
+                cId.setRevision(12);
+                exchange.getIn().setHeader(MQConstants.CONFIGURATION_ID, cId);
+            }
+        });
+        
+        assertMockEndpointsSatisfied();
+        DescribeBrokerResult resultGet = (DescribeBrokerResult) exchange.getIn().getBody();
+        assertEquals(resultGet.getBrokerId(), "1");
+    }
+    
     @Override
     protected JndiRegistry createRegistry() throws Exception {
         JndiRegistry registry = super.createRegistry();
diff --git a/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/MQProducerTest.java b/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/MQProducerTest.java
index 1bd449d..b3e4ccb 100644
--- a/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/MQProducerTest.java
+++ b/components/camel-aws/src/test/java/org/apache/camel/component/aws/mq/MQProducerTest.java
@@ -21,6 +21,7 @@ import com.amazonaws.services.mq.model.ConfigurationId;
 import com.amazonaws.services.mq.model.CreateBrokerResult;
 import com.amazonaws.services.mq.model.DeleteBrokerResult;
 import com.amazonaws.services.mq.model.DeploymentMode;
+import com.amazonaws.services.mq.model.DescribeBrokerResult;
 import com.amazonaws.services.mq.model.ListBrokersResult;
 import com.amazonaws.services.mq.model.UpdateBrokerResult;
 
@@ -131,6 +132,27 @@ public class MQProducerTest extends CamelTestSupport {
         assertEquals(resultGet.getBrokerId(), "1");
     }
     
+    @Test
+    public void mqDescribeBrokerTest() throws Exception {
+
+        mock.expectedMessageCount(1);
+        Exchange exchange = template.request("direct:describeBroker", new Processor() {
+            @Override
+            public void process(Exchange exchange) throws Exception {
+                exchange.getIn().setHeader(MQConstants.OPERATION, MQOperations.describeBroker);
+                exchange.getIn().setHeader(MQConstants.BROKER_ID, "1");
+                ConfigurationId cId = new ConfigurationId();
+                cId.setId("1");
+                cId.setRevision(12);
+                exchange.getIn().setHeader(MQConstants.CONFIGURATION_ID, cId);
+            }
+        });
+        
+        assertMockEndpointsSatisfied();
+        DescribeBrokerResult resultGet = (DescribeBrokerResult) exchange.getIn().getBody();
+        assertEquals(resultGet.getBrokerId(), "1");
+    }
+    
     @Override
     protected JndiRegistry createRegistry() throws Exception {
         JndiRegistry registry = super.createRegistry();
@@ -162,6 +184,9 @@ public class MQProducerTest extends CamelTestSupport {
                 from("direct:updateBroker")
                     .to("aws-mq://test?amazonMqClient=#amazonMqClient&operation=updateBroker")
                     .to("mock:result");
+                from("direct:describeBroker")
+                    .to("aws-mq://test?amazonMqClient=#amazonMqClient&operation=describeBroker")
+                    .to("mock:result");
             }
         };
     }
diff --git a/components/camel-aws/src/test/resources/org/apache/camel/component/aws/mq/MQComponentSpringTest-context.xml b/components/camel-aws/src/test/resources/org/apache/camel/component/aws/mq/MQComponentSpringTest-context.xml
index c629c07..08bd1e8 100644
--- a/components/camel-aws/src/test/resources/org/apache/camel/component/aws/mq/MQComponentSpringTest-context.xml
+++ b/components/camel-aws/src/test/resources/org/apache/camel/component/aws/mq/MQComponentSpringTest-context.xml
@@ -49,6 +49,11 @@
             <to uri="aws-mq://Test?amazonMqClient=#amazonMqClient&amp;operation=updateBroker"/>
             <to uri="mock:result"/>
         </route>
+        <route>
+            <from uri="direct:describeBroker"/>
+            <to uri="aws-mq://Test?amazonMqClient=#amazonMqClient&amp;operation=describeBroker"/>
+            <to uri="mock:result"/>
+        </route>
     </camelContext>
 
     <bean id="amazonMqClient" class="org.apache.camel.component.aws.mq.AmazonMQClientMock"/>