package net.sourceforge.cobertura.webapp;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintStream;
public class FlushCoberturaServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
try {
String className = "net.sourceforge.cobertura.coveragedata.ProjectData";
String methodName = "saveGlobalProjectData";
Class saveClass = Class.forName(className);
java.lang.reflect.Method saveMethod = saveClass.getDeclaredMethod(
methodName, new Class[0]);
saveMethod.invoke(null, new Object[0]);
} catch (Throwable t) {
PrintStream ps = new PrintStream(resp.getOutputStream());
ps
.println("<HTML><BODY><P>Could not save Cobertura data. Make sure cobertura.jar is in the web server's lib directory: "
+ t.getLocalizedMessage());
ps.print("<P>");
t.printStackTrace(ps);
ps.println("</BODY></HTML>");
resp.flushBuffer();
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doGet(req, resp);
}
}