Skip to content

Instantly share code, notes, and snippets.

@davsclaus
Created August 8, 2021 10:26
Show Gist options
  • Save davsclaus/1a8d7b83913f9f6437b2be2029c1993d to your computer and use it in GitHub Desktop.
Save davsclaus/1a8d7b83913f9f6437b2be2029c1993d to your computer and use it in GitHub Desktop.
diff --git a/src/main/java/io/quarkus/camel/lambda/CamelRoute.java b/src/main/java/io/quarkus/camel/lambda/CamelRoute.java
index 200e51e..4e8de94 100644
--- a/src/main/java/io/quarkus/camel/lambda/CamelRoute.java
+++ b/src/main/java/io/quarkus/camel/lambda/CamelRoute.java
@@ -15,7 +15,6 @@ public class CamelRoute extends RouteBuilder {
public void configure() throws Exception {
from("direct:input").routeId("Test")
.log("Inside Camel Route Received Payload ==> ${body}")
- .bean(greetService,"greet(${body.name})")
- .end();
+ .setBody().body(Person.class, p -> greetService.greet(p.getName()));
}
}
\ No newline at end of file
diff --git a/src/main/java/io/quarkus/camel/lambda/GreetService.java b/src/main/java/io/quarkus/camel/lambda/GreetService.java
index 7e3525d..1794670 100644
--- a/src/main/java/io/quarkus/camel/lambda/GreetService.java
+++ b/src/main/java/io/quarkus/camel/lambda/GreetService.java
@@ -1,12 +1,8 @@
package io.quarkus.camel.lambda;
-import io.quarkus.runtime.annotations.RegisterForReflection;
-
import javax.enterprise.context.ApplicationScoped;
-import javax.inject.Named;
@ApplicationScoped
-@RegisterForReflection
public class GreetService {
public String greet(String name){
diff --git a/src/main/java/io/quarkus/camel/lambda/LambdaHandler.java b/src/main/java/io/quarkus/camel/lambda/LambdaHandler.java
index 8f26d60..6b5b5f8 100644
--- a/src/main/java/io/quarkus/camel/lambda/LambdaHandler.java
+++ b/src/main/java/io/quarkus/camel/lambda/LambdaHandler.java
@@ -5,6 +5,7 @@ import com.amazonaws.services.lambda.runtime.LambdaLogger;
import com.amazonaws.services.lambda.runtime.RequestHandler;
import org.apache.camel.CamelContext;
+import org.apache.camel.ProducerTemplate;
import javax.inject.Inject;
import javax.inject.Named;
@@ -15,10 +16,13 @@ public class LambdaHandler implements RequestHandler<Person, String> {
@Inject
CamelContext camelContext;
+ @Inject
+ ProducerTemplate template;
+
@Override
public String handleRequest(Person input, Context context) {
LambdaLogger logger = context.getLogger();
logger.log("Calling Camel Route :)");
- return camelContext.createProducerTemplate().requestBody("direct:input", input, String.class);
+ return template.requestBody("direct:input", input, String.class);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment