01: /*
02: * Copyright (C) 2006 Methodhead Software LLC. All rights reserved.
03: *
04: * This file is part of TransferCM.
05: *
06: * TransferCM is free software; you can redistribute it and/or modify it under the
07: * terms of the GNU General Public License as published by the Free Software
08: * Foundation; either version 2 of the License, or (at your option) any later
09: * version.
10: *
11: * TransferCM is distributed in the hope that it will be useful, but WITHOUT ANY
12: * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13: * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
14: * details.
15: *
16: * You should have received a copy of the GNU General Public License along with
17: * TransferCM; if not, write to the Free Software Foundation, Inc., 51 Franklin St,
18: * Fifth Floor, Boston, MA 02110-1301 USA
19: */
20:
21: package com.methodhead.transfer;
22:
23: import java.io.Serializable;
24: import javax.servlet.http.HttpServletRequest;
25:
26: import org.apache.struts.action.ActionMapping;
27: import org.apache.struts.action.ActionErrors;
28: import org.apache.struts.action.ActionError;
29: import org.apache.struts.validator.DynaValidatorForm;
30: import com.methodhead.aikp.IntKey;
31: import com.methodhead.sitecontext.SiteContext;
32: import org.apache.log4j.Logger;
33: import java.util.List;
34:
35: /**
36: * Extends base class to set <code>installedExtensions</code> and
37: * <code>extensions</code> in <code>reset()</code>.
38: */
39: public class SiteContextForm extends
40: com.methodhead.sitecontext.SiteContextForm implements
41: Serializable {
42:
43: public void reset(ActionMapping mapping, HttpServletRequest request) {
44:
45: super .reset(mapping, request);
46:
47: SiteExtension siteExtension = new SiteExtension();
48:
49: //
50: // set installedExtensions, the list of all extensions available
51: //
52: set("installedExtensions", siteExtension
53: .getInstalledExtensions());
54:
55: if (logger_.isDebugEnabled()) {
56: Extension[] extensions = (Extension[]) get("installedExtensions");
57: logger_.debug("Found " + extensions.length
58: + " installed extension(s)");
59: }
60:
61: if (!"new".equals(get("action"))) {
62: //
63: // set extensions, the list of all extensions enabled for the selected
64: // site context
65: //
66: SiteContext siteContext = new SiteContext();
67: siteContext.load(new IntKey(request.getParameter("id")));
68:
69: set("extensions", siteExtension
70: .loadAllForSiteContext(siteContext));
71:
72: if (logger_.isDebugEnabled()) {
73: List list = (List) get("extensions");
74: logger_.debug("Found " + list.size()
75: + " enabled extension(s) for " + siteContext);
76: }
77: }
78: }
79:
80: private static Logger logger_ = Logger
81: .getLogger(SiteContextForm.class);
82: }
|