You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2016/12/01 19:06:50 UTC
[2/8] struts git commit: WW-4722 Allows predefine default store
location
WW-4722 Allows predefine default store location
Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/6e1ea61d
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/6e1ea61d
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/6e1ea61d
Branch: refs/heads/master
Commit: 6e1ea61dc664c4a4e41a8a094030f2edf0088f6c
Parents: bcea4c9
Author: Lukasz Lenart <lu...@apache.org>
Authored: Thu Dec 1 16:55:42 2016 +0100
Committer: Lukasz Lenart <lu...@apache.org>
Committed: Thu Dec 1 16:55:42 2016 +0100
----------------------------------------------------------------------
.../struts2/interceptor/I18nInterceptor.java | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/struts/blob/6e1ea61d/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java
index 62ac412..b1f8e8e 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/I18nInterceptor.java
@@ -28,6 +28,7 @@ import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
import com.opensymphony.xwork2.util.LocalizedTextUtil;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.message.ParameterizedMessage;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.StrutsStatics;
import org.apache.struts2.dispatcher.HttpParameters;
@@ -102,14 +103,14 @@ public class I18nInterceptor extends AbstractInterceptor {
protected String parameterName = DEFAULT_PARAMETER;
protected String requestOnlyParameterName = DEFAULT_REQUEST_ONLY_PARAMETER;
protected String attributeName = DEFAULT_SESSION_ATTRIBUTE;
+ protected String requestCookieParameterName = DEFAULT_COOKIE_PARAMETER;
+ protected Storage storage = Storage.SESSION;
protected LocaleProvider localeProvider;
// Request-Only = None
protected enum Storage { COOKIE, SESSION, NONE }
- protected String requestCookieParameterName = DEFAULT_COOKIE_PARAMETER;
-
public void setParameterName(String parameterName) {
this.parameterName = parameterName;
}
@@ -126,6 +127,19 @@ public class I18nInterceptor extends AbstractInterceptor {
this.attributeName = attributeName;
}
+ public void setLocaleStorage(String storageName) {
+ if (storageName == null || "".equals(storageName)) {
+ this.storage = Storage.NONE;
+ } else {
+ try {
+ this.storage = Storage.valueOf(storageName);
+ } catch (IllegalArgumentException e) {
+ LOG.warn(new ParameterizedMessage("Wrong storage name [{{}] was defined, falling back to {}", storageName, Storage.SESSION), e);
+ this.storage = Storage.SESSION;
+ }
+ }
+ }
+
@Inject
public void setLocaleProvider(LocaleProvider localeProvider) {
this.localeProvider = localeProvider;