The idea is to filter the sources, replacing @<var>@ occurrences with the mapping for <var> (which is currently hard-coded). @@ -> @. In order to make this work, I had to move the doc sources one directory down (into akka-docs/rst) so that the filtered result could be in a sibling directory so that relative links (to _sphinx plugins or real code) would continue to work. While I was at it I also changed it so that WARNINGs and ERRORs are not swallowed into the debug dump anymore but printed at [warn] level (minimum). One piece of fallout is that the (online) html build is now run after the normal one, not in parallel.
38 lines
No EOL
1 KiB
Java
38 lines
No EOL
1 KiB
Java
package docs.camel.sample.http;
|
|
|
|
import akka.actor.ActorRef;
|
|
import akka.camel.CamelMessage;
|
|
import akka.camel.javaapi.UntypedProducerActor;
|
|
import org.apache.camel.Exchange;
|
|
|
|
import java.util.HashSet;
|
|
import java.util.Set;
|
|
|
|
//#HttpExample
|
|
public class HttpProducer extends UntypedProducerActor{
|
|
private ActorRef transformer;
|
|
|
|
public HttpProducer(ActorRef transformer) {
|
|
this.transformer = transformer;
|
|
}
|
|
|
|
public String getEndpointUri() {
|
|
return "jetty://http://akka.io/?bridgeEndpoint=true";
|
|
}
|
|
|
|
@Override
|
|
public Object onTransformOutgoingMessage(Object message) {
|
|
if (message instanceof CamelMessage) {
|
|
CamelMessage camelMessage = (CamelMessage) message;
|
|
Set<String> httpPath = new HashSet<String>();
|
|
httpPath.add(Exchange.HTTP_PATH);
|
|
return camelMessage.withHeaders(camelMessage.getHeaders(httpPath));
|
|
} else return super.onTransformOutgoingMessage(message);
|
|
}
|
|
|
|
@Override
|
|
public void onRouteResponse(Object message) {
|
|
transformer.forward(message, getContext());
|
|
}
|
|
}
|
|
//#HttpExample |