package de.juwimm.cms.custom.valve;
import java.io.IOException;
import javax.servlet.ServletException;
import org.apache.catalina.connector.Request;
import org.apache.catalina.connector.Response;
import org.apache.catalina.util.URL;
import org.apache.catalina.valves.ValveBase;
public class TizzitCustomCookieValve extends ValveBase {
public void invoke(Request request, Response response) throws IOException,
ServletException {
try {
String urlAdress=request.getRequestURL().toString();
URL url = new URL(urlAdress);
String host = url.getHost();
String[] tokens = host.split("\\.");
//only use this valve if host is not an ip address
if(!tokens[tokens.length-1].matches("\\d{1,3}")) {
String domain="";
if (tokens.length>=2 ){
domain="."+tokens[tokens.length-2]+"."+tokens[tokens.length-1];
} else {
domain=url.getHost();
}
ResponseWrapper wr=new ResponseWrapper(response,null,domain);
request.setResponse(wr);
}
getNext().invoke(request, response);
} finally {
request.setResponse(response);
}
}
}