diff options
41 files changed, 89 insertions, 147 deletions
diff --git a/src/main/org/apache/tools/ant/AntClassLoader.java b/src/main/org/apache/tools/ant/AntClassLoader.java index 927b86be8..dab00b24d 100644 --- a/src/main/org/apache/tools/ant/AntClassLoader.java +++ b/src/main/org/apache/tools/ant/AntClassLoader.java @@ -974,7 +974,7 @@ public class AntClassLoader extends ClassLoader implements SubBuildListener, Clo } else { // ClassLoader.this.parent is already delegated to for example from // ClassLoader.getResources, no need: - base = new CollectionUtils.EmptyEnumeration<URL>(); + base = Collections.emptyEnumeration(); } if (isParentFirst(name)) { // Normal case. diff --git a/src/main/org/apache/tools/ant/IntrospectionHelper.java b/src/main/org/apache/tools/ant/IntrospectionHelper.java index 544e1c4be..a9cb00e92 100644 --- a/src/main/org/apache/tools/ant/IntrospectionHelper.java +++ b/src/main/org/apache/tools/ant/IntrospectionHelper.java @@ -700,10 +700,8 @@ public final class IntrospectionHelper { * @return true if the given nested element is supported */ public boolean supportsNestedElement(final String parentUri, final String elementName) { - if (isDynamic() || !addTypeMethods.isEmpty()) { - return true; - } - return supportsReflectElement(parentUri, elementName); + return isDynamic() || !addTypeMethods.isEmpty() + || supportsReflectElement(parentUri, elementName); } /** @@ -725,11 +723,9 @@ public final class IntrospectionHelper { */ public boolean supportsNestedElement(final String parentUri, final String elementName, final Project project, final Object parent) { - if (!addTypeMethods.isEmpty() - && createAddTypeCreator(project, parent, elementName) != null) { - return true; - } - return isDynamic() || supportsReflectElement(parentUri, elementName); + return !addTypeMethods.isEmpty() + && createAddTypeCreator(project, parent, elementName) != null + || isDynamic() || supportsReflectElement(parentUri, elementName); } /** @@ -1116,7 +1112,8 @@ public final class IntrospectionHelper { if (java.nio.file.Path.class.equals(reflectedArg)) { return new AttributeSetter(m, arg) { @Override - public void set(final Project p, final Object parent, final String value) throws InvocationTargetException, IllegalAccessException { + public void set(final Project p, final Object parent, final String value) + throws InvocationTargetException, IllegalAccessException { m.invoke(parent, p.resolveFile(value).toPath()); } }; @@ -1126,8 +1123,8 @@ public final class IntrospectionHelper { if (Resource.class.equals(reflectedArg) || FileProvider.class.equals(reflectedArg)) { return new AttributeSetter(m, arg) { @Override - void set(final Project p, final Object parent, final String value) throws InvocationTargetException, - IllegalAccessException, BuildException { + void set(final Project p, final Object parent, final String value) + throws InvocationTargetException, IllegalAccessException, BuildException { m.invoke(parent, new FileResource(p, p.resolveFile(value))); } }; @@ -1244,7 +1241,7 @@ public final class IntrospectionHelper { value); setValue = enumValue; } catch (final IllegalArgumentException e) { - //there is specific logic here for the value + // there is a specific logic here for the value // being out of the allowed set of enumerations. throw new BuildException("'" + value + "' is not a permitted value for " + reflectedArg.getName()); @@ -1478,7 +1475,7 @@ public final class IntrospectionHelper { } private void istore(final Object parent, final Object child) - throws InvocationTargetException, IllegalAccessException, InstantiationException { + throws InvocationTargetException, IllegalAccessException { getMethod().invoke(parent, child); } } @@ -1541,10 +1538,8 @@ public final class IntrospectionHelper { } final ComponentHelper helper = ComponentHelper.getComponentHelper(project); - final MethodAndObject restricted = createRestricted( - helper, elementName, addTypeMethods); - final MethodAndObject topLevel = createTopLevel( - helper, elementName, addTypeMethods); + final MethodAndObject restricted = createRestricted(helper, elementName, addTypeMethods); + final MethodAndObject topLevel = createTopLevel(helper, elementName, addTypeMethods); if (restricted == null && topLevel == null) { return null; @@ -1556,8 +1551,7 @@ public final class IntrospectionHelper { + elementName); } - final MethodAndObject methodAndObject - = restricted != null ? restricted : topLevel; + final MethodAndObject methodAndObject = restricted == null ? topLevel : restricted; Object rObject = methodAndObject.object; if (methodAndObject.object instanceof PreSetDef.PreSetDefinition) { @@ -1716,9 +1710,8 @@ public final class IntrospectionHelper { final Method addMethod = findMatchingMethod( restrictedDefinition.getExposedClass(project), addTypeMethods); if (addMethod == null) { - throw new BuildException( - "Ant Internal Error - contract mismatch for " - + elementName); + throw new BuildException("Ant Internal Error - contract mismatch for " + + elementName); } final Object addedObject = restrictedDefinition.create(project); if (addedObject == null) { diff --git a/src/main/org/apache/tools/ant/RuntimeConfigurable.java b/src/main/org/apache/tools/ant/RuntimeConfigurable.java index 7ebfabd09..63e2ab785 100644 --- a/src/main/org/apache/tools/ant/RuntimeConfigurable.java +++ b/src/main/org/apache/tools/ant/RuntimeConfigurable.java @@ -176,6 +176,7 @@ public class RuntimeConfigurable implements Serializable { * false. * @since 1.9.1 */ + @SuppressWarnings("deprecated") public boolean isEnabled(UnknownElement owner) { if (!namespacedAttribute) { return true; diff --git a/src/main/org/apache/tools/ant/dispatch/DispatchUtils.java b/src/main/org/apache/tools/ant/dispatch/DispatchUtils.java index fe3fd3a7c..a4c04e9fe 100644 --- a/src/main/org/apache/tools/ant/dispatch/DispatchUtils.java +++ b/src/main/org/apache/tools/ant/dispatch/DispatchUtils.java @@ -62,12 +62,10 @@ public class DispatchUtils { if (actionM != null) { final Object o = actionM.invoke(dispatchable, (Object[]) null); if (o != null) { - final String s = o.toString(); - if (s.trim().length() > 0) { - methodName = s.trim(); - Method executeM = null; - executeM = dispatchable.getClass().getMethod( - methodName); + final String s = o.toString().trim(); + if (s.length() > 0) { + methodName = s; + Method executeM = dispatchable.getClass().getMethod(methodName); if (executeM == null) { throw new BuildException( "No public " + methodName + "() in " diff --git a/src/main/org/apache/tools/ant/filters/TokenFilter.java b/src/main/org/apache/tools/ant/filters/TokenFilter.java index e749836b0..bd063c830 100644 --- a/src/main/org/apache/tools/ant/filters/TokenFilter.java +++ b/src/main/org/apache/tools/ant/filters/TokenFilter.java @@ -395,7 +395,7 @@ public class TokenFilter extends BaseFilterReader // write the remaining characters if (line.length() > start) { - ret.append(line.substring(start, line.length())); + ret.append(line, start, line.length()); } return ret.toString(); diff --git a/src/main/org/apache/tools/ant/helper/ProjectHelperImpl.java b/src/main/org/apache/tools/ant/helper/ProjectHelperImpl.java index 4b824babd..734f8c80a 100644 --- a/src/main/org/apache/tools/ant/helper/ProjectHelperImpl.java +++ b/src/main/org/apache/tools/ant/helper/ProjectHelperImpl.java @@ -43,6 +43,7 @@ import org.xml.sax.DocumentHandler; import org.xml.sax.HandlerBase; import org.xml.sax.InputSource; import org.xml.sax.Locator; +import org.xml.sax.Parser; import org.xml.sax.SAXException; import org.xml.sax.SAXParseException; import org.xml.sax.helpers.XMLReaderAdapter; @@ -62,7 +63,7 @@ public class ProjectHelperImpl extends ProjectHelper { * SAX 1 style parser used to parse the given file. This may * in fact be a SAX 2 XMLReader wrapped in an XMLReaderAdapter. */ - private org.xml.sax.Parser parser; + private Parser parser; /** The project to configure. */ private Project project; diff --git a/src/main/org/apache/tools/ant/taskdefs/Available.java b/src/main/org/apache/tools/ant/taskdefs/Available.java index b6d24bfad..c1a34862c 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Available.java +++ b/src/main/org/apache/tools/ant/taskdefs/Available.java @@ -31,7 +31,6 @@ import org.apache.tools.ant.types.EnumeratedAttribute; import org.apache.tools.ant.types.Path; import org.apache.tools.ant.types.Reference; import org.apache.tools.ant.util.FileUtils; -import org.apache.tools.ant.util.StringUtils; /** * Will set the given property if the requested resource is available at @@ -240,11 +239,8 @@ public class Available extends Task implements Condition { PropertyHelper ph = PropertyHelper.getPropertyHelper(getProject()); Object oldvalue = ph.getProperty(property); if (null != oldvalue && !oldvalue.equals(value)) { - log("DEPRECATED - <available> used to override an existing" - + " property." - + StringUtils.LINE_SEP - + " Build file should not reuse the same property" - + " name for different values.", + log(String.format("DEPRECATED - <available> used to override an existing property.%n" + + " Build file should not reuse the same property name for different values."), Project.MSG_WARN); } // NB: this makes use of Project#setProperty rather than Project#setNewProperty diff --git a/src/main/org/apache/tools/ant/taskdefs/Copy.java b/src/main/org/apache/tools/ant/taskdefs/Copy.java index 5a3370504..6aa5726b8 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Copy.java +++ b/src/main/org/apache/tools/ant/taskdefs/Copy.java @@ -21,6 +21,7 @@ package org.apache.tools.ant.taskdefs; import java.io.File; import java.io.IOException; import java.util.ArrayList; +import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; import java.util.Hashtable; @@ -1019,7 +1020,7 @@ public class Copy extends Task { l = new ArrayList<>(names.length); m.put(baseDir, l); } - l.addAll(java.util.Arrays.asList(names)); + l.addAll(Arrays.asList(names)); } } diff --git a/src/main/org/apache/tools/ant/taskdefs/Delete.java b/src/main/org/apache/tools/ant/taskdefs/Delete.java index 7b146d324..b80c0f05d 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Delete.java +++ b/src/main/org/apache/tools/ant/taskdefs/Delete.java @@ -662,7 +662,6 @@ public class Delete extends MatchingTask { filesets.add(implicit); } - final int size = filesets.size(); for (FileSet fs : filesets) { if (fs.getProject() == null) { log("Deleting fileset with no project specified; assuming executing project", diff --git a/src/main/org/apache/tools/ant/taskdefs/Expand.java b/src/main/org/apache/tools/ant/taskdefs/Expand.java index 56d5bf491..8862fa7e0 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Expand.java +++ b/src/main/org/apache/tools/ant/taskdefs/Expand.java @@ -187,9 +187,7 @@ public class Expand extends Task { + " as the file does not exist", getLocation()); } - try ( - ZipFile - zf = new ZipFile(srcF, encoding, scanForUnicodeExtraFields)){ + try (ZipFile zf = new ZipFile(srcF, encoding, scanForUnicodeExtraFields)) { boolean empty = true; Enumeration<ZipEntry> e = zf.getEntries(); while (e.hasMoreElements()) { diff --git a/src/main/org/apache/tools/ant/taskdefs/Javac.java b/src/main/org/apache/tools/ant/taskdefs/Javac.java index b65c6d3e1..f52c3dbec 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Javac.java +++ b/src/main/org/apache/tools/ant/taskdefs/Javac.java @@ -1546,7 +1546,7 @@ public class Javac extends MatchingTask { element, i)); } - final Collection<? extends CharSequence> parts = resolveGroup(element.subSequence(i+1, end)); + final Collection<? extends CharSequence> parts = resolveGroup(element.subSequence(i + 1, end)); switch (parts.size()) { case 0: break; diff --git a/src/main/org/apache/tools/ant/taskdefs/MacroDef.java b/src/main/org/apache/tools/ant/taskdefs/MacroDef.java index 1892f6805..be275e42f 100644 --- a/src/main/org/apache/tools/ant/taskdefs/MacroDef.java +++ b/src/main/org/apache/tools/ant/taskdefs/MacroDef.java @@ -263,7 +263,6 @@ public class MacroDef extends AntlibDefinition { "the name \"%s\" has already been used by the text element", attribute.getName()); } - final int size = attributes.size(); for (Attribute att : attributes) { if (att.getName().equals(attribute.getName())) { throw new BuildException( @@ -700,12 +699,10 @@ public class MacroDef extends AntlibDefinition { return true; } - if (obj == null) { - return false; - } - if (!obj.getClass().equals(getClass())) { + if (obj == null || !obj.getClass().equals(getClass())) { return false; } + MacroDef other = (MacroDef) obj; if (name == null) { return other.name == null; @@ -716,8 +713,8 @@ public class MacroDef extends AntlibDefinition { // Allow two macro definitions with the same location // to be treated as similar - bugzilla 31215 if (other.getLocation() != null - && other.getLocation().equals(getLocation()) - && !same) { + && other.getLocation().equals(getLocation()) + && !same) { return true; } if (text == null) { @@ -728,7 +725,7 @@ public class MacroDef extends AntlibDefinition { return false; } if (getURI() == null || "".equals(getURI()) - || getURI().equals(ProjectHelper.ANT_CORE_URI)) { + || getURI().equals(ProjectHelper.ANT_CORE_URI)) { if (other.getURI() != null && !"".equals(other.getURI()) && !other.getURI().equals(ProjectHelper.ANT_CORE_URI)) { return false; @@ -737,16 +734,8 @@ public class MacroDef extends AntlibDefinition { return false; } - if (!nestedSequential.similar(other.nestedSequential)) { - return false; - } - if (!attributes.equals(other.attributes)) { - return false; - } - if (!elements.equals(other.elements)) { - return false; - } - return true; + return nestedSequential.similar(other.nestedSequential) + && attributes.equals(other.attributes) && elements.equals(other.elements); } /** diff --git a/src/main/org/apache/tools/ant/taskdefs/Redirector.java b/src/main/org/apache/tools/ant/taskdefs/Redirector.java index f336257dc..d5d01dbfd 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Redirector.java +++ b/src/main/org/apache/tools/ant/taskdefs/Redirector.java @@ -674,8 +674,7 @@ public class Redirector { } catch (final IOException eyeOhEx) { throw new BuildException(eyeOhEx); } - ((ConcatFileInputStream) inputStream) - .setManagingComponent(managingTask); + ((ConcatFileInputStream) inputStream).setManagingComponent(managingTask); } else if (inputString != null) { final StringBuffer buf = new StringBuffer("Using input "); if (logInputString) { diff --git a/src/main/org/apache/tools/ant/taskdefs/Replace.java b/src/main/org/apache/tools/ant/taskdefs/Replace.java index 283b68cd0..0cde29191 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Replace.java +++ b/src/main/org/apache/tools/ant/taskdefs/Replace.java @@ -626,9 +626,7 @@ public class Replace extends MatchingTask { throws BuildException { Properties props = new Properties(); - try ( - InputStream - in = propertyResource.getInputStream()){ + try (InputStream in = propertyResource.getInputStream()) { props.load(in); } catch (IOException e) { throw new BuildException("Property resource (%s) cannot be loaded.", diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/Javah.java b/src/main/org/apache/tools/ant/taskdefs/optional/Javah.java index ded183a6e..b5dfddc76 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/Javah.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/Javah.java @@ -150,8 +150,7 @@ public class Javah extends Task { public String[] getClasses() { Stream<String> stream = Stream.concat( files.stream() - .map(fs -> fs.getDirectoryScanner(getProject()) - .getIncludedFiles()) + .map(fs -> fs.getDirectoryScanner(getProject()).getIncludedFiles()) .flatMap(Stream::of) .map(s -> s.replace('\\', '.').replace('/', '.') .replaceFirst("\\.class$", "")), @@ -375,8 +374,7 @@ public class Javah extends Task { * @since Ant 1.6.3 */ public ImplementationSpecificArgument createArg() { - ImplementationSpecificArgument arg = - new ImplementationSpecificArgument(); + ImplementationSpecificArgument arg = new ImplementationSpecificArgument(); facade.addImplementationArgument(arg); return arg; } @@ -444,8 +442,8 @@ public class Javah extends Task { + "\" does not exist or is not a directory", getLocation()); } if (outputFile != null) { - throw new BuildException("destdir and outputFile are mutually " - + "exclusive", getLocation()); + throw new BuildException("destdir and outputFile are mutually exclusive", + getLocation()); } } diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/PropertyFile.java b/src/main/org/apache/tools/ant/taskdefs/optional/PropertyFile.java index f20d2724e..6798676ca 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/PropertyFile.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/PropertyFile.java @@ -254,13 +254,8 @@ public class PropertyFile extends Task { throw new BuildException(x, getLocation()); } try { - OutputStream os = Files.newOutputStream(propertyfile.toPath()); //NOSONAR - try { - try { - os.write(baos.toByteArray()); - } finally { - os.close(); - } + try (OutputStream os = Files.newOutputStream(propertyfile.toPath())) { + os.write(baos.toByteArray()); } catch (IOException x) { // possibly corrupt FileUtils.getFileUtils().tryHardToDelete(propertyfile); throw x; diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java b/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java index ec5293d1a..6a4a0903d 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java @@ -327,7 +327,7 @@ public class TraXLiaison implements XSLTLiaison4, ErrorListener, XSLTLoggerAware if (uriResolver != null) { transformer.setURIResolver(uriResolver); } - for (String[] pair : outputProperties) { + for (final String[] pair : outputProperties) { transformer.setOutputProperty(pair[0], pair[1]); } @@ -422,7 +422,6 @@ public class TraXLiaison implements XSLTLiaison4, ErrorListener, XSLTLoggerAware tfactory.setErrorListener(this); // specific attributes for the transformer - final int size = attributes.size(); for (final Object[] pair : attributes) { tfactory.setAttribute((String) pair[0], pair[1]); } diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/XMLValidateTask.java b/src/main/org/apache/tools/ant/taskdefs/optional/XMLValidateTask.java index 7d55ca0be..673bb6ec6 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/XMLValidateTask.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/XMLValidateTask.java @@ -288,7 +288,7 @@ public class XMLValidateTask extends Task { public void execute() throws BuildException { try { int fileProcessed = 0; - if (file == null && (filesets.isEmpty())) { + if (file == null && filesets.isEmpty()) { throw new BuildException( "Specify at least one source - " + "a file or a fileset."); } @@ -307,7 +307,7 @@ public class XMLValidateTask extends Task { } } - for (FileSet fs : filesets) { + for (final FileSet fs : filesets) { DirectoryScanner ds = fs.getDirectoryScanner(getProject()); for (String fileName : ds.getIncludedFiles()) { File srcFile = new File(fs.getDir(getProject()), fileName); @@ -348,12 +348,12 @@ public class XMLValidateTask extends Task { setFeature(XmlConstants.FEATURE_VALIDATION, true); } // set the feature from the attribute list - for (Attribute feature : attributeList) { + for (final Attribute feature : attributeList) { setFeature(feature.getName(), feature.getValue()); } // Sets properties - for (Property prop : propertyList) { + for (final Property prop : propertyList) { setProperty(prop.getName(), prop.getValue()); } } @@ -375,6 +375,7 @@ public class XMLValidateTask extends Task { * we have created and wrapped a SAX1 parser. * @return the new XMLReader. */ + @SuppressWarnings("deprecated") protected XMLReader createXmlReader() { Object reader = null; if (readerClassName == null) { @@ -645,7 +646,7 @@ public class XMLValidateTask extends Task { } int line = e.getLineNumber(); int col = e.getColumnNumber(); - return name + return name + (line == -1 ? "" : (":" + line + (col == -1 ? "" : (":" + col)))) @@ -661,11 +662,10 @@ public class XMLValidateTask extends Task { * @since ant1.6 */ public static class Attribute { - /** The name of the attribute to set. + /** + * The name of the attribute to set. * - * Valid attributes <a href= - * "http://www.saxproject.org/apidoc/org/xml/sax/package-summary.html#package_description" - * >include.</a> + * Valid attributes <a href="http://www.saxproject.org/apidoc/org/xml/sax/package-summary.html#package_description">include</a> */ private String attributeName = null; diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/depend/constantpool/MethodHandleCPInfo.java b/src/main/org/apache/tools/ant/taskdefs/optional/depend/constantpool/MethodHandleCPInfo.java index f8fbbdb04..1da73655e 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/depend/constantpool/MethodHandleCPInfo.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/depend/constantpool/MethodHandleCPInfo.java @@ -31,11 +31,6 @@ public class MethodHandleCPInfo extends ConstantPoolEntry { private ReferenceKind referenceKind; /** Must be a valid index into the constant pool table. */ private int referenceIndex; - /** - * the index into the constant pool which defined the name and type - * signature of the method - */ - private int nameAndTypeIndex; public enum ReferenceKind { REF_getField, diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetDeploymentTool.java b/src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetDeploymentTool.java index aa6c8fb5b..b4e23a05d 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetDeploymentTool.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetDeploymentTool.java @@ -105,6 +105,7 @@ public class IPlanetDeploymentTool extends GenericDeploymentTool { * we may determine the name of the EJB JAR file using this display-name, * but this has not be implemented yet. */ + @SuppressWarnings("unused") private String displayName; /* diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetEjbc.java b/src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetEjbc.java index 2e26d8574..30852209b 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetEjbc.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetEjbc.java @@ -93,6 +93,7 @@ public class IPlanetEjbc { /* Classpath used when the iAS ejbc is called */ private String classpath; + @SuppressWarnings("unused") private String[] classpathElements; /* Options passed to the iAS ejbc */ @@ -643,6 +644,7 @@ public class IPlanetEjbc { * * @return String display-name value. */ + @SuppressWarnings("unused") public String getDisplayName() { return displayName; } @@ -956,6 +958,7 @@ public class IPlanetEjbc { this.primaryKey = primaryKey; } + @SuppressWarnings("unused") public Classname getPrimaryKey() { return primaryKey; } diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/jsp/WLJspc.java b/src/main/org/apache/tools/ant/taskdefs/optional/jsp/WLJspc.java index 6aed62879..076c46d06 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/jsp/WLJspc.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/jsp/WLJspc.java @@ -312,7 +312,7 @@ public class WLJspc extends MatchingTask { int numTokens = st.countTokens(); for (int i = 0; i < numTokens; i++) { String test = st.nextToken(); - test = (test.equals(escapeChars) ? replaceChars : test); + test = test.equals(escapeChars) ? replaceChars : test; localString.append(test); } return localString.toString(); diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/SingleTestClass.java b/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/SingleTestClass.java index 5cbc8f6f0..146e8d5e4 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/SingleTestClass.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/SingleTestClass.java @@ -80,8 +80,7 @@ public class SingleTestClass extends TestDefinition implements NamedTest { requestBuilder.selectors(DiscoverySelectors.selectClass(this.testClass)); } else { // add specific methods - final String[] methods = this.getMethods(); - for (final String method : methods) { + for (final String method : this.getMethods()) { requestBuilder.selectors(DiscoverySelectors.selectMethod(this.testClass, method)); } } diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/TestDefinition.java b/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/TestDefinition.java index d05ae3e9f..b7beb8b48 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/TestDefinition.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/TestDefinition.java @@ -38,7 +38,7 @@ abstract class TestDefinition { } boolean isHaltOnFailure() { - return this.haltOnFailure == null ? false : this.haltOnFailure; + return this.haltOnFailure != null && this.haltOnFailure; } Boolean getHaltOnFailure() { diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/native2ascii/BuiltinNative2Ascii.java b/src/main/org/apache/tools/ant/taskdefs/optional/native2ascii/BuiltinNative2Ascii.java index 54ddc0aee..5aae72d13 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/native2ascii/BuiltinNative2Ascii.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/native2ascii/BuiltinNative2Ascii.java @@ -32,7 +32,6 @@ import java.util.function.UnaryOperator; import org.apache.tools.ant.BuildException; import org.apache.tools.ant.taskdefs.optional.Native2Ascii; import org.apache.tools.ant.util.Native2AsciiUtils; -import org.apache.tools.ant.util.StringUtils; /** * Encapsulates the built-in Native2Ascii implementation. @@ -85,8 +84,7 @@ public class BuiltinNative2Ascii implements Native2AsciiAdapter { UnaryOperator<String> translation) throws IOException { for (String line : (Iterable<String>) () -> input.lines() .map(translation).iterator()) { - output.write(line); - output.write(StringUtils.LINE_SEP); + output.write(String.format("%s%n", line)); } } } diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java index e5bc65874..b540ede66 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java @@ -247,7 +247,7 @@ public class FTP extends Task implements FTPTaskConfig { @Override public String getParent() { StringBuilder result = new StringBuilder(); - for (int i = 0; i < parts.length - 1; i++){ + for (int i = 0; i < parts.length - 1; i++) { result.append(File.separatorChar).append(parts[i]); } return result.toString(); @@ -2702,7 +2702,6 @@ public class FTP extends Task implements FTPTaskConfig { getValidLanguageCodes(); private static String[] getValidLanguageCodes() { - @SuppressWarnings("unchecked") Collection<String> c = FTPClientConfig.getSupportedLanguageCodes(); String[] ret = new String[c.size() + 1]; int i = 0; diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTPTaskMirrorImpl.java b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTPTaskMirrorImpl.java index 61de4009c..2ea3787ab 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTPTaskMirrorImpl.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTPTaskMirrorImpl.java @@ -146,7 +146,7 @@ public class FTPTaskMirrorImpl implements FTPTaskMirror { @Override public String getParent() { StringBuilder result = new StringBuilder(); - for (int i = 0; i < parts.length - 1; i++){ + for (int i = 0; i < parts.length - 1; i++) { result.append(File.separatorChar).append(parts[i]); } return result.toString(); diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/splash/SplashTask.java b/src/main/org/apache/tools/ant/taskdefs/optional/splash/SplashTask.java index a3235f901..840672f3b 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/splash/SplashTask.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/splash/SplashTask.java @@ -236,9 +236,8 @@ public class SplashTask extends Task { boolean success = false; if (in != null) { - try ( - DataInputStream din = new DataInputStream(in); - ByteArrayOutputStream bout = new ByteArrayOutputStream()){ + try (DataInputStream din = new DataInputStream(in); + ByteArrayOutputStream bout = new ByteArrayOutputStream()) { int data; while ((data = din.read()) != -1) { bout.write((byte) data); diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessageBySftp.java b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessageBySftp.java index 3cb120a36..3aac12d38 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessageBySftp.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessageBySftp.java @@ -39,7 +39,9 @@ public class ScpFromMessageBySftp extends ScpFromMessage { private String remoteFile; private final File localFile; + @SuppressWarnings("unused") private boolean isRecursive = false; + @SuppressWarnings("unused") private boolean verbose = false; /** @@ -161,7 +163,7 @@ public class ScpFromMessageBySftp extends ScpFromMessage { private void getFile(final ChannelSftp channel, final ChannelSftp.LsEntry le, - File localFile) throws IOException, SftpException { + File localFile) throws SftpException { final String remoteFile = le.getFilename(); if (!localFile.exists()) { final String path = localFile.getAbsolutePath(); diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpToMessageBySftp.java b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpToMessageBySftp.java index ef3e2cee6..869516950 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpToMessageBySftp.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpToMessageBySftp.java @@ -171,7 +171,7 @@ public class ScpToMessageBySftp extends ScpToMessage/*AbstractSshMessage*/ { log("done.\n"); } - private void doSingleTransfer() throws IOException, JSchException { + private void doSingleTransfer() throws JSchException { final ChannelSftp channel = openSftpChannel(); try { channel.connect(); @@ -265,7 +265,7 @@ public class ScpToMessageBySftp extends ScpToMessage/*AbstractSshMessage*/ { private void sendFileToRemote(final ChannelSftp channel, final File localFile, String remotePath) - throws IOException, SftpException { + throws SftpException { final long filesize = localFile.length(); if (remotePath == null) { diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/vss/MSVSS.java b/src/main/org/apache/tools/ant/taskdefs/optional/vss/MSVSS.java index 29b8cd1ce..fcba78725 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/vss/MSVSS.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/vss/MSVSS.java @@ -179,9 +179,8 @@ public abstract class MSVSS extends Task implements MSVSSConstants { * @throws BuildException if the command cannot execute. */ public void execute() throws BuildException { - int result = 0; Commandline commandLine = buildCmdLine(); - result = run(commandLine); + int result = run(commandLine); if (Execute.isFailure(result) && getFailOnError()) { String msg = "Failed executing: " + formatCommandLine(commandLine) + " With a return code of " + result; diff --git a/src/main/org/apache/tools/ant/types/DataType.java b/src/main/org/apache/tools/ant/types/DataType.java index 037c2fbc4..ae181bac8 100644 --- a/src/main/org/apache/tools/ant/types/DataType.java +++ b/src/main/org/apache/tools/ant/types/DataType.java @@ -244,6 +244,7 @@ public abstract class DataType extends ProjectComponent implements Cloneable { * or if <code>project</code> is <code>null</code>. * @since Ant 1.7 */ + @SuppressWarnings("unchecked") protected <T> T getCheckedRef(final Class<T> requiredClass, final String dataTypeName, final Project project) { if (project == null) { diff --git a/src/main/org/apache/tools/ant/types/Mapper.java b/src/main/org/apache/tools/ant/types/Mapper.java index 86c62a080..86f94abb5 100644 --- a/src/main/org/apache/tools/ant/types/Mapper.java +++ b/src/main/org/apache/tools/ant/types/Mapper.java @@ -218,8 +218,7 @@ public class Mapper extends DataType { if (type == null && classname == null && container == null) { throw new BuildException( - "nested mapper or " - + "one of the attributes type or classname is required"); + "nested mapper or one of the attributes type or classname is required"); } if (container != null) { diff --git a/src/main/org/apache/tools/ant/types/resources/TarResource.java b/src/main/org/apache/tools/ant/types/resources/TarResource.java index 7713e44e7..36b0e3853 100644 --- a/src/main/org/apache/tools/ant/types/resources/TarResource.java +++ b/src/main/org/apache/tools/ant/types/resources/TarResource.java @@ -180,6 +180,7 @@ public class TarResource extends ArchiveResource { return (TarResource) super.getCheckedRef(); } + @SuppressWarnings("deprecated") private void setEntry(TarEntry e) { if (e == null) { setExists(false); diff --git a/src/main/org/apache/tools/ant/types/resources/selectors/Compare.java b/src/main/org/apache/tools/ant/types/resources/selectors/Compare.java index f345c278f..14076a570 100644 --- a/src/main/org/apache/tools/ant/types/resources/selectors/Compare.java +++ b/src/main/org/apache/tools/ant/types/resources/selectors/Compare.java @@ -37,9 +37,6 @@ import org.apache.tools.ant.types.resources.comparators.ResourceComparator; */ public class Compare extends DataType implements ResourceSelector { - private static final String ONE_CONTROL_MESSAGE - = " the <control> element should be specified exactly once."; - private DelegatedResourceComparator comp = new DelegatedResourceComparator(); private Quantifier against = Quantifier.ALL; @@ -144,6 +141,7 @@ public class Compare extends DataType implements ResourceSelector { } private BuildException oneControl() { - return new BuildException(super.toString() + ONE_CONTROL_MESSAGE); + return new BuildException("%s the <control> element should be specified exactly once.", + super.toString()); } } diff --git a/src/main/org/apache/tools/ant/types/selectors/SelectorUtils.java b/src/main/org/apache/tools/ant/types/selectors/SelectorUtils.java index bfa3b169f..8d98dfd4f 100644 --- a/src/main/org/apache/tools/ant/types/selectors/SelectorUtils.java +++ b/src/main/org/apache/tools/ant/types/selectors/SelectorUtils.java @@ -576,16 +576,8 @@ public final class SelectorUtils { * @return whether the target is out of date */ public static boolean isOutOfDate(File src, File target, int granularity) { - if (!src.exists()) { - return false; - } - if (!target.exists()) { - return true; - } - if ((src.lastModified() - granularity) > target.lastModified()) { - return true; - } - return false; + return src.exists() && (!target.exists() + || (src.lastModified() - granularity) > target.lastModified()); } /** diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/ExecuteWatchdogTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/ExecuteWatchdogTest.java index b557e7670..54491354b 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/ExecuteWatchdogTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/ExecuteWatchdogTest.java @@ -136,11 +136,11 @@ public class ExecuteWatchdogTest { watchdog.start(process); // I assume that starting this takes less than TIME_OUT/2 ms... - Thread thread = new Thread(){ - public void run(){ + Thread thread = new Thread() { + public void run() { try { process.waitFor(); - } catch(InterruptedException e){ + } catch(InterruptedException e) { // not very nice but will do the job throw new AssumptionViolatedException("process interrupted in thread", e); } diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/SQLExecTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/SQLExecTest.java index 68679855c..f5b72c82c 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/SQLExecTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/SQLExecTest.java @@ -89,7 +89,7 @@ public class SQLExecTest { assertTrue(JDBCTask.getLoaderMap().containsKey(NULL_DRIVER)); try { sql.execute(); - } catch (BuildException e){ + } catch (BuildException e) { assertTrue(e.getCause().getMessage().contains("No suitable Driver")); } assertTrue(JDBCTask.getLoaderMap().containsKey(NULL_DRIVER)); diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/i18n/TranslateTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/i18n/TranslateTest.java index 75c91d4d3..63e0943eb 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/i18n/TranslateTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/i18n/TranslateTest.java @@ -69,12 +69,8 @@ public class TranslateTest { byte[] buffer1 = new byte[BUF_SIZE]; byte[] buffer2 = new byte[BUF_SIZE]; - @SuppressWarnings("resource") - FileInputStream fis1 = new FileInputStream(file1); - try { - @SuppressWarnings("resource") - FileInputStream fis2 = new FileInputStream(file2); - try { + try (FileInputStream fis1 = new FileInputStream(file1)) { + try (FileInputStream fis2 = new FileInputStream(file2)) { int read = 0; while ((read = fis1.read(buffer1)) != -1) { fis2.read(buffer2); @@ -84,11 +80,7 @@ public class TranslateTest { } } } - } finally { - fis2.close(); } - } finally { - fis1.close(); } return true; } diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageTest.java index 0d91edeb6..7acd062b3 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/image/ImageTest.java @@ -64,7 +64,7 @@ public class ImageTest { } @Test - public void testSimpleScale(){ + public void testSimpleScale() { buildRule.executeTarget("testSimpleScale"); AntAssert.assertContains("Processing File", buildRule.getLog()); @@ -114,7 +114,7 @@ public class ImageTest { try { buildRule.executeTarget("testFailOnError"); AntAssert.assertContains("Unable to process image stream", buildRule.getLog()); - } catch (RuntimeException re){ + } catch (RuntimeException re) { assertTrue("Run time exception should say 'Unable to process image stream'. :" + re.toString(), re.toString().contains("Unable to process image stream")); diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java index 7a7fc17b4..1afd5ce18 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java @@ -524,7 +524,6 @@ public class FTPTest { */ private class LogCounter extends DefaultLogger { private Map<String, Integer> searchMap = new HashMap<>(); - private int matchCount; public void addLogMessageToSearch(String message) { searchMap.put(message, 0); |