You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by jo...@apache.org on 2015/06/08 19:27:21 UTC
[3/5] struts git commit: Minor code improvements's in the struts core
module
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
index 12aad31..e65973f 100644
--- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
+++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
@@ -3,31 +3,19 @@ package org.apache.struts2.dispatcher.multipart;
import com.opensymphony.xwork2.LocaleProvider;
import com.opensymphony.xwork2.inject.Inject;
import com.opensymphony.xwork2.util.LocalizedTextUtil;
-import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.LogManager;
import org.apache.commons.fileupload.FileItemIterator;
import org.apache.commons.fileupload.FileItemStream;
import org.apache.commons.fileupload.FileUploadBase;
import org.apache.commons.fileupload.FileUploadBase.FileSizeLimitExceededException;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.fileupload.util.Streams;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.StrutsConstants;
import javax.servlet.http.HttpServletRequest;
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
+import java.io.*;
+import java.util.*;
/**
* Multi-part form data request adapter for Jakarta Commons FileUpload package that
@@ -50,22 +38,22 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
/**
* Map between file fields and file data.
*/
- private Map<String, List<FileInfo>> fileInfos = new HashMap<String, List<FileInfo>>();
+ private Map<String, List<FileInfo>> fileInfos = new HashMap<>();
/**
* Map between non-file fields and values.
*/
- private Map<String, List<String>> parameters = new HashMap<String, List<String>>();
+ private Map<String, List<String>> parameters = new HashMap<>();
/**
* Internal list of raised errors to be passed to the the Struts2 framework.
*/
- private List<String> errors = new ArrayList<String>();
+ private List<String> errors = new ArrayList<>();
/**
* Internal list of non-critical messages to be passed to the Struts2 framework.
*/
- private List<String> messages = new ArrayList<String>();
+ private List<String> messages = new ArrayList<>();
/**
* Specifies the maximum size of the entire request.
@@ -121,8 +109,9 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
for (FileInfo fileInfo : fileInfos.get(fieldName)) {
File file = fileInfo.getFile();
LOG.debug("Deleting file '{}'.", file.getName());
- if (!file.delete())
+ if (!file.delete()) {
LOG.warn("There was a problem attempting to delete file '{}'.", file.getName());
+ }
}
}
}
@@ -132,12 +121,14 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
*/
public String[] getContentType(String fieldName) {
List<FileInfo> infos = fileInfos.get(fieldName);
- if (infos == null)
+ if (infos == null) {
return null;
+ }
- List<String> types = new ArrayList<String>(infos.size());
- for (FileInfo fileInfo : infos)
+ List<String> types = new ArrayList<>(infos.size());
+ for (FileInfo fileInfo : infos) {
types.add(fileInfo.getContentType());
+ }
return types.toArray(new String[types.size()]);
}
@@ -163,12 +154,14 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
*/
public File[] getFile(String fieldName) {
List<FileInfo> infos = fileInfos.get(fieldName);
- if (infos == null)
+ if (infos == null) {
return null;
+ }
- List<File> files = new ArrayList<File>(infos.size());
- for (FileInfo fileInfo : infos)
+ List<File> files = new ArrayList<>(infos.size());
+ for (FileInfo fileInfo : infos) {
files.add(fileInfo.getFile());
+ }
return files.toArray(new File[files.size()]);
}
@@ -178,12 +171,14 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
*/
public String[] getFileNames(String fieldName) {
List<FileInfo> infos = fileInfos.get(fieldName);
- if (infos == null)
+ if (infos == null) {
return null;
+ }
- List<String> names = new ArrayList<String>(infos.size());
- for (FileInfo fileInfo : infos)
+ List<String> names = new ArrayList<>(infos.size());
+ for (FileInfo fileInfo : infos) {
names.add(getCanonicalName(fileInfo.getOriginalName()));
+ }
return names.toArray(new String[names.size()]);
}
@@ -200,12 +195,14 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
*/
public String[] getFilesystemName(String fieldName) {
List<FileInfo> infos = fileInfos.get(fieldName);
- if (infos == null)
+ if (infos == null) {
return null;
+ }
- List<String> names = new ArrayList<String>(infos.size());
- for (FileInfo fileInfo : infos)
+ List<String> names = new ArrayList<>(infos.size());
+ for (FileInfo fileInfo : infos) {
names.add(fileInfo.getFile().getName());
+ }
return names.toArray(new String[names.size()]);
}
@@ -215,8 +212,9 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
*/
public String getParameter(String name) {
List<String> values = parameters.get(name);
- if (values != null && values.size() > 0)
+ if (values != null && values.size() > 0) {
return values.get(0);
+ }
return null;
}
@@ -232,24 +230,25 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
*/
public String[] getParameterValues(String name) {
List<String> values = parameters.get(name);
- if (values != null && values.size() > 0)
+ if (values != null && values.size() > 0) {
return values.toArray(new String[values.size()]);
+ }
return null;
}
/* (non-Javadoc)
* @see org.apache.struts2.dispatcher.multipart.MultiPartRequest#parse(javax.servlet.http.HttpServletRequest, java.lang.String)
*/
- public void parse(HttpServletRequest request, String saveDir)
- throws IOException {
+ public void parse(HttpServletRequest request, String saveDir) throws IOException {
try {
setLocale(request);
processUpload(request, saveDir);
} catch (Exception e) {
- e.printStackTrace();
+ LOG.warn("Error occurred during parsing of multi part request", e);
String errorMessage = buildErrorMessage(e, new Object[]{});
- if (!errors.contains(errorMessage))
+ if (!errors.contains(errorMessage)) {
errors.add(errorMessage);
+ }
}
}
@@ -260,8 +259,9 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
* @param request
*/
protected void setLocale(HttpServletRequest request) {
- if (defaultLocale == null)
+ if (defaultLocale == null) {
defaultLocale = request.getLocale();
+ }
}
/**
@@ -271,8 +271,7 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
* @param saveDir
* @throws Exception
*/
- private void processUpload(HttpServletRequest request, String saveDir)
- throws Exception {
+ private void processUpload(HttpServletRequest request, String saveDir) throws Exception {
// Sanity check that the request is a multi-part/form-data request.
if (ServletFileUpload.isMultipartContent(request)) {
@@ -313,7 +312,7 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
processFileItemStreamAsFileField(itemStream, saveDir);
}
} catch (IOException e) {
- e.printStackTrace();
+ LOG.warn("Error occurred during process upload", e);
}
}
}
@@ -329,8 +328,9 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
// if maxSize is specified as -1, there is no sanity check and it's
// safe to return true for any request, delegating the failure
// checks later in the upload process.
- if (maxSize == -1 || request == null)
+ if (maxSize == -1 || request == null) {
return true;
+ }
return request.getContentLength() < maxSize;
}
@@ -343,8 +343,10 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
*/
private long getRequestSize(HttpServletRequest request) {
long requestSize = 0;
- if (request != null)
+ if (request != null) {
requestSize = request.getContentLength();
+ }
+
return requestSize;
}
@@ -358,8 +360,9 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
String exceptionMessage = "Skipped file " + fileName + "; request size limit exceeded.";
FileSizeLimitExceededException exception = new FileUploadBase.FileSizeLimitExceededException(exceptionMessage, getRequestSize(request), maxSize);
String message = buildErrorMessage(exception, new Object[]{fileName, getRequestSize(request), maxSize});
- if (!errors.contains(message))
+ if (!errors.contains(message)) {
errors.add(message);
+ }
}
/**
@@ -370,10 +373,10 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
private void processFileItemStreamAsFormField(FileItemStream itemStream) {
String fieldName = itemStream.getFieldName();
try {
- List<String> values = null;
+ List<String> values;
String fieldValue = Streams.asString(itemStream.openStream());
if (!parameters.containsKey(fieldName)) {
- values = new ArrayList<String>();
+ values = new ArrayList<>();
parameters.put(fieldName, values);
} else {
values = parameters.get(fieldName);
@@ -396,8 +399,9 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
// Create the temporary upload file.
file = createTemporaryFile(itemStream.getName(), location);
- if (streamFileToDisk(itemStream, file))
+ if (streamFileToDisk(itemStream, file)) {
createFileInfoFromItemStream(itemStream, file);
+ }
} catch (IOException e) {
if (file != null) {
try {
@@ -417,8 +421,7 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
* @return
* @throws IOException
*/
- private File createTemporaryFile(String fileName, String location)
- throws IOException {
+ private File createTemporaryFile(String fileName, String location) throws IOException {
String name = fileName
.substring(fileName.lastIndexOf('/') + 1)
.substring(fileName.lastIndexOf('\\') + 1);
@@ -452,22 +455,23 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
output = new BufferedOutputStream(new FileOutputStream(file), bufferSize);
byte[] buffer = new byte[bufferSize];
LOG.debug("Streaming file using buffer size {}.", bufferSize);
- for (int length = 0; ((length = input.read(buffer)) > 0); )
+ for (int length = 0; ((length = input.read(buffer)) > 0); ) {
output.write(buffer, 0, length);
+ }
result = true;
} finally {
if (output != null) {
try {
output.close();
} catch (IOException e) {
- e.printStackTrace();
+ LOG.warn("Error occurred during closing of OutputStream.", e);
}
}
if (input != null) {
try {
input.close();
} catch (IOException e) {
- e.printStackTrace();
+ LOG.warn("Error occurred during closing of InputStream.", e);
}
}
}
@@ -490,7 +494,7 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
FileInfo fileInfo = new FileInfo(file, itemStream.getContentType(), fileName);
// append or create new entry.
if (!fileInfos.containsKey(fieldName)) {
- List<FileInfo> infos = new ArrayList<FileInfo>();
+ List<FileInfo> infos = new ArrayList<>();
infos.add(fileInfo);
fileInfos.put(fieldName, infos);
} else {
@@ -524,8 +528,7 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
*/
private String buildErrorMessage(Throwable e, Object[] args) {
String errorKey = "struts.message.upload.error." + e.getClass().getSimpleName();
- if (LOG.isDebugEnabled())
- LOG.debug("Preparing error message for key: [{}]", errorKey);
+ LOG.debug("Preparing error message for key: [{}]", errorKey);
return LocalizedTextUtil.findText(this.getClass(), errorKey, defaultLocale, e.getMessage(), args);
}
@@ -538,8 +541,7 @@ public class JakartaStreamMultiPartRequest implements MultiPartRequest {
*/
private String buildMessage(Throwable e, Object[] args) {
String messageKey = "struts.message.upload.message." + e.getClass().getSimpleName();
- if (LOG.isDebugEnabled())
- LOG.debug("Preparing message for key: [{}]", messageKey);
+ LOG.debug("Preparing message for key: [{}]", messageKey);
return LocalizedTextUtil.findText(this.getClass(), messageKey, defaultLocale, e.getMessage(), args);
}
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequest.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequest.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequest.java
index 082153a..64dfccb 100644
--- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequest.java
+++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequest.java
@@ -108,7 +108,7 @@ public interface MultiPartRequest {
* Returns a list of error messages that may have occurred while processing the request.
* If there are no errors, an empty list is returned. If the underlying implementation
* (ie: pell, cos, jakarta, etc) cannot support providing these errors, an empty list is
- * also returned. This list of errors is repoted back to the
+ * also returned. This list of errors is reported back to the
* {@link MultiPartRequestWrapper}'s errors field.
*
* @return a list of Strings that represent various errors during parsing
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java
index f7d7bb0..3a3539e 100644
--- a/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java
+++ b/core/src/main/java/org/apache/struts2/dispatcher/multipart/MultiPartRequestWrapper.java
@@ -21,23 +21,16 @@
package org.apache.struts2.dispatcher.multipart;
-import com.opensymphony.xwork2.DefaultLocaleProvider;
import com.opensymphony.xwork2.LocaleProvider;
import com.opensymphony.xwork2.util.LocalizedTextUtil;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.dispatcher.StrutsRequestWrapper;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Locale;
-import java.util.Map;
-import java.util.Vector;
+import java.util.*;
/**
@@ -76,7 +69,7 @@ public class MultiPartRequestWrapper extends StrutsRequestWrapper {
String saveDir, LocaleProvider provider,
boolean disableRequestAttributeValueStackLookup) {
super(request, disableRequestAttributeValueStackLookup);
- errors = new ArrayList<String>();
+ errors = new ArrayList<>();
multi = multiPartRequest;
defaultLocale = provider.getLocale();
setLocale(request);
@@ -86,9 +79,7 @@ public class MultiPartRequestWrapper extends StrutsRequestWrapper {
addError(error);
}
} catch (IOException e) {
- if (LOG.isWarnEnabled()) {
- LOG.warn(e.getMessage(), e);
- }
+ LOG.warn(e.getMessage(), e);
addError(buildErrorMessage(e, new Object[] {e.getMessage()}));
}
}
@@ -105,9 +96,7 @@ public class MultiPartRequestWrapper extends StrutsRequestWrapper {
protected String buildErrorMessage(Throwable e, Object[] args) {
String errorKey = "struts.messages.upload.error." + e.getClass().getSimpleName();
- if (LOG.isDebugEnabled()) {
- LOG.debug("Preparing error message for key: [{}]", errorKey);
- }
+ LOG.debug("Preparing error message for key: [{}]", errorKey);
return LocalizedTextUtil.findText(this.getClass(), errorKey, defaultLocale, e.getMessage(), args);
}
@@ -194,7 +183,7 @@ public class MultiPartRequestWrapper extends StrutsRequestWrapper {
* @see javax.servlet.http.HttpServletRequest#getParameterMap()
*/
public Map getParameterMap() {
- Map<String, String[]> map = new HashMap<String, String[]>();
+ Map<String, String[]> map = new HashMap<>();
Enumeration enumeration = getParameterNames();
while (enumeration.hasMoreElements()) {
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/dispatcher/ng/InitOperations.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/dispatcher/ng/InitOperations.java b/core/src/main/java/org/apache/struts2/dispatcher/ng/InitOperations.java
index e0c4316..470753e 100644
--- a/core/src/main/java/org/apache/struts2/dispatcher/ng/InitOperations.java
+++ b/core/src/main/java/org/apache/struts2/dispatcher/ng/InitOperations.java
@@ -23,17 +23,11 @@ package org.apache.struts2.dispatcher.ng;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.util.ClassLoaderUtil;
import com.opensymphony.xwork2.util.logging.LoggerFactory;
-import org.apache.logging.log4j.LogManager;
import org.apache.struts2.StrutsConstants;
import org.apache.struts2.dispatcher.Dispatcher;
import org.apache.struts2.dispatcher.StaticContentLoader;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
import java.util.regex.Pattern;
/**
@@ -103,7 +97,7 @@ public class InitOperations {
* Create a {@link Dispatcher}
*/
private Dispatcher createDispatcher( HostConfig filterConfig ) {
- Map<String, String> params = new HashMap<String, String>();
+ Map<String, String> params = new HashMap<>();
for ( Iterator e = filterConfig.getInitParameterNames(); e.hasNext(); ) {
String name = (String) e.next();
String value = filterConfig.getInitParameter(name);
@@ -131,7 +125,7 @@ public class InitOperations {
private List<Pattern> buildExcludedPatternsList( String patterns ) {
if (null != patterns && patterns.trim().length() != 0) {
- List<Pattern> list = new ArrayList<Pattern>();
+ List<Pattern> list = new ArrayList<>();
String[] tokens = patterns.split(",");
for ( String token : tokens ) {
list.add(Pattern.compile(token.trim()));
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/dispatcher/ng/PrepareOperations.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/dispatcher/ng/PrepareOperations.java b/core/src/main/java/org/apache/struts2/dispatcher/ng/PrepareOperations.java
index bb60ce4..6170a54 100644
--- a/core/src/main/java/org/apache/struts2/dispatcher/ng/PrepareOperations.java
+++ b/core/src/main/java/org/apache/struts2/dispatcher/ng/PrepareOperations.java
@@ -23,8 +23,8 @@ package org.apache.struts2.dispatcher.ng;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.util.ValueStack;
import com.opensymphony.xwork2.util.ValueStackFactory;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.RequestUtils;
import org.apache.struts2.StrutsException;
import org.apache.struts2.dispatcher.Dispatcher;
@@ -50,7 +50,6 @@ public class PrepareOperations {
private Dispatcher dispatcher;
private static final String STRUTS_ACTION_MAPPING_KEY = "struts.actionMapping";
public static final String CLEANUP_RECURSION_COUNTER = "__cleanup_recursion_counter";
- private Logger log = LogManager.getLogger(PrepareOperations.class);
@Deprecated
public PrepareOperations(ServletContext servletContext, Dispatcher dispatcher) {
@@ -75,7 +74,7 @@ public class PrepareOperations {
ActionContext oldContext = ActionContext.getContext();
if (oldContext != null) {
// detected existing context, so we are probably in a forward
- ctx = new ActionContext(new HashMap<String, Object>(oldContext.getContextMap()));
+ ctx = new ActionContext(new HashMap<>(oldContext.getContextMap()));
} else {
ValueStack stack = dispatcher.getContainer().getInstance(ValueStackFactory.class).createValueStack();
stack.getContext().putAll(dispatcher.createContextMap(request, response, null));
@@ -95,9 +94,7 @@ public class PrepareOperations {
counterVal -= 1;
request.setAttribute(CLEANUP_RECURSION_COUNTER, counterVal);
if (counterVal > 0 ) {
- if (log.isDebugEnabled()) {
- log.debug("skipping cleanup counter="+counterVal);
- }
+ LOG.debug("skipping cleanup counter={}", counterVal);
return;
}
}
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsExecuteFilter.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsExecuteFilter.java b/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsExecuteFilter.java
index 7f8164f..d2e23c9 100644
--- a/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsExecuteFilter.java
+++ b/core/src/main/java/org/apache/struts2/dispatcher/ng/filter/StrutsExecuteFilter.java
@@ -27,12 +27,7 @@ import org.apache.struts2.dispatcher.ng.ExecuteOperations;
import org.apache.struts2.dispatcher.ng.InitOperations;
import org.apache.struts2.dispatcher.ng.PrepareOperations;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
+import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@@ -80,8 +75,8 @@ public class StrutsExecuteFilter implements StrutsStatics, Filter {
ActionMapping mapping = prepare.findActionMapping(request, response);
- //if recusrion counter is > 1, it means we are in a "forward", in that case a mapping will still be
- //in the request, if we handle it, it will lead to an infinte loop, see WW-3077
+ //if recursion counter is > 1, it means we are in a "forward", in that case a mapping will still be
+ //in the request, if we handle it, it will lead to an infinite loop, see WW-3077
Integer recursionCounter = (Integer) request.getAttribute(PrepareOperations.CLEANUP_RECURSION_COUNTER);
if (mapping == null || recursionCounter > 1) {
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/impl/PrefixBasedActionProxyFactory.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/impl/PrefixBasedActionProxyFactory.java b/core/src/main/java/org/apache/struts2/impl/PrefixBasedActionProxyFactory.java
index 5628aa4..02f39a8 100644
--- a/core/src/main/java/org/apache/struts2/impl/PrefixBasedActionProxyFactory.java
+++ b/core/src/main/java/org/apache/struts2/impl/PrefixBasedActionProxyFactory.java
@@ -5,8 +5,8 @@ import com.opensymphony.xwork2.ActionProxyFactory;
import com.opensymphony.xwork2.DefaultActionProxyFactory;
import com.opensymphony.xwork2.inject.Container;
import com.opensymphony.xwork2.inject.Inject;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.StrutsConstants;
import java.util.HashMap;
@@ -35,7 +35,7 @@ public class PrefixBasedActionProxyFactory extends DefaultActionProxyFactory {
private static final Logger LOG = LogManager.getLogger(PrefixBasedActionProxyFactory.class);
- private Map<String, ActionProxyFactory> actionProxyFactories = new HashMap<String, ActionProxyFactory>();
+ private Map<String, ActionProxyFactory> actionProxyFactories = new HashMap<>();
private ActionProxyFactory defaultFactory;
@Inject
@@ -54,7 +54,7 @@ public class PrefixBasedActionProxyFactory extends DefaultActionProxyFactory {
String[] factories = list.split(",");
for (String factory : factories) {
String[] thisFactory = factory.split(":");
- if ((thisFactory != null) && (thisFactory.length == 2)) {
+ if (thisFactory.length == 2) {
String factoryPrefix = thisFactory[0].trim();
String factoryName = thisFactory[1].trim();
ActionProxyFactory obj = container.getInstance(ActionProxyFactory.class, factoryName);
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/impl/StrutsObjectFactory.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/impl/StrutsObjectFactory.java b/core/src/main/java/org/apache/struts2/impl/StrutsObjectFactory.java
index be2f19c..528ee34 100644
--- a/core/src/main/java/org/apache/struts2/impl/StrutsObjectFactory.java
+++ b/core/src/main/java/org/apache/struts2/impl/StrutsObjectFactory.java
@@ -53,7 +53,7 @@ public class StrutsObjectFactory extends ObjectFactory {
throws ConfigurationException {
String className = interceptorConfig.getClassName();
- Map<String, String> params = new HashMap<String, String>();
+ Map<String, String> params = new HashMap<>();
Map typeParams = interceptorConfig.getParams();
if (typeParams != null && !typeParams.isEmpty())
params.putAll(typeParams);
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java
index e2ad74f..ba8389e 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/ActionMappingParametersInteceptor.java
@@ -21,16 +21,15 @@
package org.apache.struts2.interceptor;
-import com.opensymphony.xwork2.interceptor.ParametersInterceptor;
import com.opensymphony.xwork2.ActionContext;
+import com.opensymphony.xwork2.interceptor.ParametersInterceptor;
+import org.apache.struts2.ServletActionContext;
+import org.apache.struts2.dispatcher.mapper.ActionMapping;
-import java.util.Map;
import java.util.Collections;
+import java.util.Map;
import java.util.TreeMap;
-import org.apache.struts2.ServletActionContext;
-import org.apache.struts2.dispatcher.mapper.ActionMapping;
-
/**
* <!-- START SNIPPET: description -->
* This interceptor sets all parameters from the action mapping, for this request, on the value stack. It operates
@@ -75,8 +74,7 @@ public class ActionMappingParametersInteceptor extends ParametersInterceptor {
/**
* @param ac The action context
- * @return the parameters from the action mapping in the context. If none found, returns
- * an empty map.
+ * @return the parameters from the action mapping in the context. If none found, returns an empty map.
*/
@Override
protected Map<String, Object> retrieveParameters(ActionContext ac) {
@@ -100,7 +98,7 @@ public class ActionMappingParametersInteceptor extends ParametersInterceptor {
@Override
protected void addParametersToContext(ActionContext ac, Map newParams) {
Map previousParams = ac.getParameters();
- Map combinedParams = null;
+ Map combinedParams;
if (previousParams != null) {
combinedParams = new TreeMap(previousParams);
} else {
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java
index b6410b8..8fd638b 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/CheckboxInterceptor.java
@@ -22,14 +22,14 @@
package org.apache.struts2.interceptor;
import com.opensymphony.xwork2.ActionInvocation;
-import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.LogManager;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
-import java.util.Map;
-import java.util.Set;
import java.util.HashMap;
import java.util.Iterator;
+import java.util.Map;
+import java.util.Set;
/**
* <!-- START SNIPPET: description -->
@@ -59,7 +59,7 @@ public class CheckboxInterceptor extends AbstractInterceptor {
public String intercept(ActionInvocation ai) throws Exception {
Map<String, Object> parameters = ai.getInvocationContext().getParameters();
- Map<String, String[]> newParams = new HashMap<String, String[]>();
+ Map<String, String[]> newParams = new HashMap<>();
Set<Map.Entry<String, Object>> entries = parameters.entrySet();
for (Iterator<Map.Entry<String, Object>> iterator = entries.iterator(); iterator.hasNext();) {
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/ClearSessionInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/ClearSessionInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ClearSessionInterceptor.java
index cf2d797..aa4f3e5 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/ClearSessionInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/ClearSessionInterceptor.java
@@ -21,13 +21,13 @@
package org.apache.struts2.interceptor;
-import java.util.Map;
-
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+import java.util.Map;
/**
* <!-- START SNIPPET: description -->
@@ -83,10 +83,8 @@ public class ClearSessionInterceptor extends AbstractInterceptor {
* @see com.opensymphony.xwork2.interceptor.Interceptor#intercept(com.opensymphony.xwork2.ActionInvocation)
*/
public String intercept(ActionInvocation invocation) throws Exception {
- if (LOG.isDebugEnabled()) {
- LOG.debug("Clearing HttpSession");
- }
-
+ LOG.debug("Clearing HttpSession");
+
ActionContext ac = invocation.getInvocationContext();
Map session = ac.getSession();
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java
index 76a4f2c..c25180b 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java
@@ -29,8 +29,8 @@ import com.opensymphony.xwork2.security.AcceptedPatternsChecker;
import com.opensymphony.xwork2.security.ExcludedPatternsChecker;
import com.opensymphony.xwork2.util.TextParseUtil;
import com.opensymphony.xwork2.util.ValueStack;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.ServletActionContext;
import javax.servlet.http.Cookie;
@@ -195,8 +195,9 @@ public class CookieInterceptor extends AbstractInterceptor {
* @param cookiesName
*/
public void setCookiesName(String cookiesName) {
- if (cookiesName != null)
+ if (cookiesName != null) {
this.cookiesNameSet = TextParseUtil.commaDelimitedStringToSet(cookiesName);
+ }
}
/**
@@ -207,8 +208,9 @@ public class CookieInterceptor extends AbstractInterceptor {
* @param cookiesValue
*/
public void setCookiesValue(String cookiesValue) {
- if (cookiesValue != null)
+ if (cookiesValue != null) {
this.cookiesValueSet = TextParseUtil.commaDelimitedStringToSet(cookiesValue);
+ }
}
/**
@@ -222,12 +224,10 @@ public class CookieInterceptor extends AbstractInterceptor {
}
public String intercept(ActionInvocation invocation) throws Exception {
- if (LOG.isDebugEnabled()) {
- LOG.debug("start interception");
- }
+ LOG.debug("start interception");
// contains selected cookies
- final Map<String, String> cookiesMap = new LinkedHashMap<String, String>();
+ final Map<String, String> cookiesMap = new LinkedHashMap<>();
Cookie[] cookies = ServletActionContext.getRequest().getCookies();
if (cookies != null) {
@@ -239,9 +239,7 @@ public class CookieInterceptor extends AbstractInterceptor {
if (isAcceptableName(name) && isAcceptableValue(value)) {
if (cookiesNameSet.contains("*")) {
- if (LOG.isDebugEnabled()) {
- LOG.debug("contains cookie name [*] in configured cookies name set, cookie with name [" + name + "] with value [" + value + "] will be injected");
- }
+ LOG.debug("Contains cookie name [*] in configured cookies name set, cookie with name [{}] with value [{}] will be injected", name, value);
populateCookieValueIntoStack(name, value, cookiesMap, stack);
} else if (cookiesNameSet.contains(cookie.getName())) {
populateCookieValueIntoStack(name, value, cookiesMap, stack);
@@ -346,9 +344,7 @@ public class CookieInterceptor extends AbstractInterceptor {
// if cookiesValues is specified, the cookie's value must match before we
// inject them into Struts' action
if (cookiesValueSet.contains(cookieValue)) {
- if (LOG.isDebugEnabled()) {
- LOG.debug("both configured cookie name and value matched, cookie [{}] with value [{}] will be injected", cookieName, cookieValue);
- }
+ LOG.debug("both configured cookie name and value matched, cookie [{}] with value [{}] will be injected", cookieName, cookieValue);
cookiesMap.put(cookieName, cookieValue);
stack.setValue(cookieName, cookieValue);
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/CreateSessionInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/CreateSessionInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CreateSessionInterceptor.java
index 89251f4..6f604d0 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/CreateSessionInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/CreateSessionInterceptor.java
@@ -23,8 +23,8 @@ package org.apache.struts2.interceptor;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.dispatcher.SessionMap;
@@ -92,9 +92,7 @@ public class CreateSessionInterceptor extends AbstractInterceptor {
public String intercept(ActionInvocation invocation) throws Exception {
HttpSession httpSession = ServletActionContext.getRequest().getSession(false);
if (httpSession == null) {
- if (LOG.isDebugEnabled()) {
- LOG.debug("Creating new HttpSession and new SessionMap in ServletActionContext");
- }
+ LOG.debug("Creating new HttpSession and new SessionMap in ServletActionContext");
ServletActionContext.getRequest().getSession(true);
ServletActionContext.getContext().setSession(new SessionMap<String, Object>(ServletActionContext.getRequest()));
}
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/DateTextFieldInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/DateTextFieldInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/DateTextFieldInterceptor.java
index cef6905..05d3851 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/DateTextFieldInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/DateTextFieldInterceptor.java
@@ -1,18 +1,14 @@
package org.apache.struts2.interceptor;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-import java.util.Map.Entry;
-
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.Map.Entry;
public class DateTextFieldInterceptor implements Interceptor {
@@ -31,9 +27,9 @@ public class DateTextFieldInterceptor implements Interceptor {
private String description;
private Integer length;
private String dateType;
-
- private DateWord(String n, Integer l, String t) {
- description = n;
+
+ DateWord(String n, Integer l, String t) {
+ description = n;
length = l;
dateType = t;
}
@@ -68,7 +64,7 @@ public class DateTextFieldInterceptor implements Interceptor {
public String intercept(ActionInvocation ai) throws Exception {
Map<String, Object> parameters = ai.getInvocationContext().getParameters();
Set<Entry<String, Object>> entries = parameters.entrySet();
- Map<String, Map<String, String>> dates = new HashMap<String, Map<String,String>>();
+ Map<String, Map<String, String>> dates = new HashMap<>();
DateWord[] dateWords = DateWord.getAll();
@@ -88,8 +84,8 @@ public class DateTextFieldInterceptor implements Interceptor {
iterator.remove();
Map<String, String> map = dates.get(name);
if (map == null) {
- map = new HashMap<String, String>();
- dates.put(name, map);
+ map = new HashMap<>();
+ dates.put(name, map);
}
map.put(dateWord.getDateType(), values[0]);
}
@@ -100,7 +96,7 @@ public class DateTextFieldInterceptor implements Interceptor {
}
// Create all the date objects
- Map<String, Date> newParams = new HashMap<String, Date>();
+ Map<String, Date> newParams = new HashMap<>();
Set<Entry<String, Map<String, String>>> dateEntries = dates.entrySet();
for (Entry<String, Map<String, String>> dateEntry : dateEntries) {
Set<Entry<String, String>> dateFormatEntries = dateEntry.getValue().entrySet();
@@ -116,8 +112,7 @@ public class DateTextFieldInterceptor implements Interceptor {
Date value = formatter.parse(dateValue);
newParams.put(dateEntry.getKey(), value);
} catch (ParseException e) {
- LOG.warn("Cannot parse the parameter '" + dateEntry.getKey()
- + "' with format '" + dateFormat + "' and with value '" + dateValue + "'");
+ LOG.warn("Cannot parse the parameter '{}' with format '{}' and with value '{}'", dateEntry.getKey(), dateFormat, dateValue);
}
}
parameters.putAll(newParams);
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/DeprecationInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/DeprecationInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/DeprecationInterceptor.java
index 16974d8..3722efe 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/DeprecationInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/DeprecationInterceptor.java
@@ -5,8 +5,9 @@ import com.opensymphony.xwork2.XWorkConstants;
import com.opensymphony.xwork2.inject.Container;
import com.opensymphony.xwork2.inject.Inject;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
-import org.apache.logging.log4j.Logger;
+import org.apache.commons.lang3.BooleanUtils;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.StrutsConstants;
import java.lang.reflect.Field;
@@ -47,7 +48,7 @@ public class DeprecationInterceptor extends AbstractInterceptor {
* @throws Exception
*/
private String validate() throws Exception {
- Set<String> constants = new HashSet<String>();
+ Set<String> constants = new HashSet<>();
readConstants(constants, StrutsConstants.class);
readConstants(constants, XWorkConstants.class);
@@ -55,7 +56,7 @@ public class DeprecationInterceptor extends AbstractInterceptor {
Set<String> applicationConstants = container.getInstanceNames(String.class);
String message = null;
if (!constants.containsAll(applicationConstants)) {
- Set<String> deprecated = new HashSet<String>(applicationConstants);
+ Set<String> deprecated = new HashSet<>(applicationConstants);
deprecated.removeAll(constants);
message = prepareMessage(deprecated);
}
@@ -94,7 +95,7 @@ public class DeprecationInterceptor extends AbstractInterceptor {
@Inject(StrutsConstants.STRUTS_DEVMODE)
public void setDevMode(String state) {
- this.devMode = "true".equals(state);
+ this.devMode = BooleanUtils.toBoolean(state);
}
@Inject
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java
index 9d42dfb..8b107ee 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java
@@ -21,26 +21,21 @@
package org.apache.struts2.interceptor;
-import java.util.Collections;
-import java.util.Map;
-
+import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.ActionProxy;
-import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.inject.Container;
import com.opensymphony.xwork2.inject.Inject;
-import com.opensymphony.xwork2.config.entities.ResultConfig;
import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
-import org.apache.struts2.util.TokenHelper;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.ServletActionContext;
-import org.apache.struts2.dispatcher.Dispatcher;
-import org.apache.struts2.views.freemarker.FreemarkerManager;
+import org.apache.struts2.util.TokenHelper;
import org.apache.struts2.views.freemarker.FreemarkerResult;
import javax.servlet.http.HttpSession;
+import java.util.Map;
/**
@@ -264,12 +259,9 @@ public class ExecuteAndWaitInterceptor extends MethodFilterInterceptor {
Map results = proxy.getConfig().getResults();
if (!results.containsKey(WAIT)) {
- if (LOG.isWarnEnabled()) {
LOG.warn("ExecuteAndWait interceptor has detected that no result named 'wait' is available. " +
"Defaulting to a plain built-in wait page. It is highly recommend you " +
- "provide an action-specific or global result named '" + WAIT +
- "'.");
- }
+ "provide an action-specific or global result named '{}'.", WAIT);
// no wait result? hmm -- let's try to do dynamically put it in for you!
//we used to add a fake "wait" result here, since the configuration is unmodifiable, that is no longer
@@ -314,7 +306,7 @@ public class ExecuteAndWaitInterceptor extends MethodFilterInterceptor {
* Performs the initial delay.
* <p/>
* When this interceptor is executed for the first time this methods handles any provided initial delay.
- * An initial delay is a time in miliseconds we let the server wait before we continue.
+ * An initial delay is a time in milliseconds we let the server wait before we continue.
* <br/> During the wait this interceptor will wake every 100 millis to check if the background
* process is done premature, thus if the job for some reason doesn't take to long the wait
* page is not shown to the user.
@@ -328,16 +320,12 @@ public class ExecuteAndWaitInterceptor extends MethodFilterInterceptor {
}
int steps = delay / delaySleepInterval;
- if (LOG.isDebugEnabled()) {
- LOG.debug("Delaying for " + delay + " millis. (using " + steps + " steps)");
- }
+ LOG.debug("Delaying for {} millis. (using {} steps)", delay, steps);
int step;
for (step = 0; step < steps && !bp.isDone(); step++) {
Thread.sleep(delaySleepInterval);
}
- if (LOG.isDebugEnabled()) {
- LOG.debug("Sleeping ended after " + step + " steps and the background process is " + (bp.isDone() ? " done" : " not done"));
- }
+ LOG.debug("Sleeping ended after {} steps and the background process is {}", step, (bp.isDone() ? " done" : " not done"));
}
/**
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java
index 109f11a..76ae56a 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/FileUploadInterceptor.java
@@ -21,19 +21,13 @@
package org.apache.struts2.interceptor;
-import com.opensymphony.xwork2.ActionContext;
-import com.opensymphony.xwork2.ActionInvocation;
-import com.opensymphony.xwork2.ActionProxy;
-import com.opensymphony.xwork2.LocaleProvider;
-import com.opensymphony.xwork2.TextProvider;
-import com.opensymphony.xwork2.TextProviderFactory;
-import com.opensymphony.xwork2.ValidationAware;
+import com.opensymphony.xwork2.*;
import com.opensymphony.xwork2.inject.Container;
import com.opensymphony.xwork2.inject.Inject;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
import com.opensymphony.xwork2.util.TextParseUtil;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.dispatcher.multipart.MultiPartRequestWrapper;
import org.apache.struts2.util.ContentTypeMatcher;
@@ -41,14 +35,7 @@ import org.apache.struts2.util.ContentTypeMatcher;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.text.NumberFormat;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
/**
* <!-- START SNIPPET: description -->
@@ -288,9 +275,9 @@ public class FileUploadInterceptor extends AbstractInterceptor {
// get a File object for the uploaded File
File[] files = multiWrapper.getFiles(inputName);
if (files != null && files.length > 0) {
- List<File> acceptedFiles = new ArrayList<File>(files.length);
- List<String> acceptedContentTypes = new ArrayList<String>(files.length);
- List<String> acceptedFileNames = new ArrayList<String>(files.length);
+ List<File> acceptedFiles = new ArrayList<>(files.length);
+ List<String> acceptedContentTypes = new ArrayList<>(files.length);
+ List<String> acceptedFileNames = new ArrayList<>(files.length);
String contentTypeName = inputName + "ContentType";
String fileNameName = inputName + "FileName";
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/MessageStoreInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/MessageStoreInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/MessageStoreInterceptor.java
index 3c358f5..aff8aac 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/MessageStoreInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/MessageStoreInterceptor.java
@@ -21,19 +21,18 @@
package org.apache.struts2.interceptor;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.LinkedHashMap;
-import java.util.Map;
-
-import org.apache.struts2.dispatcher.ServletRedirectResult;
-
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.ValidationAware;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.struts2.dispatcher.ServletRedirectResult;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.LinkedHashMap;
+import java.util.Map;
/**
* <!-- START SNIPPET: description -->
@@ -189,18 +188,14 @@ public class MessageStoreInterceptor extends AbstractInterceptor {
}
public String intercept(ActionInvocation invocation) throws Exception {
- if (LOG.isDebugEnabled()) {
- LOG.debug("entering MessageStoreInterceptor ...");
- }
+ LOG.debug("entering MessageStoreInterceptor ...");
before(invocation);
String result = invocation.invoke();
after(invocation, result);
- if (LOG.isDebugEnabled()) {
- LOG.debug("exit executing MessageStoreInterceptor");
- }
-
+ LOG.debug("exit executing MessageStoreInterceptor");
+
return result;
}
@@ -224,17 +219,13 @@ public class MessageStoreInterceptor extends AbstractInterceptor {
Map session = (Map) invocation.getInvocationContext().get(ActionContext.SESSION);
if (session == null) {
- if (LOG.isDebugEnabled()) {
- LOG.debug("Session is not open, no errors / messages could be retrieve for action ["+action+"]");
- }
+ LOG.debug("Session is not open, no errors / messages could be retrieve for action [{}]", action);
return;
}
ValidationAware validationAwareAction = (ValidationAware) action;
- if (LOG.isDebugEnabled()) {
- LOG.debug("retrieve error / message from session to populate into action ["+action+"]");
- }
+ LOG.debug("Retrieve error / message from session to populate into action [{}]", action);
Collection actionErrors = (Collection) session.get(actionErrorsSessionKey);
Collection actionMessages = (Collection) session.get(actionMessagesSessionKey);
@@ -283,23 +274,18 @@ public class MessageStoreInterceptor extends AbstractInterceptor {
Map session = (Map) invocation.getInvocationContext().get(ActionContext.SESSION);
if (session == null) {
- if (LOG.isDebugEnabled()) {
- LOG.debug("Could not store action ["+action+"] error/messages into session, because session hasn't been opened yet.");
- }
+ LOG.debug("Could not store action [{}] error/messages into session, because session hasn't been opened yet.", action);
return;
}
- if (LOG.isDebugEnabled()) {
- LOG.debug("store action ["+action+"] error/messages into session ");
- }
+ LOG.debug("Store action [{}] error/messages into session.", action);
ValidationAware validationAwareAction = (ValidationAware) action;
session.put(actionErrorsSessionKey, validationAwareAction.getActionErrors());
session.put(actionMessagesSessionKey, validationAwareAction.getActionMessages());
session.put(fieldErrorsSessionKey, validationAwareAction.getFieldErrors());
- }
- else if(LOG.isDebugEnabled()) {
- LOG.debug("Action ["+action+"] is not ValidationAware, no message / error that are storeable");
+ } else {
+ LOG.debug("Action [{}] is not ValidationAware, no message / error that are storeable", action);
}
}
}
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/MultiselectInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/MultiselectInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/MultiselectInterceptor.java
index 15886b6..4c8b844 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/MultiselectInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/MultiselectInterceptor.java
@@ -48,7 +48,7 @@ public class MultiselectInterceptor extends AbstractInterceptor {
*/
public String intercept(ActionInvocation actionInvocation) throws Exception {
Map<String, Object> parameters = actionInvocation.getInvocationContext().getParameters();
- Map<String, Object> newParams = new HashMap<String, Object>();
+ Map<String, Object> newParams = new HashMap<>();
Set<String> keys = parameters.keySet();
for (Iterator<String> iterator = keys.iterator(); iterator.hasNext();) {
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/ProfilingActivationInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/ProfilingActivationInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ProfilingActivationInterceptor.java
index 0de1996..d5be374 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/ProfilingActivationInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/ProfilingActivationInterceptor.java
@@ -25,7 +25,7 @@ import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.inject.Inject;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
import com.opensymphony.xwork2.util.profiling.UtilTimerStack;
-
+import org.apache.commons.lang3.BooleanUtils;
import org.apache.struts2.StrutsConstants;
/**
@@ -87,7 +87,7 @@ public class ProfilingActivationInterceptor extends AbstractInterceptor {
@Inject(StrutsConstants.STRUTS_DEVMODE)
public void setDevMode(String mode) {
- this.devMode = "true".equals(mode);
+ this.devMode = BooleanUtils.toBoolean(mode);
}
@Override
@@ -96,13 +96,11 @@ public class ProfilingActivationInterceptor extends AbstractInterceptor {
Object val = invocation.getInvocationContext().getParameters().get(profilingKey);
if (val != null) {
String sval = (val instanceof String ? (String)val : ((String[])val)[0]);
- boolean enable = "yes".equalsIgnoreCase(sval) || "true".equalsIgnoreCase(sval);
+ boolean enable = BooleanUtils.toBoolean(sval);
UtilTimerStack.setActive(enable);
invocation.getInvocationContext().getParameters().remove(profilingKey);
}
}
return invocation.invoke();
-
}
-
}
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/RolesInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/RolesInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/RolesInterceptor.java
index eb087c1..9177ea2 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/RolesInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/RolesInterceptor.java
@@ -23,8 +23,8 @@ package org.apache.struts2.interceptor;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.struts2.ServletActionContext;
import javax.servlet.http.HttpServletRequest;
@@ -172,9 +172,7 @@ public class RolesInterceptor extends AbstractInterceptor {
* @return The result code
* @throws Exception
*/
- protected String handleRejection(ActionInvocation invocation,
- HttpServletResponse response)
- throws Exception {
+ protected String handleRejection(ActionInvocation invocation, HttpServletResponse response) throws Exception {
response.sendError(HttpServletResponse.SC_FORBIDDEN);
return null;
}
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/ScopeInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/ScopeInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/ScopeInterceptor.java
index 28cca41..dfcd4d3 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/ScopeInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/ScopeInterceptor.java
@@ -21,22 +21,23 @@
package org.apache.struts2.interceptor;
-import java.io.Serializable;
-import java.util.IdentityHashMap;
-import java.util.Map;
-
-import org.apache.struts2.ServletActionContext;
-import org.apache.struts2.StrutsException;
-import org.apache.struts2.dispatcher.SessionMap;
-
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.ActionProxy;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
import com.opensymphony.xwork2.interceptor.PreResultListener;
import com.opensymphony.xwork2.util.ValueStack;
-import org.apache.logging.log4j.Logger;
+import org.apache.commons.lang3.BooleanUtils;
+import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.struts2.ServletActionContext;
+import org.apache.struts2.StrutsException;
+import org.apache.struts2.dispatcher.SessionMap;
+
+import java.io.Serializable;
+import java.util.IdentityHashMap;
+import java.util.Map;
/**
* <!-- START SNIPPET: description -->
@@ -182,8 +183,8 @@ public class ScopeInterceptor extends AbstractInterceptor implements PreResultLi
* @param value True if it should be created
*/
public void setAutoCreateSession(String value) {
- if (value != null && value.length() > 0) {
- this.autoCreateSession = Boolean.valueOf(value).booleanValue();
+ if (StringUtils.isNotBlank(value)) {
+ this.autoCreateSession = BooleanUtils.toBoolean(value);
}
}
@@ -219,7 +220,7 @@ public class ScopeInterceptor extends AbstractInterceptor implements PreResultLi
private static final Object NULL = new NULLClass();
- private static final Object nullConvert(Object o) {
+ private static Object nullConvert(Object o) {
if (o == null) {
return NULL;
}
@@ -233,10 +234,10 @@ public class ScopeInterceptor extends AbstractInterceptor implements PreResultLi
private static Map locks = new IdentityHashMap();
- static final void lock(Object o, ActionInvocation invocation) throws Exception {
+ static void lock(Object o, ActionInvocation invocation) throws Exception {
synchronized (o) {
int count = 3;
- Object previous = null;
+ Object previous;
while ((previous = locks.get(o)) != null) {
if (previous == invocation) {
return;
@@ -249,12 +250,11 @@ public class ScopeInterceptor extends AbstractInterceptor implements PreResultLi
}
o.wait(10000);
}
- ;
locks.put(o, invocation);
}
}
- static final void unlock(Object o) {
+ static void unlock(Object o) {
synchronized (o) {
locks.remove(o);
o.notify();
@@ -285,19 +285,13 @@ public class ScopeInterceptor extends AbstractInterceptor implements PreResultLi
Map app = ActionContext.getContext().getApplication();
final ValueStack stack = ActionContext.getContext().getValueStack();
- if (LOG.isDebugEnabled()) {
- LOG.debug("scope interceptor before");
- }
+ LOG.debug("scope interceptor before");
if (application != null)
- for (int i = 0; i < application.length; i++) {
- String string = application[i];
+ for (String string : application) {
Object attribute = app.get(key + string);
if (attribute != null) {
- if (LOG.isDebugEnabled()) {
- LOG.debug("application scoped variable set " + string + " = " + String.valueOf(attribute));
- }
-
+ LOG.debug("Application scoped variable set {} = {}", string, String.valueOf(attribute));
stack.setValue(string, nullConvert(attribute));
}
}
@@ -316,13 +310,10 @@ public class ScopeInterceptor extends AbstractInterceptor implements PreResultLi
}
if (session != null && (!"start".equals(type))) {
- for (int i = 0; i < session.length; i++) {
- String string = session[i];
+ for (String string : session) {
Object attribute = ses.get(key + string);
if (attribute != null) {
- if (LOG.isDebugEnabled()) {
- LOG.debug("session scoped variable set " + string + " = " + String.valueOf(attribute));
- }
+ LOG.debug("Session scoped variable set {} = {}", string, String.valueOf(attribute));
stack.setValue(string, nullConvert(attribute));
}
}
@@ -342,12 +333,9 @@ public class ScopeInterceptor extends AbstractInterceptor implements PreResultLi
final ValueStack stack = ActionContext.getContext().getValueStack();
if (application != null)
- for (int i = 0; i < application.length; i++) {
- String string = application[i];
+ for (String string : application) {
Object value = stack.findValue(string);
- if (LOG.isDebugEnabled()) {
- LOG.debug("application scoped variable saved " + string + " = " + String.valueOf(value));
- }
+ LOG.debug("Application scoped variable saved {} = {}", string, String.valueOf(value));
//if( value != null)
app.put(key + string, nullConvert(value));
@@ -359,16 +347,12 @@ public class ScopeInterceptor extends AbstractInterceptor implements PreResultLi
if (ses != null) {
if (session != null) {
- for (int i = 0; i < session.length; i++) {
- String string = session[i];
+ for (String string : session) {
if (ends) {
ses.remove(key + string);
} else {
Object value = stack.findValue(string);
-
- if (LOG.isDebugEnabled()) {
- LOG.debug("session scoped variable saved " + string + " = " + String.valueOf(value));
- }
+ LOG.debug("Session scoped variable saved {} = {}", string, String.valueOf(value));
// Null value should be scoped too
//if( value != null)
@@ -380,9 +364,7 @@ public class ScopeInterceptor extends AbstractInterceptor implements PreResultLi
} else {
LOG.debug("No HttpSession created... Cannot save session scoped variables.");
}
- if (LOG.isDebugEnabled()) {
- LOG.debug("scope interceptor after (before result)");
- }
+ LOG.debug("scope interceptor after (before result)");
}
/**
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java
index d6c08f0..53a9807 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/TokenInterceptor.java
@@ -136,9 +136,7 @@ public class TokenInterceptor extends MethodFilterInterceptor {
*/
@Override
protected String doIntercept(ActionInvocation invocation) throws Exception {
- if (log.isDebugEnabled()) {
- log.debug("Intercepting invocation to check for valid transaction token.");
- }
+ log.debug("Intercepting invocation to check for valid transaction token.");
return handleToken(invocation);
}
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/debugging/DebuggingInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/debugging/DebuggingInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/debugging/DebuggingInterceptor.java
index 7ff8799..7ea1fed 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/debugging/DebuggingInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/debugging/DebuggingInterceptor.java
@@ -21,6 +21,22 @@
package org.apache.struts2.interceptor.debugging;
+import com.opensymphony.xwork2.ActionContext;
+import com.opensymphony.xwork2.ActionInvocation;
+import com.opensymphony.xwork2.inject.Inject;
+import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
+import com.opensymphony.xwork2.interceptor.PreResultListener;
+import com.opensymphony.xwork2.util.ValueStack;
+import com.opensymphony.xwork2.util.reflection.ReflectionProvider;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.struts2.ServletActionContext;
+import org.apache.struts2.StrutsConstants;
+import org.apache.struts2.dispatcher.FilterDispatcher;
+import org.apache.struts2.views.freemarker.FreemarkerManager;
+import org.apache.struts2.views.freemarker.FreemarkerResult;
+
+import javax.servlet.http.HttpServletResponse;
import java.beans.BeanInfo;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
@@ -29,30 +45,7 @@ import java.io.PrintWriter;
import java.io.StringWriter;
import java.lang.reflect.Array;
import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.struts2.ServletActionContext;
-import org.apache.struts2.StrutsConstants;
-import org.apache.struts2.dispatcher.FilterDispatcher;
-import org.apache.struts2.views.freemarker.FreemarkerManager;
-import org.apache.struts2.views.freemarker.FreemarkerResult;
-
-import com.opensymphony.xwork2.ActionContext;
-import com.opensymphony.xwork2.ActionInvocation;
-import com.opensymphony.xwork2.inject.Inject;
-import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
-import com.opensymphony.xwork2.interceptor.PreResultListener;
-import com.opensymphony.xwork2.util.ValueStack;
-import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.LogManager;
-import com.opensymphony.xwork2.util.reflection.ReflectionProvider;
+import java.util.*;
/**
* <!-- START SNIPPET: description -->
@@ -99,7 +92,7 @@ public class DebuggingInterceptor extends AbstractInterceptor {
"com.opensymphony.xwork2.", "xwork."};
private String[] _ignoreKeys = new String[]{"application", "session",
"parameters", "request"};
- private HashSet<String> ignoreKeys = new HashSet<String>(Arrays.asList(_ignoreKeys));
+ private HashSet<String> ignoreKeys = new HashSet<>(Arrays.asList(_ignoreKeys));
private final static String XML_MODE = "xml";
private final static String CONSOLE_MODE = "console";
@@ -145,7 +138,7 @@ public class DebuggingInterceptor extends AbstractInterceptor {
boolean actionOnly = false;
boolean cont = true;
Boolean devModeOverride = FilterDispatcher.getDevModeOverride();
- boolean devMode = devModeOverride != null ? devModeOverride.booleanValue() : this.devMode;
+ boolean devMode = devModeOverride != null ? devModeOverride : this.devMode;
if (devMode) {
final ActionContext ctx = ActionContext.getContext();
String type = getParameter(DEBUG_PARAM);
@@ -266,7 +259,6 @@ public class DebuggingInterceptor extends AbstractInterceptor {
}
}
-
/**
* Gets a single string from the request parameters
*
@@ -281,7 +273,6 @@ public class DebuggingInterceptor extends AbstractInterceptor {
return null;
}
-
/**
* Prints the current context to the response in XML format.
*/
@@ -299,7 +290,6 @@ public class DebuggingInterceptor extends AbstractInterceptor {
}
}
-
/**
* Prints the current request to the existing writer.
*
@@ -308,8 +298,7 @@ public class DebuggingInterceptor extends AbstractInterceptor {
protected void printContext(PrettyPrintWriter writer) {
ActionContext ctx = ActionContext.getContext();
writer.startNode(DEBUG_PARAM);
- serializeIt(ctx.getParameters(), "parameters", writer,
- new ArrayList<Object>());
+ serializeIt(ctx.getParameters(), "parameters", writer, new ArrayList<>());
writer.startNode("context");
String key;
Map ctxMap = ctx.getContextMap();
@@ -324,24 +313,23 @@ public class DebuggingInterceptor extends AbstractInterceptor {
}
}
if (print) {
- serializeIt(ctxMap.get(key), key, writer, new ArrayList<Object>());
+ serializeIt(ctxMap.get(key), key, writer, new ArrayList<>());
}
}
writer.endNode();
Map requestMap = (Map) ctx.get("request");
serializeIt(requestMap, "request", writer, filterValueStack(requestMap));
- serializeIt(ctx.getSession(), "session", writer, new ArrayList<Object>());
+ serializeIt(ctx.getSession(), "session", writer, new ArrayList<>());
ValueStack stack = (ValueStack) ctx.get(ActionContext.VALUE_STACK);
- serializeIt(stack.getRoot(), "valueStack", writer, new ArrayList<Object>());
+ serializeIt(stack.getRoot(), "valueStack", writer, new ArrayList<>());
writer.endNode();
}
-
/**
* Recursive function to serialize objects to XML. Currently it will
* serialize Collections, maps, Arrays, and JavaBeans. It maintains a stack
- * of objects serialized already in the current functioncall. This is used
+ * of objects serialized already in the current function call. This is used
* to avoid looping (stack overflow) of circular linked objects. Struts and
* XWork objects are ignored.
*
@@ -356,10 +344,7 @@ public class DebuggingInterceptor extends AbstractInterceptor {
writer.flush();
// Check stack for this object
if ((bean != null) && (stack.contains(bean))) {
- if (LOG.isInfoEnabled()) {
- LOG.info("Circular reference detected, not serializing object: "
- + name);
- }
+ LOG.info("Circular reference detected, not serializing object: {}", name);
return;
} else if (bean != null) {
// Push object onto stack.
@@ -428,7 +413,6 @@ public class DebuggingInterceptor extends AbstractInterceptor {
stack.remove(bean);
}
-
/**
* @param enableXmlWithConsole the enableXmlWithConsole to set
*/
@@ -436,17 +420,14 @@ public class DebuggingInterceptor extends AbstractInterceptor {
this.enableXmlWithConsole = enableXmlWithConsole;
}
-
private List<Object> filterValueStack(Map requestMap) {
- List<Object> filter = new ArrayList<Object>();
- Object valueStack = requestMap.get("struts.valueStack");
+ List<Object> filter = new ArrayList<>();
+ Object valueStack = requestMap.get("struts.valueStack");
if(valueStack != null) {
filter.add(valueStack);
}
return filter;
}
-
-
}
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/debugging/ObjectToHTMLWriter.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/debugging/ObjectToHTMLWriter.java b/core/src/main/java/org/apache/struts2/interceptor/debugging/ObjectToHTMLWriter.java
index 223fe98..396614b 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/debugging/ObjectToHTMLWriter.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/debugging/ObjectToHTMLWriter.java
@@ -21,17 +21,16 @@
package org.apache.struts2.interceptor.debugging;
+import com.opensymphony.xwork2.util.reflection.ReflectionException;
+import com.opensymphony.xwork2.util.reflection.ReflectionProvider;
+
import java.beans.IntrospectionException;
import java.io.Writer;
import java.util.Collection;
-import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import com.opensymphony.xwork2.util.reflection.ReflectionException;
-import com.opensymphony.xwork2.util.reflection.ReflectionProvider;
-
/**
* Writes an object as a table, where each field can be expanded if it is an Object/Collection/Array
*
@@ -51,9 +50,8 @@ class ObjectToHTMLWriter {
prettyWriter.addAttribute("class", "debugTable");
if (root instanceof Map) {
- for (Iterator iterator = ((Map) root).entrySet().iterator(); iterator
- .hasNext();) {
- Map.Entry property = (Map.Entry) iterator.next();
+ for (Object next : ((Map) root).entrySet()) {
+ Map.Entry property = (Map.Entry) next;
String key = property.getKey().toString();
Object value = property.getValue();
writeProperty(key, value, expr);
@@ -66,8 +64,8 @@ class ObjectToHTMLWriter {
}
} else if (root instanceof Set) {
Set set = (Set) root;
- for (Iterator iterator = set.iterator(); iterator.hasNext();) {
- writeProperty("", iterator.next(), expr);
+ for (Object next : set) {
+ writeProperty("", next, expr);
}
} else if (root.getClass().isArray()) {
Object[] objects = (Object[]) root;
@@ -81,8 +79,9 @@ class ObjectToHTMLWriter {
String name = property.getKey();
Object value = property.getValue();
- if ("class".equals(name))
+ if ("class".equals(name)) {
continue;
+ }
writeProperty(name, value, expr);
}
@@ -104,9 +103,8 @@ class ObjectToHTMLWriter {
prettyWriter.startNode("td");
if (value != null) {
//if is is an empty collection or array, don't write a link
- if (value != null &&
- (isEmptyCollection(value) || isEmptyMap(value) || (value.getClass()
- .isArray() && ((Object[]) value).length == 0))) {
+ if (isEmptyCollection(value) || isEmptyMap(value) || (value.getClass()
+ .isArray() && ((Object[]) value).length == 0)) {
prettyWriter.addAttribute("class", "emptyCollection");
prettyWriter.setValue("empty");
} else {
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/debugging/PrettyPrintWriter.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/debugging/PrettyPrintWriter.java b/core/src/main/java/org/apache/struts2/interceptor/debugging/PrettyPrintWriter.java
index 2541040..1902bd9 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/debugging/PrettyPrintWriter.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/debugging/PrettyPrintWriter.java
@@ -28,7 +28,7 @@ import java.util.Stack;
public class PrettyPrintWriter {
private final PrintWriter writer;
- private final Stack<String> elementStack = new Stack<String>();
+ private final Stack<String> elementStack = new Stack<>();
private final char[] lineIndenter;
private boolean tagInProgress;
@@ -153,7 +153,7 @@ public class PrettyPrintWriter {
} else {
finishTag();
writer.write(CLOSE);
- writer.write((String)elementStack.pop());
+ writer.write(elementStack.pop());
writer.write('>');
}
readyForNewLine = true;
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java
index 01e8a41..ddc8bbb 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/validation/AnnotationValidationInterceptor.java
@@ -21,17 +21,17 @@
package org.apache.struts2.interceptor.validation;
-import java.lang.reflect.Method;
-import java.util.Arrays;
-import java.util.Collection;
-
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.inject.Inject;
import com.opensymphony.xwork2.util.AnnotationUtils;
import com.opensymphony.xwork2.validator.ValidationInterceptor;
-
+import org.apache.commons.lang3.BooleanUtils;
import org.apache.struts2.StrutsConstants;
+import java.lang.reflect.Method;
+import java.util.Arrays;
+import java.util.Collection;
+
/**
* Extends the xwork validation interceptor to also check for a @SkipValidation
* annotation, and if found, don't validate this action method
@@ -45,7 +45,7 @@ public class AnnotationValidationInterceptor extends ValidationInterceptor {
@Inject(StrutsConstants.STRUTS_DEVMODE)
public void setDevMode(String devMode) {
- this.devMode = "true".equalsIgnoreCase(devMode);
+ this.devMode = BooleanUtils.toBoolean(devMode);
}
protected String doIntercept(ActionInvocation invocation) throws Exception {
@@ -79,13 +79,14 @@ public class AnnotationValidationInterceptor extends ValidationInterceptor {
// FIXME: This is copied from DefaultActionInvocation but should be exposed through the interface
protected Method getActionMethod(Class actionClass, String methodName) throws NoSuchMethodException {
Method method = null;
+ Class[] classes = new Class[0];
try {
- method = actionClass.getMethod(methodName, new Class[0]);
+ method = actionClass.getMethod(methodName, classes);
} catch (NoSuchMethodException e) {
// hmm -- OK, try doXxx instead
try {
String altMethodName = "do" + methodName.substring(0, 1).toUpperCase() + methodName.substring(1);
- method = actionClass.getMethod(altMethodName, new Class[0]);
+ method = actionClass.getMethod(altMethodName, classes);
} catch (NoSuchMethodException e1) {
// throw the original one
if (devMode) {
http://git-wip-us.apache.org/repos/asf/struts/blob/e47a1127/core/src/main/java/org/apache/struts2/util/FastByteArrayOutputStream.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/util/FastByteArrayOutputStream.java b/core/src/main/java/org/apache/struts2/util/FastByteArrayOutputStream.java
index eb07fb1..00fb12f 100644
--- a/core/src/main/java/org/apache/struts2/util/FastByteArrayOutputStream.java
+++ b/core/src/main/java/org/apache/struts2/util/FastByteArrayOutputStream.java
@@ -23,14 +23,13 @@ package org.apache.struts2.util;
import javax.servlet.jsp.JspWriter;
import java.io.*;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.nio.charset.CharsetDecoder;
+import java.nio.ByteBuffer;
+import java.nio.CharBuffer;
import java.nio.charset.Charset;
-import java.nio.charset.CodingErrorAction;
+import java.nio.charset.CharsetDecoder;
import java.nio.charset.CoderResult;
-import java.nio.CharBuffer;
-import java.nio.ByteBuffer;
+import java.nio.charset.CodingErrorAction;
+import java.util.LinkedList;
/**
@@ -136,7 +135,7 @@ public class FastByteArrayOutputStream extends OutputStream {
private void writeToFile() {
FileOutputStream fileOutputStream = null;
try {
- fileOutputStream = new FileOutputStream("/tmp/" + getClass().getName() + System.currentTimeMillis() + ".log");
+ fileOutputStream = new FileOutputStream(File.createTempFile(getClass().getName() + System.currentTimeMillis(), ".log"));
writeTo(fileOutputStream);
} catch (IOException e) {
// Ignore
@@ -219,7 +218,7 @@ public class FastByteArrayOutputStream extends OutputStream {
protected void addBuffer() {
if (buffers == null) {
- buffers = new LinkedList<byte[]>();
+ buffers = new LinkedList<>();
}
buffers.addLast(buffer);
buffer = new byte[blockSize];