package org.kisst.gft.poller;
import java.util.HashMap;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.eclipse.jetty.server.Connector;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.AbstractHandler;
import org.kisst.gft.admin.BaseServlet;
import org.kisst.props4j.Props;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class PollerAdmin extends AbstractHandler {
private final static Logger logger=LoggerFactory.getLogger(PollerAdmin.class);
private Server server=null;
private final Props props;
public PollerAdmin(Props props)
{
this.props=props;
}
private HashMap<String, BaseServlet> handlerMap=new HashMap<String, BaseServlet>();
public void handle(String target,Request baseRequest,HttpServletRequest request,HttpServletResponse response)
{
String path=request.getRequestURI();
baseRequest.setHandled(true);
try {
for (String prefix : handlerMap.keySet()) {
if (path.startsWith(prefix)) {
handlerMap.get(prefix).handle(request, response);
return;
}
}
handlerMap.get("default").handle(request, response);
}
catch (Exception e) {
logger.error("Error when handling "+path, e);
}
}
}