/**
* Copyright (c) 2000-present Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
package com.liferay.portal.kernel.util;
import java.util.Locale;
import javax.portlet.PortletRequest;
import javax.portlet.PortletSession;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
/**
* @author Brian Wing Shun Chan
*/
public class SessionParamUtil {
public static boolean getBoolean(HttpServletRequest request, String param) {
return getBoolean(request, param, GetterUtil.DEFAULT_BOOLEAN);
}
public static boolean getBoolean(
HttpServletRequest request, String param, boolean defaultValue) {
HttpSession session = request.getSession(false);
String requestValue = request.getParameter(param);
if (requestValue != null) {
boolean value = GetterUtil.getBoolean(requestValue);
if (session != null) {
session.setAttribute(param, value);
}
return value;
}
if (session != null) {
Boolean sessionValue = (Boolean)session.getAttribute(param);
if (sessionValue != null) {
return sessionValue;
}
}
return defaultValue;
}
public static boolean getBoolean(
PortletRequest portletRequest, String param) {
return getBoolean(portletRequest, param, GetterUtil.DEFAULT_BOOLEAN);
}
public static boolean getBoolean(
PortletRequest portletRequest, String param, boolean defaultValue) {
PortletSession portletSession = portletRequest.getPortletSession(false);
String portletRequestValue = portletRequest.getParameter(param);
if (portletRequestValue != null) {
boolean value = GetterUtil.getBoolean(portletRequestValue);
portletSession.setAttribute(param, value);
return value;
}
if (portletSession != null) {
Boolean portletSessionValue = (Boolean)portletSession.getAttribute(
param);
if (portletSessionValue != null) {
return portletSessionValue;
}
}
return defaultValue;
}
public static double getDouble(HttpServletRequest request, String param) {
return getDouble(request, param, GetterUtil.DEFAULT_DOUBLE);
}
public static double getDouble(
HttpServletRequest request, String param, double defaultValue) {
HttpSession session = request.getSession(false);
String requestValue = request.getParameter(param);
if (requestValue != null) {
double value = GetterUtil.getDouble(requestValue);
if (session != null) {
session.setAttribute(param, value);
}
return value;
}
if (session != null) {
Double sessionValue = (Double)session.getAttribute(param);
if (sessionValue != null) {
return sessionValue;
}
}
return defaultValue;
}
public static double getDouble(
HttpServletRequest request, String param, double defaultValue,
Locale locale) {
HttpSession session = request.getSession(false);
String requestValue = request.getParameter(param);
if (requestValue != null) {
double value = GetterUtil.getDouble(requestValue, locale);
if (session != null) {
session.setAttribute(param, value);
}
return value;
}
if (session != null) {
Double sessionValue = (Double)session.getAttribute(param);
if (sessionValue != null) {
return sessionValue;
}
}
return defaultValue;
}
public static double getDouble(
HttpServletRequest request, String param, Locale locale) {
return getDouble(request, param, GetterUtil.DEFAULT_DOUBLE, locale);
}
public static double getDouble(
PortletRequest portletRequest, String param) {
return getDouble(portletRequest, param, GetterUtil.DEFAULT_DOUBLE);
}
public static double getDouble(
PortletRequest portletRequest, String param, double defaultValue) {
PortletSession portletSession = portletRequest.getPortletSession(false);
String portletRequestValue = portletRequest.getParameter(param);
if (portletRequestValue != null) {
double value = GetterUtil.getDouble(portletRequestValue);
portletSession.setAttribute(param, value);
return value;
}
if (portletSession != null) {
Double portletSessionValue = (Double)portletSession.getAttribute(
param);
if (portletSessionValue != null) {
return portletSessionValue;
}
}
return defaultValue;
}
public static double getDouble(
PortletRequest portletRequest, String param, double defaultValue,
Locale locale) {
PortletSession portletSession = portletRequest.getPortletSession(false);
String portletRequestValue = portletRequest.getParameter(param);
if (portletRequestValue != null) {
double value = GetterUtil.getDouble(portletRequestValue, locale);
portletSession.setAttribute(param, value);
return value;
}
if (portletSession != null) {
Double portletSessionValue = (Double)portletSession.getAttribute(
param);
if (portletSessionValue != null) {
return portletSessionValue;
}
}
return defaultValue;
}
public static double getDouble(
PortletRequest portletRequest, String param, Locale locale) {
return getDouble(
portletRequest, param, GetterUtil.DEFAULT_DOUBLE, locale);
}
public static int getInteger(HttpServletRequest request, String param) {
return getInteger(request, param, GetterUtil.DEFAULT_INTEGER);
}
public static int getInteger(
HttpServletRequest request, String param, int defaultValue) {
HttpSession session = request.getSession(false);
String requestValue = request.getParameter(param);
if (requestValue != null) {
int value = GetterUtil.getInteger(requestValue);
if (session != null) {
session.setAttribute(param, value);
}
return value;
}
if (session != null) {
Integer sessionValue = (Integer)session.getAttribute(param);
if (sessionValue != null) {
return sessionValue;
}
}
return defaultValue;
}
public static int getInteger(PortletRequest portletRequest, String param) {
return getInteger(portletRequest, param, GetterUtil.DEFAULT_INTEGER);
}
public static int getInteger(
PortletRequest portletRequest, String param, int defaultValue) {
PortletSession portletSession = portletRequest.getPortletSession(false);
String portletRequestValue = portletRequest.getParameter(param);
if (portletRequestValue != null) {
int value = GetterUtil.getInteger(portletRequestValue);
portletSession.setAttribute(param, value);
return value;
}
if (portletSession != null) {
Integer portletSessionValue = (Integer)portletSession.getAttribute(
param);
if (portletSessionValue != null) {
return portletSessionValue;
}
}
return defaultValue;
}
public static long getLong(HttpServletRequest request, String param) {
return getLong(request, param, GetterUtil.DEFAULT_LONG);
}
public static long getLong(
HttpServletRequest request, String param, long defaultValue) {
HttpSession session = request.getSession(false);
String requestValue = request.getParameter(param);
if (requestValue != null) {
long value = GetterUtil.getLong(requestValue);
if (session != null) {
session.setAttribute(param, value);
}
return value;
}
if (session != null) {
Long sessionValue = (Long)session.getAttribute(param);
if (sessionValue != null) {
return sessionValue;
}
}
return defaultValue;
}
public static long getLong(PortletRequest portletRequest, String param) {
return getLong(portletRequest, param, GetterUtil.DEFAULT_LONG);
}
public static long getLong(
PortletRequest portletRequest, String param, long defaultValue) {
PortletSession portletSession = portletRequest.getPortletSession(false);
String portletRequestValue = portletRequest.getParameter(param);
if (portletRequestValue != null) {
long value = GetterUtil.getLong(portletRequestValue);
portletSession.setAttribute(param, value);
return value;
}
if (portletSession != null) {
Long portletSessionValue = (Long)portletSession.getAttribute(param);
if (portletSessionValue != null) {
return portletSessionValue;
}
}
return defaultValue;
}
public static short getShort(HttpServletRequest request, String param) {
return getShort(request, param, GetterUtil.DEFAULT_SHORT);
}
public static short getShort(
HttpServletRequest request, String param, short defaultValue) {
HttpSession session = request.getSession(false);
String requestValue = request.getParameter(param);
if (requestValue != null) {
short value = GetterUtil.getShort(requestValue);
if (session != null) {
session.setAttribute(param, value);
}
return value;
}
if (session != null) {
Short sessionValue = (Short)session.getAttribute(param);
if (sessionValue != null) {
return sessionValue;
}
}
return defaultValue;
}
public static short getShort(PortletRequest portletRequest, String param) {
return getShort(portletRequest, param, GetterUtil.DEFAULT_SHORT);
}
public static short getShort(
PortletRequest portletRequest, String param, short defaultValue) {
PortletSession portletSession = portletRequest.getPortletSession(false);
String portletRequestValue = portletRequest.getParameter(param);
if (portletRequestValue != null) {
short value = GetterUtil.getShort(portletRequestValue);
portletSession.setAttribute(param, value);
return value;
}
if (portletSession != null) {
Short portletSessionValue = (Short)portletSession.getAttribute(
param);
if (portletSessionValue != null) {
return portletSessionValue;
}
}
return defaultValue;
}
public static String getString(HttpServletRequest request, String param) {
return getString(request, param, GetterUtil.DEFAULT_STRING);
}
public static String getString(
HttpServletRequest request, String param, String defaultValue) {
HttpSession session = request.getSession(false);
String requestValue = request.getParameter(param);
if (requestValue != null) {
String value = GetterUtil.getString(requestValue);
if (session != null) {
session.setAttribute(param, value);
}
return value;
}
if (session != null) {
String sessionValue = (String)session.getAttribute(param);
if (sessionValue != null) {
return sessionValue;
}
}
return defaultValue;
}
public static String getString(
PortletRequest portletRequest, String param) {
return getString(portletRequest, param, GetterUtil.DEFAULT_STRING);
}
public static String getString(
PortletRequest portletRequest, String param, String defaultValue) {
PortletSession portletSession = portletRequest.getPortletSession(false);
String portletRequestValue = portletRequest.getParameter(param);
if (portletRequestValue != null) {
String value = GetterUtil.getString(portletRequestValue);
portletSession.setAttribute(param, value);
return value;
}
if (portletSession != null) {
String portletSessionValue = (String)portletSession.getAttribute(
param);
if (portletSessionValue != null) {
return portletSessionValue;
}
}
return defaultValue;
}
}