KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > forrest > forrestbot > webapp > action > ViewLogBodyAction


1 /*
2 * Copyright 2002-2004 The Apache Software Foundation or its licensors,
3 * as applicable.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */

17 package org.apache.forrest.forrestbot.webapp.action;
18
19 import java.io.File JavaDoc;
20
21 import javax.servlet.http.HttpServletRequest JavaDoc;
22 import javax.servlet.http.HttpServletResponse JavaDoc;
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 JavaDoc request, HttpServletResponse JavaDoc response) throws Exception JavaDoc {
38         super.execute(mapping, form, request, response);
39
40         ActionErrors errors = new ActionErrors();
41
42         String JavaDoc refreshrate = Config.getProperty("refreshrate");
43         String JavaDoc project = request.getParameter("project");
44         String JavaDoc logfile = null;
45
46         // security checks
47
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 JavaDoc f = new File JavaDoc(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         //request.setAttribute("refreshrate", refreshrate);
67
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