1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.fhw.cabaweb.webfrontend.forms.simple;
20
21 import java.util.Iterator;
22
23 import javax.servlet.http.HttpServletRequest;
24
25 import org.apache.commons.logging.Log;
26 import org.apache.commons.logging.LogFactory;
27 import org.apache.struts.action.ActionError;
28 import org.apache.struts.action.ActionErrors;
29 import org.apache.struts.action.ActionForm;
30 import org.apache.struts.action.ActionMapping;
31
32 /***
33 * Formularklasse der MVC Architektur von Struts.
34 * In diesem Fall für eine einzelne Sprache (Create/Delete/Edit einer Sprache)
35 *
36 * @author <a href="mailto:thomas.vogt@tvc-software.com">Thomas Vogt</a>
37 * @version Version 1.0 01.07.2004
38 */
39 public final class SprachForm extends ActionForm
40 {
41 /***
42 * The <code>Log</code> instance for this application.
43 */
44 private Log log = LogFactory.getLog("org.fhw.cabaweb.webfrontend.forms.simple");
45
46
47 /*** Art der Aktion die wir durchführen wollen (Create, Delete or Edit) - Default ist Create. */
48 private String action = "Create";
49 /*** Die Sprachnummer */
50 private Integer sprachnummer = null;
51 /*** Der Sprachname */
52 private String sprachname = null;
53 /*** Wird die Sprache angezeigt ? */
54 private Boolean anzeigen = null;
55
56
57
58 /***
59 * GET Methode
60 *
61 * @return der Parameterwert
62 */
63 public String getAction()
64 {
65 return this.action;
66 }
67
68 /***
69 * SET Methode
70 *
71 * @param action Der zu setzende Parameterwert
72 */
73 public void setAction(String action)
74 {
75 this.action = action;
76 }
77
78 /***
79 * GET Methode
80 *
81 * @return der Parameterwert
82 */
83 public Integer getSprachnummer()
84 {
85 return this.sprachnummer;
86 }
87
88 /***
89 * GET Methode
90 *
91 * @return der Parameterwert
92 */
93 public String getSprachname()
94 {
95 return this.sprachname;
96 }
97
98 /***
99 * GET Methode
100 *
101 * @return der Parameterwert
102 */
103 public Boolean getAnzeigen()
104 {
105 return this.anzeigen;
106 }
107
108 /***
109 * SET Methode
110 *
111 * @param sprachnummer Der zu setzende Parameterwert
112 */
113 public void setSprachnummer(Integer sprachnummer)
114 {
115 this.sprachnummer = sprachnummer;
116 }
117
118 /***
119 * SET Methode
120 *
121 * @param sprachname Der zu setzende Parameterwert
122 */
123 public void setSprachname(String sprachname)
124 {
125 this.sprachname = sprachname;
126 }
127
128 /***
129 * SET Methode
130 *
131 * @param anzeigen Der zu setzende Parameterwert
132 */
133 public void setAnzeigen(Boolean anzeigen)
134 {
135 this.anzeigen = anzeigen;
136 }
137
138
139
140 /***
141 * Zurücksetzen aller Parameterwerte auf die Default Werte.
142 *
143 * @param mapping Das Mapping das benutzt wurde um diese Instanz zu selektieren
144 * @param request Die Servlet Anfrage die wir gerade bearbeiten
145 */
146 public void reset(ActionMapping mapping, HttpServletRequest request)
147 {
148 this.action = "Create";
149 this.sprachnummer = null;
150 this.sprachname = null;
151 this.anzeigen = null;
152 }
153
154 /***
155 * Validieren der mit diesem Request übergebenen Paramter Werte. Wenn Fehler
156 * bei der Validierung auftreten wird <code>ActionErrors</code> Objekt,
157 * das die Fehler enthält zurückgegeben.
158 * Wenn kein Fehler bei der Validierung auftritt wird <code>null</code> bzw.
159 * ein leeres <code>ActionErrors</code> Objekt zurückgegeben
160 *
161 * @param mapping Das Mapping das benutzt wurde um diese Instanz zu selektieren
162 * (siehe struts-config.xml)
163 * @param request Das Servlet Anfrage Objekt
164 */
165 public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)
166 {
167
168 ActionErrors errors = new ActionErrors();
169
170 if (sprachname == null || sprachname.length() <= 0)
171 errors.add("sprachname", new ActionError("error.field.edit.sprache.sprachname.empty"));
172 else if (sprachname.length() < 5)
173 errors.add("sprachname", new ActionError("error.field.edit.sprache.sprachname.minlength"));
174 else if (sprachname.length() > 20)
175 errors.add("sprachname", new ActionError("error.field.edit.sprache.sprachname.maxlength"));
176
177 if (log.isDebugEnabled())
178 {
179 Iterator iter = errors.get();
180
181 log.debug(" Form had errors:");
182 while (iter.hasNext())
183 {
184 log.debug(" " + ((ActionError) iter.next()).getKey());
185 }
186 }
187
188 return errors;
189 }
190 }