1 17 package org.apache.forrest.forrestbot.webapp.action; 18 19 import java.io.File ; 20 21 import javax.servlet.http.HttpServletRequest ; 22 import javax.servlet.http.HttpServletResponse ; 23 24 import org.apache.forrest.forrestbot.webapp.Config; 25 import org.apache.forrest.forrestbot.webapp.Constants; 26 import org.apache.forrest.forrestbot.webapp.util.Project; 27 import org.apache.log4j.Logger; 28 import org.apache.struts.action.ActionError; 29 import org.apache.struts.action.ActionErrors; 30 import org.apache.struts.action.ActionForm; 31 import org.apache.struts.action.ActionForward; 32 import org.apache.struts.action.ActionMapping; 33 34 public final class ViewLogBodyAction extends BaseAction { 35 private static Logger log = Logger.getLogger(ViewLogBodyAction.class); 36 37 public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { 38 super.execute(mapping, form, request, response); 39 40 ActionErrors errors = new ActionErrors(); 41 42 String refreshrate = Config.getProperty("refreshrate"); 43 String project = request.getParameter("project"); 44 String logfile = null; 45 46 if (!Project.exists(project)) { 48 log.warn("project doesn't exist: " + project); 49 errors.add("logfile", new ActionError("error.project.notfound", project)); 50 } 51 52 if (errors.isEmpty()) { 53 logfile = Config.getProperty("logs-dir") + "/" + project + ".log"; 54 log.debug(logfile); 55 File f = new File (logfile); 56 if (!f.isFile()) { 57 log.warn("couldn't find file: " + logfile); 58 errors.add("logfile", new ActionError("error.logfile.notfound", logfile)); 59 } 60 } 61 log.debug("errors: " + errors.size()); 62 saveErrors(request, errors); 63 64 response.addHeader("Refresh", refreshrate); 65 66 if (errors.isEmpty()) 68 request.setAttribute("logfile", logfile); 69 else 70 request.setAttribute("logfile", null); 71 72 return mapping.findForward(Constants.FORWARD_NAME_SUCCESS); 73 74 } 75 76 } 77 | Popular Tags |