Repository: camel
Updated Branches:
  refs/heads/master 0ddf4b1ca -> 14e9236ac


[CAMEL-9245] camel-paho - Endpoint should allow a flexible naming.


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

Branch: refs/heads/master
Commit: 14e9236aca9e1cd93f180158767d7e102257f1b6
Parents: 0ddf4b1
Author: Henryk Konsek <hekon...@gmail.com>
Authored: Sun Oct 25 21:28:39 2015 +0100
Committer: Henryk Konsek <hekon...@gmail.com>
Committed: Sun Oct 25 21:28:39 2015 +0100

----------------------------------------------------------------------
 .../camel/component/paho/PahoComponent.java     |  2 +-
 .../camel/component/paho/PahoEndpoint.java      | 11 ++-------
 .../camel/component/paho/PahoComponentTest.java | 24 +++++++++++++++++++-
 3 files changed, 26 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/14e9236a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoComponent.java
----------------------------------------------------------------------
diff --git 
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoComponent.java
 
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoComponent.java
index c9cbc41..3756a67 100644
--- 
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoComponent.java
+++ 
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoComponent.java
@@ -34,7 +34,7 @@ public class PahoComponent extends UriEndpointComponent {
 
     @Override
     protected Endpoint createEndpoint(String uri, String remaining, 
Map<String, Object> parameters) throws Exception {
-        PahoEndpoint answer = new PahoEndpoint(uri, this);
+        PahoEndpoint answer = new PahoEndpoint(uri, remaining, this);
 
         if (brokerUrl != null) {
             answer.setBrokerUrl(brokerUrl);

http://git-wip-us.apache.org/repos/asf/camel/blob/14e9236a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
----------------------------------------------------------------------
diff --git 
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
 
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
index 4264522..bc6ee97 100644
--- 
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
+++ 
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
@@ -71,16 +71,9 @@ public class PahoEndpoint extends DefaultEndpoint {
 
     private transient MqttClient client;
 
-    public PahoEndpoint(String uri, Component component) {
+    public PahoEndpoint(String uri, String topic, Component component) {
         super(uri, component);
-        if (topic == null) {
-            int optionIndex = uri.indexOf("?");
-            if (optionIndex > 0) {
-                topic = uri.substring(7, optionIndex);
-            } else {
-                topic = uri.substring(7);
-            }
-        }
+        this.topic = topic;
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/camel/blob/14e9236a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoComponentTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoComponentTest.java
 
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoComponentTest.java
index 8013f8f..27f0ed8 100644
--- 
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoComponentTest.java
+++ 
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoComponentTest.java
@@ -36,7 +36,10 @@ public class PahoComponentTest extends CamelTestSupport {
 
     @EndpointInject(uri = "mock:test")
     MockEndpoint mock;
-    
+
+    @EndpointInject(uri = "mock:testCustomizedPaho")
+    MockEndpoint testCustomizedPahoMock;
+
     BrokerService broker;
 
     int mqttPort = AvailablePortFinder.getNextAvailable();
@@ -66,6 +69,9 @@ public class PahoComponentTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
+                PahoComponent customizedPaho = new PahoComponent();
+                context.addComponent("customizedPaho", customizedPaho);
+
                 from("direct:test").to("paho:queue?brokerUrl=tcp://localhost:" 
+ mqttPort);
                 from("paho:queue?brokerUrl=tcp://localhost:" + 
mqttPort).to("mock:test");
 
@@ -74,6 +80,9 @@ public class PahoComponentTest extends CamelTestSupport {
                 
from("paho:persistenceTest?persistence=FILE&brokerUrl=tcp://localhost:" + 
mqttPort).to("mock:persistenceTest");
 
                 
from("direct:connectOptions").to("paho:registryConnectOptions?connectOptions=#connectOptions&brokerUrl=tcp://localhost:"
 + mqttPort);
+
+                
from("direct:testCustomizedPaho").to("customizedPaho:testCustomizedPaho?brokerUrl=tcp://localhost:"
 + mqttPort);
+                from("paho:testCustomizedPaho?brokerUrl=tcp://localhost:" + 
mqttPort).to("mock:testCustomizedPaho");
             }
         };
     }
@@ -189,4 +198,17 @@ public class PahoComponentTest extends CamelTestSupport {
         assertEquals(msg, new String(message.getPayload()));
     }
 
+    @Test
+    public void shouldReadMessageFromCustomizedComponent() throws 
InterruptedException {
+        // Given
+        String msg = "msg";
+        testCustomizedPahoMock.expectedBodiesReceived(msg);
+
+        // When
+        template.sendBody("direct:testCustomizedPaho", msg);
+
+        // Then
+        testCustomizedPahoMock.assertIsSatisfied();
+    }
+
 }

Reply via email to