annotate common/src/main/java/digilib/util/ParameterMap.java @ 1158:2ee261676828 default tip

better out-of-the box experience: * digilib works without config files using sensible defaults * new sample images folder used by default * config files moved to templates
author robcast
date Tue, 19 Feb 2013 17:32:25 +0100
parents 7779b37d1d05
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
1 /* ParameterMap.java -- HashMap of Parameters.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
2
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
3 Digital Image Library servlet components
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
4
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
5 Copyright (C) 2003 Robert Casties (robcast@mail.berlios.de)
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
6
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
7 This program is free software; you can redistribute it and/or modify it
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
8 under the terms of the GNU General Public License as published by the
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
9 Free Software Foundation; either version 2 of the License, or (at your
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
10 option) any later version.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
11
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
12 Please read license.txt for the full details. A copy of the GPL
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
13 may be found at http://www.gnu.org/copyleft/lgpl.html
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
14
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
15 You should have received a copy of the GNU General Public License
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
16 along with this program; if not, write to the Free Software
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
18
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
19 * Created on 02.09.2003 by casties
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
20 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
21 */
557
0885f5ca5b24 more refactoring and rearranging
robcast
parents: 555
diff changeset
22 package digilib.util;
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
23
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
24 import java.util.HashMap;
557
0885f5ca5b24 more refactoring and rearranging
robcast
parents: 555
diff changeset
25
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
26
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
27 /** HashMap of digilib.servlet.Parameter's.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
28 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
29 * Keys are Strings. Values are Parameters.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
30 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
31 * @author casties
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
32 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
33 */
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
34 public class ParameterMap {
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
35
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
36 protected HashMap<String, Parameter> params;
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
37
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
38 protected OptionsSet options;
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
39
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
40 /** Default constructor.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
41 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
42 */
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
43 public ParameterMap() {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
44 params = new HashMap<String, Parameter>();
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
45 options = new OptionsSet();
552
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
46 initParams();
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
47 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
48
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
49 /** Constructor with initial size.
552
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
50 * @param size
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
51 */
552
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
52 public ParameterMap(int size) {
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
53 params = new HashMap<String, Parameter>(size);
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
54 options = new OptionsSet();
552
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
55 initParams();
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
56 }
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
57
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
58 /** Shallow copy constructor.
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
59 * Be warned that the maps are only cloned i.e. keys and values are shared!
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
60 * @param pm
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
61 */
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
62 @SuppressWarnings("unchecked")
557
0885f5ca5b24 more refactoring and rearranging
robcast
parents: 555
diff changeset
63 public static ParameterMap cloneInstance(ParameterMap pm) {
551
6c9eba7772cf more refactoring and cleanup
robcast
parents: 548
diff changeset
64 ParameterMap newPm = new ParameterMap();
552
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
65 // clone params to this map
551
6c9eba7772cf more refactoring and cleanup
robcast
parents: 548
diff changeset
66 newPm.params = (HashMap<String, Parameter>) pm.params.clone();
6c9eba7772cf more refactoring and cleanup
robcast
parents: 548
diff changeset
67 newPm.options = (OptionsSet) pm.options.clone();
6c9eba7772cf more refactoring and cleanup
robcast
parents: 548
diff changeset
68 return newPm;
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
69 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
70
552
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
71
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
72 /** Creates new ParameterMap by merging Parameters from another ParameterMap.
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
73 * @param pm
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
74 * @return
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
75 */
557
0885f5ca5b24 more refactoring and rearranging
robcast
parents: 555
diff changeset
76 public static ParameterMap getInstance(ParameterMap pm) {
552
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
77 ParameterMap newPm = new ParameterMap();
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
78 // add all params to this map
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
79 newPm.params.putAll(pm.params);
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
80 newPm.initOptions();
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
81 return newPm;
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
82 }
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
83
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
84 /** set up parameters
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
85 *
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
86 */
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
87 protected void initParams() {
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
88 // no default parameters
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
89 }
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
90
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
91 /** set up options
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
92 *
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
93 */
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
94 protected void initOptions() {
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
95 // no default options
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
96 }
785fc58b68b1 more cleanup and refactoring
robcast
parents: 551
diff changeset
97
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
98 /** Get the Parameter with the corresponding key.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
99 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
100 * Returns null if no element is associated with key.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
101 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
102 * @param key
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
103 * @return
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
104 */
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
105 public Parameter get(String key) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
106 return params.get(key);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
107 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
108
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
109 /** Get the Parameter with the corresponding key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
110 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
111 * Returns null if no element is associated with key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
112 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
113 * @param key
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
114 * @return
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
115 */
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
116 public Object getValue(String key) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
117 Parameter p = params.get(key);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
118 return (p != null) ? p.getValue() : null;
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
119 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
120
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
121 /** Get the Parameter with the corresponding key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
122 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
123 * Returns null if no element is associated with key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
124 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
125 * @param key
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
126 * @return
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
127 */
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
128 public String getAsString(String key) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
129 Parameter p = params.get(key);
555
88ed97d08b97 still refactoring
robcast
parents: 552
diff changeset
130 return (p != null) ? p.getAsString() : "";
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
131 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
132
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
133 /** Get the Parameter with the corresponding key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
134 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
135 * Returns null if no element is associated with key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
136 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
137 * @param key
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
138 * @return
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
139 */
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
140 public int getAsInt(String key) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
141 Parameter p = params.get(key);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
142 return (p != null) ? p.getAsInt() : 0;
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
143 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
144
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
145 /** Get the Parameter with the corresponding key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
146 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
147 * Returns null if no element is associated with key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
148 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
149 * @param key
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
150 * @return
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
151 */
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
152 public float getAsFloat(String key) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
153 Parameter p = params.get(key);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
154 return (p != null) ? p.getAsFloat() : 0f;
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
155 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
156
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
157 /** Get the Parameter with the corresponding key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
158 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
159 * Returns null if no element is associated with key.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
160 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
161 * @param key
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
162 * @return
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
163 */
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
164 public boolean getAsBoolean(String key) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
165 Parameter p = params.get(key);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
166 return (p != null) ? p.getAsBoolean() : false;
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
167 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
168
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
169 /** Returns if the Parameter's value has been set.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
170 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
171 * @param key
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
172 * @return
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
173 */
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
174 public boolean hasValue(String key) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
175 Parameter p = params.get(key);
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
176 return (p != null) ? p.hasValue() : false;
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
177 }
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
178
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
179 /** Add the Parameter to the map with a certain key.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
180 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
181 * Returns the value that was previously associated with key.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
182 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
183 * @param key
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
184 * @param val
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
185 * @return
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
186 */
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
187 public Parameter put(String key, Parameter val) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
188 return params.put(key, val);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
189 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
190
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
191 /** Add the Parameter val to the map, using val's name.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
192 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
193 * Returns the value that was previously associated with val's name.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
194 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
195 * @param val
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
196 * @return
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
197 */
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
198 public Parameter put(Parameter val) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
199 return params.put(val.getName(), val);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
200 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
201
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
202 /** Add a new Parameter with name, default and value.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
203 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
204 * Returns the key that was previously associated with name.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
205 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
206 * @param name
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
207 * @param def
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
208 * @param val
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
209 * @return
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
210 */
185
91f28e4fee8f Servlet version 1.18b2
robcast
parents: 170
diff changeset
211 public Parameter newParameter(String name, Object def, Object val) {
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
212 Parameter p = new Parameter(name, def, val);
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
213 return params.put(name, p);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
214 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
215
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
216 /** Add a new Parameter with name, default, value and type.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
217 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
218 * Returns the key that was previously associated with name.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
219 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
220 * @param name
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
221 * @param def
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
222 * @param val
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
223 * @param type
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
224 * @return
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
225 */
185
91f28e4fee8f Servlet version 1.18b2
robcast
parents: 170
diff changeset
226 public Parameter newParameter(String name, Object def, Object val, int type) {
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
227 Parameter p = new Parameter(name, def, val, type);
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
228 return params.put(name, p);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
229 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
230
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
231 /** Set the value of an existing parameter.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
232 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
233 * Sets the value and returns true if the parameter exists.
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
234 *
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
235 * @param key
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
236 * @param val
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
237 * @return
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
238 */
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
239 public boolean setValue(String key, Object val) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
240 Parameter p = params.get(key);
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
241 if (p != null) {
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
242 p.setValue(val);
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
243 return true;
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
244 }
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
245 return false;
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
246 }
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
247
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
248 /** Set the value of an existing parameter.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
249 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
250 * Sets the value and returns true if the parameter exists.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
251 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
252 * @param key
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
253 * @param val
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
254 * @return
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
255 */
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
256 public boolean setValue(String key, int val) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
257 Parameter p = params.get(key);
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
258 if (p != null) {
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
259 p.setValue(val);
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
260 return true;
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
261 }
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
262 return false;
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
263 }
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
264
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
265 /** Set the value of an existing parameter.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
266 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
267 * Sets the value and returns true if the parameter exists.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
268 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
269 * @param key
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
270 * @param val
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
271 * @return
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
272 */
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
273 public boolean setValue(String key, float val) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
274 Parameter p = params.get(key);
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
275 if (p != null) {
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
276 p.setValue(val);
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
277 return true;
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
278 }
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
279 return false;
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
280 }
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
281
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
282 /** Set the value of an existing parameter.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
283 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
284 * Sets the value and returns true if the parameter exists.
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
285 *
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
286 * @param key
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
287 * @param val
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
288 * @return
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
289 */
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
290 public boolean setValueFromString(String key, String val) {
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
291 Parameter p = params.get(key);
170
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
292 if (p != null) {
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
293 p.setValueFromString(val);
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
294 return true;
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
295 }
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
296 return false;
d40922628e4a Servlet Version 1.16b2 with new DigilibParameter code.
robcast
parents: 153
diff changeset
297 }
547
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
298
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
299 /** Returns of the option has been set.
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
300 * @param opt
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
301 * @return
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
302 */
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
303 public boolean hasOption(String opt) {
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
304 return options.hasOption(opt);
e1094c5ec032 more cleanup and refactoring
robcast
parents: 536
diff changeset
305 }
548
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
306
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
307 public HashMap<String, Parameter> getParams() {
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
308 return params;
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
309 }
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
310
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
311 public void setParams(HashMap<String, Parameter> params) {
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
312 this.params = params;
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
313 }
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
314
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
315 public OptionsSet getOptions() {
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
316 return options;
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
317 }
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
318
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
319 public void setOptions(OptionsSet options) {
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
320 this.options = options;
bc9196347188 more refactoring and cleanup
robcast
parents: 547
diff changeset
321 }
153
4980c969be4c Servlet version 1.16a1
robcast
parents:
diff changeset
322 }