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