You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2016/01/09 16:19:12 UTC

camel git commit: CAMEL-9495: camel-hipchat - Should require url for hipchat server

Repository: camel
Updated Branches:
  refs/heads/master 96958f814 -> c8833ddf9


CAMEL-9495: camel-hipchat - Should require url for hipchat server


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

Branch: refs/heads/master
Commit: c8833ddf991df2faaa22046481c8a3774bd7fbb1
Parents: 96958f8
Author: Claus Ibsen <da...@apache.org>
Authored: Sat Jan 9 16:19:04 2016 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sat Jan 9 16:19:04 2016 +0100

----------------------------------------------------------------------
 .../camel/component/hipchat/HipchatComponent.java   |  9 ++++++++-
 .../component/hipchat/HipchatConfiguration.java     | 11 ++++++-----
 .../hipchat/HipchatComponentConsumerTest.java       |  4 ++--
 .../hipchat/HipchatComponentMultipleUsersTest.java  |  4 ++--
 .../hipchat/HipchatComponentProducerTest.java       |  2 +-
 .../component/hipchat/HipchatComponentTest.java     | 16 +++++-----------
 .../component/hipchat/HipchatEndpointTest.java      |  2 +-
 .../integration/HipchatConsumerIntegrationTest.java |  4 ++--
 .../integration/HipchatProducerIntegrationTest.java |  4 ++--
 9 files changed, 29 insertions(+), 27 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/c8833ddf/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatComponent.java
----------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatComponent.java b/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatComponent.java
index 10f634f..af063e8 100644
--- a/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatComponent.java
+++ b/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatComponent.java
@@ -23,6 +23,8 @@ import java.util.Map;
 import org.apache.camel.CamelContext;
 import org.apache.camel.Endpoint;
 import org.apache.camel.impl.UriEndpointComponent;
+import org.apache.camel.util.ObjectHelper;
+import org.apache.camel.util.URISupport;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -57,13 +59,18 @@ public class HipchatComponent extends UriEndpointComponent {
         return endpoint;
     }
 
-    private void parseUri(String uri, HipchatEndpoint endpoint) throws URISyntaxException {
+    private void parseUri(String uri, HipchatEndpoint endpoint) throws Exception {
+        // strip scheme
+        uri = ObjectHelper.after(uri, ":");
+        uri = URISupport.normalizeUri(uri);
+
         URI hipChatUri = new URI(uri);
         if (hipChatUri.getHost() != null) {
             endpoint.getConfiguration().setHost(hipChatUri.getHost());
             if (hipChatUri.getPort() != -1) {
                 endpoint.getConfiguration().setPort(hipChatUri.getPort());
             }
+            endpoint.getConfiguration().setProtocol(hipChatUri.getScheme());
         }
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/c8833ddf/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatConfiguration.java b/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatConfiguration.java
index 21a00b6..6f54aed 100644
--- a/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatConfiguration.java
+++ b/components/camel-hipchat/src/main/java/org/apache/camel/component/hipchat/HipchatConfiguration.java
@@ -16,15 +16,16 @@
  */
 package org.apache.camel.component.hipchat;
 
+import org.apache.camel.spi.Metadata;
 import org.apache.camel.spi.UriParam;
 import org.apache.camel.spi.UriParams;
 import org.apache.camel.spi.UriPath;
 
 @UriParams
 public class HipchatConfiguration {
-    @UriPath(defaultValue = HipchatConstants.DEFAULT_PROTOCOL)
-    private String protocol = HipchatConstants.DEFAULT_PROTOCOL;
-    @UriPath(defaultValue = HipchatConstants.DEFAULT_HOST)
+    @UriPath @Metadata(required = "true")
+    private String protocol;
+    @UriPath @Metadata(required = "true")
     private String host = HipchatConstants.DEFAULT_HOST;
     @UriPath(defaultValue = "" + HipchatConstants.DEFAULT_PORT)
     private Integer port = HipchatConstants.DEFAULT_PORT;
@@ -38,7 +39,7 @@ public class HipchatConfiguration {
     }
 
     /**
-     * The host for the hipchat server. Is by default api.hipchat.com
+     * The host for the hipchat server, such as api.hipchat.com
      */
     public void setHost(String host) {
         this.host = host;
@@ -60,7 +61,7 @@ public class HipchatConfiguration {
     }
 
     /**
-     * The protocol for the hipchat server. Is by default http.
+     * The protocol for the hipchat server, such as http.
      */
     public void setProtocol(String protocol) {
         this.protocol = protocol;

http://git-wip-us.apache.org/repos/asf/camel/blob/c8833ddf/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentConsumerTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentConsumerTest.java b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentConsumerTest.java
index fc15346..0950ffd 100644
--- a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentConsumerTest.java
+++ b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentConsumerTest.java
@@ -38,7 +38,7 @@ import static org.mockito.Mockito.when;
 public class HipchatComponentConsumerTest extends CamelTestSupport {
     private CloseableHttpResponse closeableHttpResponse = mock(CloseableHttpResponse.class);
 
-    @EndpointInject(uri = "hipchat://?authToken=anything&consumeUsers=@AUser")
+    @EndpointInject(uri = "hipchat:http:api.hipchat.com?authToken=anything&consumeUsers=@AUser")
     private ProducerTemplate template;
 
     @EndpointInject(uri = "mock:result")
@@ -202,7 +202,7 @@ public class HipchatComponentConsumerTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() {
-                from("hipchat://?authToken=anything&consumeUsers=@AUser")
+                from("hipchat:http://api.hipchat.com?authToken=anything&consumeUsers=@AUser")
                         .to("mock:result");
             }
         };

http://git-wip-us.apache.org/repos/asf/camel/blob/c8833ddf/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentMultipleUsersTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentMultipleUsersTest.java b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentMultipleUsersTest.java
index 301c100..b7a6116 100644
--- a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentMultipleUsersTest.java
+++ b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentMultipleUsersTest.java
@@ -40,7 +40,7 @@ import static org.mockito.Mockito.when;
 public class HipchatComponentMultipleUsersTest extends CamelTestSupport {
     private CloseableHttpResponse closeableHttpResponse = mock(CloseableHttpResponse.class);
 
-    @EndpointInject(uri = "hipchat://?authToken=anything&consumeUsers=@AUser")
+    @EndpointInject(uri = "hipchat:http://api.hipchat.com?authToken=anything&consumeUsers=@AUser")
     private ProducerTemplate template;
 
     @EndpointInject(uri = "mock:result")
@@ -128,7 +128,7 @@ public class HipchatComponentMultipleUsersTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() {
-                from("hipchat://?authToken=anything&consumeUsers=@AUser,@BUser")
+                from("hipchat:http://api.hipchat.com?authToken=anything&consumeUsers=@AUser,@BUser")
                         .to("mock:result");
             }
         };

http://git-wip-us.apache.org/repos/asf/camel/blob/c8833ddf/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentProducerTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentProducerTest.java b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentProducerTest.java
index c78e301..c390abf 100644
--- a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentProducerTest.java
+++ b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentProducerTest.java
@@ -198,7 +198,7 @@ public class HipchatComponentProducerTest extends CamelTestSupport {
             @Override
             public void configure() {
                 from("direct:start")
-                        .to("hipchat://?authToken=anything")
+                        .to("hipchat:http:api.hipchat.com?authToken=anything")
                         .to("mock:result");
             }
         };

http://git-wip-us.apache.org/repos/asf/camel/blob/c8833ddf/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentTest.java b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentTest.java
index e9891f9..7c030db 100644
--- a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentTest.java
+++ b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatComponentTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.hipchat;
 
 import java.util.Arrays;
-import java.util.HashMap;
 
 import org.apache.camel.CamelContext;
 import org.junit.Test;
@@ -29,12 +28,10 @@ import static org.junit.Assert.assertTrue;
 public class HipchatComponentTest {
 
     @Test
-    public void testUriParseNoPort() throws Exception {
+    public void testUriParseNoSlashAndNoPort() throws Exception {
         HipchatComponent component = new HipchatComponent(Mockito.mock(CamelContext.class));
-        HashMap<String, Object> parameters = new HashMap<String, Object>();
-        parameters.put("authToken", "token");
-        parameters.put("protocol", "https");
-        HipchatEndpoint endpoint = (HipchatEndpoint)component.createEndpoint("hipchat://localhost?authToken=token&protocol=https", "localhost", parameters);
+        HipchatEndpoint endpoint = (HipchatEndpoint) component.createEndpoint("hipchat:https:localhost?authToken=token");
+
         assertEquals("localhost", endpoint.getConfiguration().getHost());
         assertEquals(new Integer(80), endpoint.getConfiguration().getPort());
         assertEquals("https", endpoint.getConfiguration().getProtocol());
@@ -46,11 +43,8 @@ public class HipchatComponentTest {
     @Test
     public void testUriParseFull() throws Exception {
         HipchatComponent component = new HipchatComponent(Mockito.mock(CamelContext.class));
-        HashMap<String, Object> parameters = new HashMap<String, Object>();
-        parameters.put("authToken", "token");
-        parameters.put("protocol", "https");
-        parameters.put("consumeUsers", "@auser,@buser");
-        HipchatEndpoint endpoint = (HipchatEndpoint)component.createEndpoint("hipchat://localhost:8080?authToken=token&protocol=https@consumeUsers=@auser,@buser", "localhost:8080", parameters);
+        HipchatEndpoint endpoint = (HipchatEndpoint) component.createEndpoint("hipchat:https://localhost:8080?authToken=token&consumeUsers=@auser,@buser");
+
         assertEquals("localhost", endpoint.getConfiguration().getHost());
         assertEquals(new Integer(8080), endpoint.getConfiguration().getPort());
         assertEquals("https", endpoint.getConfiguration().getProtocol());

http://git-wip-us.apache.org/repos/asf/camel/blob/c8833ddf/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatEndpointTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatEndpointTest.java b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatEndpointTest.java
index 429cada..37d2658 100644
--- a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatEndpointTest.java
+++ b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/HipchatEndpointTest.java
@@ -27,7 +27,7 @@ public class HipchatEndpointTest {
     @Test
     public void testCreateConsumer() throws Exception {
         HipchatComponent component = new HipchatComponent(Mockito.mock(CamelContext.class));
-        HipchatEndpoint endpoint = new HipchatEndpoint("hipchat://?authKey=token", component);
+        HipchatEndpoint endpoint = new HipchatEndpoint("hipchat:http://api.hipchat.com?authKey=token", component);
         HipchatConsumer consumer = (HipchatConsumer)endpoint.createConsumer(new Processor() {
             @Override
             public void process(Exchange exchange) throws Exception {

http://git-wip-us.apache.org/repos/asf/camel/blob/c8833ddf/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatConsumerIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatConsumerIntegrationTest.java b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatConsumerIntegrationTest.java
index d35149c..fa13aca 100644
--- a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatConsumerIntegrationTest.java
+++ b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatConsumerIntegrationTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.camel.component.hipchat.integration;
 
-
 import org.apache.camel.EndpointInject;
 import org.apache.camel.Exchange;
 import org.apache.camel.Predicate;
@@ -31,6 +30,7 @@ import org.junit.Test;
 
 @Ignore("Must be manually tested. Provide your own auth key, user, & room from https://www.hipchat.com/docs/apiv2/auth")
 public class HipchatConsumerIntegrationTest extends CamelTestSupport {
+
     @EndpointInject(uri = "mock:result")
     private MockEndpoint result;
 
@@ -52,7 +52,7 @@ public class HipchatConsumerIntegrationTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                String hipchatEndpointUri = "hipchat://?authToken=XXXX&consumeUsers=@ShreyasPurohit&delay=1000";
+                String hipchatEndpointUri = "hipchat:http:api.hipchat.com?authToken=XXXX&consumeUsers=@ShreyasPurohit&delay=1000";
 
                 from(hipchatEndpointUri)
                     .idempotentConsumer(

http://git-wip-us.apache.org/repos/asf/camel/blob/c8833ddf/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatProducerIntegrationTest.java
----------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatProducerIntegrationTest.java b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatProducerIntegrationTest.java
index 6f83930..071c0a1 100644
--- a/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatProducerIntegrationTest.java
+++ b/components/camel-hipchat/src/test/java/org/apache/camel/component/hipchat/integration/HipchatProducerIntegrationTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.camel.component.hipchat.integration;
 
-
 import org.apache.camel.EndpointInject;
 import org.apache.camel.Exchange;
 import org.apache.camel.ExchangePattern;
@@ -33,6 +32,7 @@ import org.junit.Test;
 
 @Ignore("Must be manually tested. Provide your own auth key, user, & room from https://www.hipchat.com/docs/apiv2/auth")
 public class HipchatProducerIntegrationTest extends CamelTestSupport {
+
     @EndpointInject(uri = "direct:start")
     private ProducerTemplate template;
 
@@ -81,7 +81,7 @@ public class HipchatProducerIntegrationTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                String hipchatEndpointUri = "hipchat://?authToken=XXXX";
+                String hipchatEndpointUri = "hipchat:http:api.hipchat.com?authToken=XXXX";
 
                 from("direct:start")
                         .to(hipchatEndpointUri)