You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by lb...@apache.org on 2019/04/05 17:51:53 UTC

[camel-k-runtime] branch master updated: Fixed comnpatibility with camel 2.21.x

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

lburgazzoli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k-runtime.git


The following commit(s) were added to refs/heads/master by this push:
     new b77ea7e  Fixed comnpatibility with camel 2.21.x
b77ea7e is described below

commit b77ea7e52f96fc631d9c48347427be3ff66d9c0e
Author: Andrea Tarocchi <at...@redhat.com>
AuthorDate: Fri Apr 5 19:14:24 2019 +0200

    Fixed comnpatibility with camel 2.21.x
---
 .../apache/camel/component/knative/Knative.java    |  4 ++
 .../camel/component/knative/KnativeEndpoint.java   | 12 +++---
 .../component/knative/KnativeEnvironment.java      | 26 ++++++------
 .../camel/component/knative/KnativeSupport.java    | 14 +++++++
 .../component/knative/CloudEventsV01Test.java      | 27 ++++++------
 .../component/knative/CloudEventsV02Test.java      | 27 ++++++------
 .../component/knative/KnativeComponentTest.java    | 48 +++++++++++-----------
 7 files changed, 83 insertions(+), 75 deletions(-)

diff --git a/camel-knative/src/main/java/org/apache/camel/component/knative/Knative.java b/camel-knative/src/main/java/org/apache/camel/component/knative/Knative.java
index 4ea19d4..fe9e43a 100644
--- a/camel-knative/src/main/java/org/apache/camel/component/knative/Knative.java
+++ b/camel-knative/src/main/java/org/apache/camel/component/knative/Knative.java
@@ -31,6 +31,10 @@ public final class Knative {
     public static final String CONTENT_TYPE = "content.type";
     public static final String MIME_STRUCTURED_CONTENT_MODE = "application/cloudevents+json";
 
+    public static final String SERVICE_META_HOST = "service.host";
+    public static final String SERVICE_META_ZONE = "service.zone";
+    public static final String SERVICE_META_PATH = "service.path";
+
     private Knative() {
     }
 
diff --git a/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeEndpoint.java b/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeEndpoint.java
index 8b2c45f..cd84a8d 100644
--- a/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeEndpoint.java
+++ b/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeEndpoint.java
@@ -16,9 +16,6 @@
  */
 package org.apache.camel.component.knative;
 
-import java.util.HashMap;
-import java.util.Map;
-
 import org.apache.camel.CamelContext;
 import org.apache.camel.Consumer;
 import org.apache.camel.DelegateEndpoint;
@@ -38,6 +35,9 @@ import org.apache.camel.util.ObjectHelper;
 import org.apache.camel.util.StringHelper;
 import org.apache.camel.util.URISupport;
 
+import java.util.HashMap;
+import java.util.Map;
+
 
 @UriEndpoint(
     firstVersion = "3.0.0",
@@ -154,7 +154,7 @@ public class KnativeEndpoint extends DefaultEndpoint implements DelegateEndpoint
 
             if (ObjectHelper.isEmpty(host)) {
                 String name = definition.getName();
-                String zone = definition.getMetadata().get(ServiceDefinition.SERVICE_META_ZONE);
+                String zone = definition.getMetadata().get(Knative.SERVICE_META_ZONE);
 
                 if (ObjectHelper.isNotEmpty(zone)) {
                     try {
@@ -170,7 +170,7 @@ public class KnativeEndpoint extends DefaultEndpoint implements DelegateEndpoint
                 host = name;
             }
 
-            ObjectHelper.notNull(host, ServiceDefinition.SERVICE_META_HOST);
+            ObjectHelper.notNull(host, Knative.SERVICE_META_HOST);
             ObjectHelper.notNull(protocol, Knative.KNATIVE_PROTOCOL);
 
             String uri = String.format("%s:%s://%s", scheme, protocol, host);
@@ -178,7 +178,7 @@ public class KnativeEndpoint extends DefaultEndpoint implements DelegateEndpoint
                 uri = uri + ":" + port;
             }
 
-            String path = definition.getMetadata().get(ServiceDefinition.SERVICE_META_PATH);
+            String path = definition.getMetadata().get(Knative.SERVICE_META_PATH);
             if (path != null) {
                 if (!path.startsWith("/")) {
                     uri += "/";
diff --git a/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeEnvironment.java b/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeEnvironment.java
index 2e8b710..c1dfbc4 100644
--- a/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeEnvironment.java
+++ b/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeEnvironment.java
@@ -16,6 +16,14 @@
  */
 package org.apache.camel.component.knative;
 
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import org.apache.camel.CamelContext;
+import org.apache.camel.impl.cloud.DefaultServiceDefinition;
+import org.apache.camel.k.adapter.Resources;
+import org.apache.camel.util.CollectionHelper;
+import org.apache.camel.util.StringHelper;
+
 import java.io.InputStream;
 import java.io.Reader;
 import java.io.StringReader;
@@ -29,15 +37,6 @@ import java.util.Optional;
 import java.util.UUID;
 import java.util.stream.Stream;
 
-import com.fasterxml.jackson.annotation.JsonCreator;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import org.apache.camel.CamelContext;
-import org.apache.camel.cloud.ServiceDefinition;
-import org.apache.camel.impl.cloud.DefaultServiceDefinition;
-import org.apache.camel.k.adapter.Resources;
-import org.apache.camel.util.CollectionHelper;
-import org.apache.camel.util.StringHelper;
-
 /*
  * Assuming it is loaded from a json for now
  */
@@ -104,7 +103,7 @@ public class KnativeEnvironment {
                          definition.getPort(),
                          KnativeSupport.mergeMaps(
                              definition.getMetadata(),
-                             Collections.singletonMap(ServiceDefinition.SERVICE_META_PATH, "/" + contextPath)
+                             Collections.singletonMap(Knative.SERVICE_META_PATH, "/" + contextPath)
                          )
                      );
                  }
@@ -125,7 +124,7 @@ public class KnativeEnvironment {
 
         }
         if (contextPath != null) {
-            meta.put(ServiceDefinition.SERVICE_META_PATH, "/" + contextPath);
+            meta.put(Knative.SERVICE_META_PATH, "/" + contextPath);
         }
 
         return new KnativeEnvironment.KnativeServiceDefinition(
@@ -190,13 +189,12 @@ public class KnativeEnvironment {
             @JsonProperty(value = "metadata", required = false) Map<String, String> metadata) {
 
             super(
-                UUID.randomUUID().toString(),
                 name,
                 host,
                 port,
                 KnativeSupport.mergeMaps(
                     metadata,
-                    CollectionHelper.mapOf(
+                    KnativeSupport.mapOf(
                         Knative.KNATIVE_TYPE, type.name(),
                         Knative.KNATIVE_PROTOCOL, protocol.name())
                 )
@@ -212,7 +210,7 @@ public class KnativeEnvironment {
         }
 
         public String getPath() {
-            return getMetadata().get(ServiceDefinition.SERVICE_META_PATH);
+            return getMetadata().get(Knative.SERVICE_META_PATH);
         }
 
         public String getEventType() {
diff --git a/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeSupport.java b/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeSupport.java
index 9c6c049..1fd9dcc 100644
--- a/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeSupport.java
+++ b/camel-knative/src/main/java/org/apache/camel/component/knative/KnativeSupport.java
@@ -43,4 +43,18 @@ public final class KnativeSupport {
 
         return answer;
     }
+
+    public static <K, V> Map<K, V> mapOf(K key, V value, Object... keyVals) {
+        Map<K, V> map = new HashMap<>();
+        map.put(key, value);
+
+        for (int i = 0; i < keyVals.length; i += 2) {
+            map.put(
+                    (K) keyVals[i],
+                    (V) keyVals[i + 1]
+            );
+        }
+
+        return map;
+    }
 }
diff --git a/camel-knative/src/test/java/org/apache/camel/component/knative/CloudEventsV01Test.java b/camel-knative/src/test/java/org/apache/camel/component/knative/CloudEventsV01Test.java
index f5a9ecc..e4155d1 100644
--- a/camel-knative/src/test/java/org/apache/camel/component/knative/CloudEventsV01Test.java
+++ b/camel-knative/src/test/java/org/apache/camel/component/knative/CloudEventsV01Test.java
@@ -16,15 +16,10 @@
  */
 package org.apache.camel.component.knative;
 
-import java.time.ZonedDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.Arrays;
-
 import com.fasterxml.jackson.databind.ObjectMapper;
 import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.cloud.ServiceDefinition;
 import org.apache.camel.component.knative.ce.CloudEventsProcessors;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.impl.DefaultCamelContext;
@@ -33,7 +28,9 @@ import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
-import static org.apache.camel.util.CollectionHelper.mapOf;
+import java.time.ZonedDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.Arrays;
 
 public class CloudEventsV01Test {
 
@@ -74,8 +71,8 @@ public class CloudEventsV01Test {
                 "myEndpoint",
                 "localhost",
                 port,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain"
                 ))
@@ -129,8 +126,8 @@ public class CloudEventsV01Test {
                 "myEndpoint",
                 "localhost",
                 port,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain"
                 ))
@@ -167,7 +164,7 @@ public class CloudEventsV01Test {
             "direct:source",
             e -> {
                 e.getIn().setHeader(Exchange.CONTENT_TYPE, Knative.MIME_STRUCTURED_CONTENT_MODE);
-                e.getIn().setBody(new ObjectMapper().writeValueAsString(mapOf(
+                e.getIn().setBody(new ObjectMapper().writeValueAsString(KnativeSupport.mapOf(
                     "cloudEventsVersion", CloudEventsProcessors.v01.getVersion(),
                     "eventType", "org.apache.camel.event",
                     "eventID", "myEventID",
@@ -192,8 +189,8 @@ public class CloudEventsV01Test {
                 "myEndpoint",
                 "localhost",
                 port,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain"
                 ))
@@ -253,7 +250,7 @@ public class CloudEventsV01Test {
                 "ep1",
                 "localhost",
                 port,
-                mapOf(
+                KnativeSupport.mapOf(
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain",
                     Knative.FILTER_HEADER_NAME, "CE-Source",
@@ -265,7 +262,7 @@ public class CloudEventsV01Test {
                 "ep2",
                 "localhost",
                 port,
-                mapOf(
+                KnativeSupport.mapOf(
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain",
                     Knative.FILTER_HEADER_NAME, "CE-Source",
diff --git a/camel-knative/src/test/java/org/apache/camel/component/knative/CloudEventsV02Test.java b/camel-knative/src/test/java/org/apache/camel/component/knative/CloudEventsV02Test.java
index 3c32915..71faad4 100644
--- a/camel-knative/src/test/java/org/apache/camel/component/knative/CloudEventsV02Test.java
+++ b/camel-knative/src/test/java/org/apache/camel/component/knative/CloudEventsV02Test.java
@@ -16,15 +16,10 @@
  */
 package org.apache.camel.component.knative;
 
-import java.time.ZonedDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.Arrays;
-
 import com.fasterxml.jackson.databind.ObjectMapper;
 import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.cloud.ServiceDefinition;
 import org.apache.camel.component.knative.ce.CloudEventsProcessors;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.impl.DefaultCamelContext;
@@ -33,7 +28,9 @@ import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
-import static org.apache.camel.util.CollectionHelper.mapOf;
+import java.time.ZonedDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.Arrays;
 
 public class CloudEventsV02Test {
 
@@ -74,8 +71,8 @@ public class CloudEventsV02Test {
                 "myEndpoint",
                 "localhost",
                 port,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain"
                 ))
@@ -129,8 +126,8 @@ public class CloudEventsV02Test {
                 "myEndpoint",
                 "localhost",
                 port,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain"
                 ))
@@ -167,7 +164,7 @@ public class CloudEventsV02Test {
             "direct:source",
             e -> {
                 e.getIn().setHeader(Exchange.CONTENT_TYPE, Knative.MIME_STRUCTURED_CONTENT_MODE);
-                e.getIn().setBody(new ObjectMapper().writeValueAsString(mapOf(
+                e.getIn().setBody(new ObjectMapper().writeValueAsString(KnativeSupport.mapOf(
                     "specversion", CloudEventsProcessors.v02.getVersion(),
                     "type", "org.apache.camel.event",
                     "id", "myEventID",
@@ -192,8 +189,8 @@ public class CloudEventsV02Test {
                 "myEndpoint",
                 "localhost",
                 port,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain"
                 ))
@@ -253,7 +250,7 @@ public class CloudEventsV02Test {
                 "ep1",
                 "localhost",
                 port,
-                mapOf(
+                KnativeSupport.mapOf(
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain",
                     Knative.FILTER_HEADER_NAME, "ce-source",
@@ -265,7 +262,7 @@ public class CloudEventsV02Test {
                 "ep2",
                 "localhost",
                 port,
-                mapOf(
+                KnativeSupport.mapOf(
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain",
                     Knative.FILTER_HEADER_NAME, "ce-source",
diff --git a/camel-knative/src/test/java/org/apache/camel/component/knative/KnativeComponentTest.java b/camel-knative/src/test/java/org/apache/camel/component/knative/KnativeComponentTest.java
index bd9107d..21212e4 100644
--- a/camel-knative/src/test/java/org/apache/camel/component/knative/KnativeComponentTest.java
+++ b/camel-knative/src/test/java/org/apache/camel/component/knative/KnativeComponentTest.java
@@ -16,17 +16,10 @@
  */
 package org.apache.camel.component.knative;
 
-import java.time.ZonedDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Properties;
-
 import com.fasterxml.jackson.databind.ObjectMapper;
 import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.cloud.ServiceDefinition;
 import org.apache.camel.component.knative.ce.CloudEventsProcessors;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.component.netty4.NettyEndpoint;
@@ -37,8 +30,13 @@ import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
+import java.time.ZonedDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Properties;
+
 import static org.apache.camel.component.knative.KnativeEnvironment.mandatoryLoadFromResource;
-import static org.apache.camel.util.CollectionHelper.mapOf;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
@@ -119,7 +117,7 @@ public class KnativeComponentTest {
                 "myEndpoint",
                 "my-node",
                 9001,
-                mapOf(ServiceDefinition.SERVICE_META_PATH, "/a/path"))
+                KnativeSupport.mapOf(Knative.SERVICE_META_PATH, "/a/path"))
         ));
 
         KnativeComponent component = context.getComponent("knative", KnativeComponent.class);
@@ -171,7 +169,7 @@ public class KnativeComponentTest {
                 "myEndpoint",
                 "",
                 -1,
-                mapOf(ServiceDefinition.SERVICE_META_PATH, "/a/path"))
+                KnativeSupport.mapOf(Knative.SERVICE_META_PATH, "/a/path"))
         ));
 
         KnativeComponent component = context.getComponent("knative", KnativeComponent.class);
@@ -204,9 +202,9 @@ public class KnativeComponentTest {
                 "myEndpoint",
                 "",
                 -1,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
-                    ServiceDefinition.SERVICE_META_ZONE, "myNamespace"))
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
+                        Knative.SERVICE_META_ZONE, "myNamespace"))
         ));
 
         KnativeComponent component = context.getComponent("knative", KnativeComponent.class);
@@ -239,9 +237,9 @@ public class KnativeComponentTest {
                 "myEndpoint",
                 "",
                 -1,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
-                    ServiceDefinition.SERVICE_META_ZONE, "{{myNamespaceKey}}"))
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
+                    Knative.SERVICE_META_ZONE, "{{myNamespaceKey}}"))
         ));
 
         Properties properties = new Properties();
@@ -324,8 +322,8 @@ public class KnativeComponentTest {
                 "myEndpoint",
                 "localhost",
                 port,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain"
                 ))
@@ -379,8 +377,8 @@ public class KnativeComponentTest {
                 "myEndpoint",
                 "localhost",
                 port,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain"
                 ))
@@ -417,7 +415,7 @@ public class KnativeComponentTest {
             "direct:source",
             e -> {
                 e.getIn().setHeader(Exchange.CONTENT_TYPE, Knative.MIME_STRUCTURED_CONTENT_MODE);
-                e.getIn().setBody(new ObjectMapper().writeValueAsString(mapOf(
+                e.getIn().setBody(new ObjectMapper().writeValueAsString(KnativeSupport.mapOf(
                     "cloudEventsVersion", "0.1",
                     "eventType", "org.apache.camel.event",
                     "eventID", "myEventID",
@@ -443,8 +441,8 @@ public class KnativeComponentTest {
                 "myEndpoint",
                 "localhost",
                 port,
-                mapOf(
-                    ServiceDefinition.SERVICE_META_PATH, "/a/path",
+                KnativeSupport.mapOf(
+                    Knative.SERVICE_META_PATH, "/a/path",
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain"
                 ))
@@ -504,7 +502,7 @@ public class KnativeComponentTest {
                 "ep1",
                 "localhost",
                 port,
-                mapOf(
+                KnativeSupport.mapOf(
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain",
                     Knative.FILTER_HEADER_NAME, "CE-Source",
@@ -516,7 +514,7 @@ public class KnativeComponentTest {
                 "ep2",
                 "localhost",
                 port,
-                mapOf(
+                KnativeSupport.mapOf(
                     Knative.KNATIVE_EVENT_TYPE, "org.apache.camel.event",
                     Knative.CONTENT_TYPE, "text/plain",
                     Knative.FILTER_HEADER_NAME, "CE-Source",