|
@ -0,0 +1,34 @@
|
|
|
package com.yihu.hos.agent.camelrouter;
|
|
|
|
|
|
import org.apache.camel.Exchange;
|
|
|
import org.apache.camel.Header;
|
|
|
import org.apache.camel.Message;
|
|
|
import org.apache.camel.Processor;
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
|
|
|
public class GatewayProcessor implements Processor {
|
|
|
public void process(Exchange exchange) throws Exception {
|
|
|
Message in = exchange.getIn();
|
|
|
String query = (String) in.getHeader(Exchange.HTTP_QUERY);
|
|
|
if (query != null) {
|
|
|
String[] values = query.split("=");
|
|
|
if (values.length == 2 && values[0].equals("api")) {
|
|
|
in.setHeader("api", values[1]);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
public String route(@Header("api") String api) {
|
|
|
if (api == null) {
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
Map<String, String> apiRoute = new HashMap<>();
|
|
|
apiRoute.put("swagger", "jetty:http://192.168.1.221:10000/swagger-ui.html?bridgeEndpoint=true&throwExceptionOnFailure=false");
|
|
|
|
|
|
return apiRoute.get(api);
|
|
|
}
|
|
|
}
|