pekko/akka-docs/src/test/java/jdocs/camel/Responder.java

30 lines
770 B
Java
Raw Normal View History

/*
* Copyright (C) 2018 Lightbend Inc. <https://www.lightbend.com>
*/
package jdocs.camel;
2012-07-15 14:12:03 +02:00
//#CustomRoute
import akka.actor.UntypedAbstractActor;
2012-07-15 14:12:03 +02:00
import akka.camel.CamelMessage;
import akka.dispatch.Mapper;
2012-07-15 14:12:03 +02:00
public class Responder extends UntypedAbstractActor{
2012-07-15 14:12:03 +02:00
public void onReceive(Object message) {
if (message instanceof CamelMessage) {
CamelMessage camelMessage = (CamelMessage) message;
getSender().tell(createResponse(camelMessage), getSelf());
2012-07-15 14:12:03 +02:00
} else
unhandled(message);
}
private CamelMessage createResponse(CamelMessage msg) {
return msg.mapBody(new Mapper<String,String>() {
@Override
2012-07-15 14:12:03 +02:00
public String apply(String body) {
return String.format("received %s", body);
}
});
}
}
//#CustomRoute