package scrum.server.journal;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import scrum.server.ScrumWebApplication;
import scrum.server.WebSession;
import scrum.server.common.AHttpServlet;
import scrum.server.project.Project;
import scrum.server.project.ProjectDao;
public class JournalRssServlet extends AHttpServlet {
private static final long serialVersionUID = 1;
private ProjectDao projectDao;
@Override
protected void onRequest(HttpServletRequest req, HttpServletResponse resp, WebSession session) throws IOException {
// TODO auth
String projectId = req.getParameter("projectId");
if (projectId == null) throw new RuntimeException("projectId == null");
Project project = projectDao.getById(projectId);
resp.setContentType("application/rss+xml");
String urlBase = req.getRequestURL().toString();
urlBase = urlBase.substring(0, urlBase.indexOf("/scrum.ScrumGwtApplication/") + 1);
project.writeJournalAsRss(resp.getOutputStream(), "UTF-8", urlBase);
}
@Override
protected void onInit(ServletConfig config) {
ScrumWebApplication app = ScrumWebApplication.get(config);
projectDao = app.getProjectDao();
}
}