package org.karmaexchange.bootstrap;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.karmaexchange.util.AdminUtil;
import org.karmaexchange.util.UserService;
import org.karmaexchange.util.AdminUtil.AdminTaskType;
@SuppressWarnings("serial")
public abstract class BootstrapServlet extends HttpServlet {
protected HttpServletRequest req;
protected PrintWriter statusWriter;
public abstract void execute();
@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
this.req = req;
resp.setContentType("text/plain");
this.statusWriter = resp.getWriter();
AdminUtil.setCurrentUser(AdminTaskType.BOOTSTRAP);
try {
execute();
} finally {
UserService.clearCurrentUser();
}
}
@Override
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
doGet(req, resp);
}
}