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 9597575 Fix https://github.com/apache/camel-k/issues/1813 9597575 is described below commit 95975751af4df54037eb751ae3cee8e1be22618e Author: nicolaferraro <ni.ferr...@gmail.com> AuthorDate: Mon Nov 30 15:06:41 2020 +0100 Fix https://github.com/apache/camel-k/issues/1813 --- .../camel/component/knative/http/KnativeHttpTest.java | 17 +++++++++++------ .../knative/ce/AbstractCloudEventProcessor.java | 2 +- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/components/camel-knative/camel-knative-http/src/test/java/org/apache/camel/component/knative/http/KnativeHttpTest.java b/components/camel-knative/camel-knative-http/src/test/java/org/apache/camel/component/knative/http/KnativeHttpTest.java index 0a6509e..92d4c75 100644 --- a/components/camel-knative/camel-knative-http/src/test/java/org/apache/camel/component/knative/http/KnativeHttpTest.java +++ b/components/camel-knative/camel-knative-http/src/test/java/org/apache/camel/component/knative/http/KnativeHttpTest.java @@ -215,6 +215,7 @@ public class KnativeHttpTest { RouteBuilder.addRoutes(context, b -> { b.from("direct:source") + .routeId("my-source") .to("knative:endpoint/myEndpoint"); b.from("platform-http:/a/path") .to("mock:ce"); @@ -225,7 +226,7 @@ public class KnativeHttpTest { MockEndpoint mock = context.getEndpoint("mock:ce", MockEndpoint.class); mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_VERSION), ce.version()); mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TYPE), "org.apache.camel.event"); - mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE), "knative://endpoint/myEndpoint"); + mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE), "my-source"); mock.expectedHeaderReceived(Exchange.CONTENT_TYPE, "text/plain"); mock.expectedMessagesMatches(e -> e.getMessage().getHeaders().containsKey(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TIME))); mock.expectedMessagesMatches(e -> e.getMessage().getHeaders().containsKey(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_ID))); @@ -256,6 +257,7 @@ public class KnativeHttpTest { RouteBuilder.addRoutes(context, b -> { b.from("direct:source") + .routeId("my-source") .to("knative:endpoint/myEndpoint"); b.from("platform-http:/a/path") .to("mock:ce"); @@ -266,7 +268,7 @@ public class KnativeHttpTest { MockEndpoint mock = context.getEndpoint("mock:ce", MockEndpoint.class); mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_VERSION), ce.version()); mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TYPE), "org.apache.camel.event"); - mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE), "knative://endpoint/myEndpoint"); + mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE), "my-source"); mock.expectedHeaderReceived(Exchange.CONTENT_TYPE, "text/plain"); mock.expectedMessagesMatches(e -> e.getMessage().getHeaders().containsKey(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TIME))); mock.expectedMessagesMatches(e -> e.getMessage().getHeaders().containsKey(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_ID))); @@ -298,6 +300,7 @@ public class KnativeHttpTest { RouteBuilder.addRoutes(context, b -> { b.from("direct:source") + .routeId("my-source") .to("knative:endpoint/myEndpoint"); b.from("platform-http:/a/path/with/subpath") .to("mock:ce"); @@ -308,7 +311,7 @@ public class KnativeHttpTest { MockEndpoint mock = context.getEndpoint("mock:ce", MockEndpoint.class); mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_VERSION), ce.version()); mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TYPE), "org.apache.camel.event"); - mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE), "knative://endpoint/myEndpoint"); + mock.expectedHeaderReceived(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE), "my-source"); mock.expectedHeaderReceived(Exchange.CONTENT_TYPE, "text/plain"); mock.expectedMessagesMatches(e -> e.getMessage().getHeaders().containsKey(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TIME))); mock.expectedMessagesMatches(e -> e.getMessage().getHeaders().containsKey(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_ID))); @@ -1456,7 +1459,7 @@ public class KnativeHttpTest { assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_VERSION))).isEqualTo(ce.version()); assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TYPE))).isEqualTo("org.apache.camel.event"); assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_ID))).isNotNull(); - assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE))).isEqualTo("knative://endpoint/ep"); + assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE))).isNotNull(); assertThat(request.getHeader(Exchange.CONTENT_TYPE)).isEqualTo("text/plain"); } finally { server.stop(); @@ -1666,6 +1669,7 @@ public class KnativeHttpTest { RouteBuilder.addRoutes(context, b -> { b.from("direct:start") + .routeId("my-source") .setHeader(CloudEvent.CAMEL_CLOUD_EVENT_TYPE).constant("myType") .to("knative:endpoint/ep"); }); @@ -1679,7 +1683,7 @@ public class KnativeHttpTest { assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_VERSION))).isEqualTo(ce.version()); assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TYPE))).isEqualTo("myType"); assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_ID))).isNotNull(); - assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE))).isEqualTo("knative://endpoint/ep"); + assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE))).isEqualTo("my-source"); assertThat(request.getHeader(Exchange.CONTENT_TYPE)).isEqualTo("text/plain"); } finally { server.stop(); @@ -1707,6 +1711,7 @@ public class KnativeHttpTest { RouteBuilder.addRoutes(context, b -> { b.from("direct:start") + .routeId("my-source-x") .setHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TYPE)).constant("fromCEHeader") .setHeader(CloudEvent.CAMEL_CLOUD_EVENT_TYPE).constant("fromCamelHeader") .to("knative:endpoint/ep"); @@ -1721,7 +1726,7 @@ public class KnativeHttpTest { assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_VERSION))).isEqualTo(ce.version()); assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_TYPE))).isEqualTo("fromCEHeader"); assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_ID))).isNotNull(); - assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE))).isEqualTo("knative://endpoint/ep"); + assertThat(request.getHeader(httpAttribute(ce, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE))).isEqualTo("my-source-x"); assertThat(request.getHeader(Exchange.CONTENT_TYPE)).isEqualTo("text/plain"); } finally { server.stop(); diff --git a/components/camel-knative/camel-knative/src/main/java/org/apache/camel/component/knative/ce/AbstractCloudEventProcessor.java b/components/camel-knative/camel-knative/src/main/java/org/apache/camel/component/knative/ce/AbstractCloudEventProcessor.java index 322f50b..2ca7e8f 100644 --- a/components/camel-knative/camel-knative/src/main/java/org/apache/camel/component/knative/ce/AbstractCloudEventProcessor.java +++ b/components/camel-knative/camel-knative/src/main/java/org/apache/camel/component/knative/ce/AbstractCloudEventProcessor.java @@ -118,7 +118,7 @@ abstract class AbstractCloudEventProcessor implements CloudEventProcessor { } setCloudEventHeader(headers, CloudEvent.CAMEL_CLOUD_EVENT_ID, exchange::getExchangeId); - setCloudEventHeader(headers, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE, endpoint::getEndpointUri); + setCloudEventHeader(headers, CloudEvent.CAMEL_CLOUD_EVENT_SOURCE, exchange::getFromRouteId); setCloudEventHeader(headers, CloudEvent.CAMEL_CLOUD_EVENT_VERSION, ce::version); setCloudEventHeader(headers, CloudEvent.CAMEL_CLOUD_EVENT_TIME, () -> { final ZonedDateTime created = ZonedDateTime.ofInstant(Instant.ofEpochMilli(exchange.getCreated()), ZoneId.systemDefault());