1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17   * SOFTWARE.
18   */
19  
20  package com.liferay.portal.kernel.util;
21  
22  import java.text.DateFormat;
23  
24  import java.util.Date;
25  import java.util.Enumeration;
26  
27  import javax.portlet.PortletRequest;
28  
29  import javax.servlet.http.HttpServletRequest;
30  
31  /**
32   * <a href="ParamUtil.java.html"><b><i>View Source</i></b></a>
33   *
34   * @author Brian Wing Shun Chan
35   * @author Raymond Augé
36   *
37   */
38  public class ParamUtil {
39  
40      // Servlet Request
41  
42      public static boolean getBoolean(HttpServletRequest request, String param) {
43          return GetterUtil.getBoolean(request.getParameter(param));
44      }
45  
46      public static boolean getBoolean(
47          HttpServletRequest request, String param, boolean defaultValue) {
48  
49          return get(request, param, defaultValue);
50      }
51  
52      public static boolean[] getBooleanValues(
53          HttpServletRequest request, String param) {
54  
55          return getBooleanValues(request, param, new boolean[0]);
56      }
57  
58      public static boolean[] getBooleanValues(
59          HttpServletRequest request, String param, boolean[] defaultValue) {
60  
61          return GetterUtil.getBooleanValues(
62              request.getParameterValues(param), defaultValue);
63      }
64  
65      public static Date getDate(
66          HttpServletRequest request, String param, DateFormat df) {
67  
68          return GetterUtil.getDate(request.getParameter(param), df);
69      }
70  
71      public static Date getDate(
72          HttpServletRequest request, String param, DateFormat df,
73          Date defaultValue) {
74  
75          return get(request, param, df, defaultValue);
76      }
77  
78      public static double getDouble(HttpServletRequest request, String param) {
79          return GetterUtil.getDouble(request.getParameter(param));
80      }
81  
82      public static double getDouble(
83          HttpServletRequest request, String param, double defaultValue) {
84  
85          return get(request, param, defaultValue);
86      }
87  
88      public static double[] getDoubleValues(
89          HttpServletRequest request, String param) {
90  
91          return getDoubleValues(request, param, new double[0]);
92      }
93  
94      public static double[] getDoubleValues(
95          HttpServletRequest request, String param, double[] defaultValue) {
96  
97          return GetterUtil.getDoubleValues(
98              request.getParameterValues(param), defaultValue);
99      }
100 
101     public static float getFloat(HttpServletRequest request, String param) {
102         return GetterUtil.getFloat(request.getParameter(param));
103     }
104 
105     public static float getFloat(
106         HttpServletRequest request, String param, float defaultValue) {
107 
108         return get(request, param, defaultValue);
109     }
110 
111     public static float[] getFloatValues(
112         HttpServletRequest request, String param) {
113 
114         return getFloatValues(request, param, new float[0]);
115     }
116 
117     public static float[] getFloatValues(
118         HttpServletRequest request, String param, float[] defaultValue) {
119 
120         return GetterUtil.getFloatValues(
121             request.getParameterValues(param), defaultValue);
122     }
123 
124     public static int getInteger(HttpServletRequest request, String param) {
125         return GetterUtil.getInteger(request.getParameter(param));
126     }
127 
128     public static int getInteger(
129         HttpServletRequest request, String param, int defaultValue) {
130 
131         return get(request, param, defaultValue);
132     }
133 
134     public static int[] getIntegerValues(
135         HttpServletRequest request, String param) {
136 
137         return getIntegerValues(request, param, new int[0]);
138     }
139 
140     public static int[] getIntegerValues(
141         HttpServletRequest request, String param, int[] defaultValue) {
142 
143         return GetterUtil.getIntegerValues(
144             request.getParameterValues(param), defaultValue);
145     }
146 
147     public static long getLong(HttpServletRequest request, String param) {
148         return GetterUtil.getLong(request.getParameter(param));
149     }
150 
151     public static long getLong(
152         HttpServletRequest request, String param, long defaultValue) {
153 
154         return get(request, param, defaultValue);
155     }
156 
157     public static long[] getLongValues(
158         HttpServletRequest request, String param) {
159 
160         return getLongValues(request, param, new long[0]);
161     }
162 
163     public static long[] getLongValues(
164         HttpServletRequest request, String param, long[] defaultValue) {
165 
166         return GetterUtil.getLongValues(
167             request.getParameterValues(param), defaultValue);
168     }
169 
170     public static short getShort(HttpServletRequest request, String param) {
171         return GetterUtil.getShort(request.getParameter(param));
172     }
173 
174     public static short getShort(
175         HttpServletRequest request, String param, short defaultValue) {
176 
177         return get(request, param, defaultValue);
178     }
179 
180     public static short[] getShortValues(
181         HttpServletRequest request, String param) {
182 
183         return getShortValues(request, param, new short[0]);
184     }
185 
186     public static short[] getShortValues(
187         HttpServletRequest request, String param, short[] defaultValue) {
188 
189         return GetterUtil.getShortValues(
190             request.getParameterValues(param), defaultValue);
191     }
192 
193     public static String getString(HttpServletRequest request, String param) {
194         return GetterUtil.getString(request.getParameter(param));
195     }
196 
197     public static String getString(
198         HttpServletRequest request, String param, String defaultValue) {
199 
200         return get(request, param, defaultValue);
201     }
202 
203     public static boolean get(
204         HttpServletRequest request, String param, boolean defaultValue) {
205 
206         return GetterUtil.get(request.getParameter(param), defaultValue);
207     }
208 
209     public static Date get(
210         HttpServletRequest request, String param, DateFormat df,
211         Date defaultValue) {
212 
213         return GetterUtil.get(request.getParameter(param), df, defaultValue);
214     }
215 
216     public static double get(
217         HttpServletRequest request, String param, double defaultValue) {
218 
219         return GetterUtil.get(request.getParameter(param), defaultValue);
220     }
221 
222     public static float get(
223         HttpServletRequest request, String param, float defaultValue) {
224 
225         return GetterUtil.get(request.getParameter(param), defaultValue);
226     }
227 
228     public static int get(
229         HttpServletRequest request, String param, int defaultValue) {
230 
231         return GetterUtil.get(request.getParameter(param), defaultValue);
232     }
233 
234     public static long get(
235         HttpServletRequest request, String param, long defaultValue) {
236 
237         return GetterUtil.get(request.getParameter(param), defaultValue);
238     }
239 
240     public static short get(
241         HttpServletRequest request, String param, short defaultValue) {
242 
243         return GetterUtil.get(request.getParameter(param), defaultValue);
244     }
245 
246     public static String get(
247         HttpServletRequest request, String param, String defaultValue) {
248 
249         String returnValue =
250             GetterUtil.get(request.getParameter(param), defaultValue);
251 
252         if (returnValue != null) {
253             return returnValue.trim();
254         }
255 
256         return null;
257     }
258 
259     public static void print(HttpServletRequest request) {
260         Enumeration<String> enu = request.getParameterNames();
261 
262         while (enu.hasMoreElements()) {
263             String param = enu.nextElement();
264 
265             String[] values = request.getParameterValues(param);
266 
267             for (int i = 0; i < values.length; i++) {
268                 System.out.println(param + "[" + i + "] = " + values[i]);
269             }
270         }
271     }
272 
273     // Portlet Request
274 
275     public static boolean getBoolean(
276         PortletRequest portletRequest, String param) {
277 
278         return GetterUtil.getBoolean(portletRequest.getParameter(param));
279     }
280 
281     public static boolean getBoolean(
282         PortletRequest portletRequest, String param, boolean defaultValue) {
283 
284         return get(portletRequest, param, defaultValue);
285     }
286 
287     public static boolean[] getBooleanValues(
288         PortletRequest portletRequest, String param) {
289 
290         return getBooleanValues(portletRequest, param, new boolean[0]);
291     }
292 
293     public static boolean[] getBooleanValues(
294         PortletRequest portletRequest, String param, boolean[] defaultValue) {
295 
296         return GetterUtil.getBooleanValues(
297             portletRequest.getParameterValues(param), defaultValue);
298     }
299 
300     public static Date getDate(
301         PortletRequest portletRequest, String param, DateFormat df) {
302 
303         return GetterUtil.getDate(portletRequest.getParameter(param), df);
304     }
305 
306     public static Date getDate(
307         PortletRequest portletRequest, String param, DateFormat df,
308         Date defaultValue) {
309 
310         return get(portletRequest, param, df, defaultValue);
311     }
312 
313     public static double getDouble(
314         PortletRequest portletRequest, String param) {
315 
316         return GetterUtil.getDouble(portletRequest.getParameter(param));
317     }
318 
319     public static double getDouble(
320         PortletRequest portletRequest, String param, double defaultValue) {
321 
322         return get(portletRequest, param, defaultValue);
323     }
324 
325     public static double[] getDoubleValues(
326         PortletRequest portletRequest, String param) {
327 
328         return getDoubleValues(portletRequest, param, new double[0]);
329     }
330 
331     public static double[] getDoubleValues(
332         PortletRequest portletRequest, String param, double[] defaultValue) {
333 
334         return GetterUtil.getDoubleValues(
335             portletRequest.getParameterValues(param), defaultValue);
336     }
337 
338     public static float getFloat(PortletRequest portletRequest, String param) {
339         return GetterUtil.getFloat(portletRequest.getParameter(param));
340     }
341 
342     public static float getFloat(
343         PortletRequest portletRequest, String param, float defaultValue) {
344 
345         return get(portletRequest, param, defaultValue);
346     }
347 
348     public static float[] getFloatValues(
349         PortletRequest portletRequest, String param) {
350 
351         return getFloatValues(portletRequest, param, new float[0]);
352     }
353 
354     public static float[] getFloatValues(
355         PortletRequest portletRequest, String param, float[] defaultValue) {
356 
357         return GetterUtil.getFloatValues(
358             portletRequest.getParameterValues(param), defaultValue);
359     }
360 
361     public static int getInteger(PortletRequest portletRequest, String param) {
362         return GetterUtil.getInteger(portletRequest.getParameter(param));
363     }
364 
365     public static int getInteger(
366         PortletRequest portletRequest, String param, int defaultValue) {
367 
368         return get(portletRequest, param, defaultValue);
369     }
370 
371     public static int[] getIntegerValues(
372         PortletRequest portletRequest, String param) {
373 
374         return getIntegerValues(portletRequest, param, new int[0]);
375     }
376 
377     public static int[] getIntegerValues(
378         PortletRequest portletRequest, String param, int[] defaultValue) {
379 
380         return GetterUtil.getIntegerValues(
381             portletRequest.getParameterValues(param), defaultValue);
382     }
383 
384     public static long getLong(PortletRequest portletRequest, String param) {
385         return GetterUtil.getLong(portletRequest.getParameter(param));
386     }
387 
388     public static long getLong(
389         PortletRequest portletRequest, String param, long defaultValue) {
390 
391         return get(portletRequest, param, defaultValue);
392     }
393 
394     public static long[] getLongValues(
395         PortletRequest portletRequest, String param) {
396 
397         return getLongValues(portletRequest, param, new long[0]);
398     }
399 
400     public static long[] getLongValues(
401         PortletRequest portletRequest, String param, long[] defaultValue) {
402 
403         return GetterUtil.getLongValues(
404             portletRequest.getParameterValues(param), defaultValue);
405     }
406 
407     public static short getShort(PortletRequest portletRequest, String param) {
408         return GetterUtil.getShort(portletRequest.getParameter(param));
409     }
410 
411     public static short getShort(
412         PortletRequest portletRequest, String param, short defaultValue) {
413 
414         return get(portletRequest, param, defaultValue);
415     }
416 
417     public static short[] getShortValues(
418         PortletRequest portletRequest, String param) {
419 
420         return getShortValues(portletRequest, param, new short[0]);
421     }
422 
423     public static short[] getShortValues(
424         PortletRequest portletRequest, String param, short[] defaultValue) {
425 
426         return GetterUtil.getShortValues(
427             portletRequest.getParameterValues(param), defaultValue);
428     }
429 
430     public static String getString(
431         PortletRequest portletRequest, String param) {
432 
433         return GetterUtil.getString(portletRequest.getParameter(param));
434     }
435 
436     public static String getString(
437         PortletRequest portletRequest, String param, String defaultValue) {
438 
439         return get(portletRequest, param, defaultValue);
440     }
441 
442     public static boolean get(
443         PortletRequest portletRequest, String param, boolean defaultValue) {
444 
445         return GetterUtil.get(portletRequest.getParameter(param), defaultValue);
446     }
447 
448     public static Date get(
449         PortletRequest portletRequest, String param, DateFormat df,
450         Date defaultValue) {
451 
452         return GetterUtil.get(
453             portletRequest.getParameter(param), df, defaultValue);
454     }
455 
456     public static double get(
457         PortletRequest portletRequest, String param, double defaultValue) {
458 
459         return GetterUtil.get(portletRequest.getParameter(param), defaultValue);
460     }
461 
462     public static float get(
463         PortletRequest portletRequest, String param, float defaultValue) {
464 
465         return GetterUtil.get(portletRequest.getParameter(param), defaultValue);
466     }
467 
468     public static int get(
469         PortletRequest portletRequest, String param, int defaultValue) {
470 
471         return GetterUtil.get(portletRequest.getParameter(param), defaultValue);
472     }
473 
474     public static long get(
475         PortletRequest portletRequest, String param, long defaultValue) {
476 
477         return GetterUtil.get(portletRequest.getParameter(param), defaultValue);
478     }
479 
480     public static short get(
481         PortletRequest portletRequest, String param, short defaultValue) {
482 
483         return GetterUtil.get(portletRequest.getParameter(param), defaultValue);
484     }
485 
486     public static String get(
487         PortletRequest portletRequest, String param, String defaultValue) {
488 
489         String returnValue =
490             GetterUtil.get(portletRequest.getParameter(param), defaultValue);
491 
492         if (returnValue != null) {
493             return returnValue.trim();
494         }
495 
496         return null;
497     }
498 
499     public static void print(PortletRequest portletRequest) {
500         Enumeration<String> enu = portletRequest.getParameterNames();
501 
502         while (enu.hasMoreElements()) {
503             String param = enu.nextElement();
504 
505             String[] values = portletRequest.getParameterValues(param);
506 
507             for (int i = 0; i < values.length; i++) {
508                 System.out.println(param + "[" + i + "] = " + values[i]);
509             }
510         }
511     }
512 
513 }