summaryrefslogtreecommitdiff
path: root/src/main/org/apache/tools/ant/taskdefs/cvslib/CvsTagDiff.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/org/apache/tools/ant/taskdefs/cvslib/CvsTagDiff.java')
-rw-r--r--src/main/org/apache/tools/ant/taskdefs/cvslib/CvsTagDiff.java77
1 files changed, 21 insertions, 56 deletions
diff --git a/src/main/org/apache/tools/ant/taskdefs/cvslib/CvsTagDiff.java b/src/main/org/apache/tools/ant/taskdefs/cvslib/CvsTagDiff.java
index 9fbc3fd6a..83ec60701 100644
--- a/src/main/org/apache/tools/ant/taskdefs/cvslib/CvsTagDiff.java
+++ b/src/main/org/apache/tools/ant/taskdefs/cvslib/CvsTagDiff.java
@@ -21,17 +21,13 @@ import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
-import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.nio.file.Files;
import java.util.ArrayList;
-import java.util.Iterator;
import java.util.List;
import java.util.StringTokenizer;
-import java.util.Vector;
-
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.taskdefs.AbstractCvsTask;
@@ -152,7 +148,7 @@ public class CvsTagDiff extends AbstractCvsTask {
/**
* temporary list of package names.
*/
- private List packageNames = new ArrayList();
+ private List<String> packageNames = new ArrayList<>();
/**
* temporary list of "File:" + package name + "/" for all packages.
@@ -229,7 +225,6 @@ public class CvsTagDiff extends AbstractCvsTask {
ignoreRemoved = b;
}
-
/**
* Execute task.
*
@@ -297,10 +292,9 @@ public class CvsTagDiff extends AbstractCvsTask {
*/
private CvsTagEntry[] parseRDiff(File tmpFile) throws BuildException {
// parse the output of the command
- BufferedReader reader = null;
- try {
- reader = new BufferedReader(new FileReader(tmpFile)); //NOSONAR
+ try (BufferedReader reader =
+ new BufferedReader(new FileReader(tmpFile))) {
// entries are of the form:
//CVS 1.11
@@ -316,7 +310,7 @@ public class CvsTagDiff extends AbstractCvsTask {
// File testantoine/antoine.bat is removed; TESTANTOINE_1 revision 1.1.1.1
//
// get rid of 'File module/"
- Vector entries = new Vector();
+ List<CvsTagEntry> entries = new ArrayList<>();
String line = reader.readLine();
@@ -325,6 +319,7 @@ public class CvsTagDiff extends AbstractCvsTask {
packageNamePrefixLengths);
if (line != null) {
// use || in a perl like fashion
+ @SuppressWarnings("unused")
boolean processed
= doFileIsNew(entries, line)
|| doFileHasChanged(entries, line)
@@ -333,24 +328,13 @@ public class CvsTagDiff extends AbstractCvsTask {
line = reader.readLine();
}
- CvsTagEntry[] array = new CvsTagEntry[entries.size()];
- entries.copyInto(array);
-
- return array;
+ return entries.toArray(new CvsTagEntry[entries.size()]);
} catch (IOException e) {
throw new BuildException("Error in parsing", e);
- } finally {
- if (reader != null) {
- try {
- reader.close();
- } catch (IOException e) {
- log(e.toString(), Project.MSG_ERR);
- }
- }
}
}
- private boolean doFileIsNew(Vector entries, String line) {
+ private boolean doFileIsNew(List<CvsTagEntry> entries, String line) {
int index = line.indexOf(FILE_IS_NEW);
if (index == -1) {
return false;
@@ -364,12 +348,12 @@ public class CvsTagDiff extends AbstractCvsTask {
rev = line.substring(indexrev + REVISION.length());
}
CvsTagEntry entry = new CvsTagEntry(filename, rev);
- entries.addElement(entry);
+ entries.add(entry);
log(entry.toString(), Project.MSG_VERBOSE);
return true;
}
- private boolean doFileHasChanged(Vector entries, String line) {
+ private boolean doFileHasChanged(List<CvsTagEntry> entries, String line) {
int index = line.indexOf(FILE_HAS_CHANGED);
if (index == -1) {
return false;
@@ -385,12 +369,12 @@ public class CvsTagDiff extends AbstractCvsTask {
CvsTagEntry entry = new CvsTagEntry(filename,
revision,
prevRevision);
- entries.addElement(entry);
+ entries.add(entry);
log(entry.toString(), Project.MSG_VERBOSE);
return true;
}
- private boolean doFileWasRemoved(Vector entries, String line) {
+ private boolean doFileWasRemoved(List<CvsTagEntry> entries, String line) {
if (ignoreRemoved) {
return false;
}
@@ -406,7 +390,7 @@ public class CvsTagDiff extends AbstractCvsTask {
rev = line.substring(indexrev + REVISION.length());
}
CvsTagEntry entry = new CvsTagEntry(filename, null, rev);
- entries.addElement(entry);
+ entries.add(entry);
log(entry.toString(), Project.MSG_VERBOSE);
return true;
}
@@ -418,11 +402,8 @@ public class CvsTagDiff extends AbstractCvsTask {
* @exception BuildException if an error occurs
*/
private void writeTagDiff(CvsTagEntry[] entries) throws BuildException {
- OutputStream output = null;
- try {
- output = Files.newOutputStream(mydestfile.toPath());
- PrintWriter writer = new PrintWriter(
- new OutputStreamWriter(output, "UTF-8"));
+ try (PrintWriter writer = new PrintWriter(new OutputStreamWriter(
+ Files.newOutputStream(mydestfile.toPath()), "UTF-8"))) {
writer.println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
Document doc = DOMUtils.newDocument();
Element root = doc.createElement("tagdiff");
@@ -455,14 +436,6 @@ public class CvsTagDiff extends AbstractCvsTask {
log(uee.toString(), Project.MSG_ERR);
} catch (IOException ioe) {
throw new BuildException(ioe.toString(), ioe);
- } finally {
- if (null != output) {
- try {
- output.close();
- } catch (IOException ioe) {
- log(ioe.toString(), Project.MSG_ERR);
- }
- }
}
}
@@ -508,8 +481,8 @@ public class CvsTagDiff extends AbstractCvsTask {
}
if (null != mystartTag && null != mystartDate) {
- throw new BuildException("Only one of start tag and start date "
- + "must be set.");
+ throw new BuildException(
+ "Only one of start tag and start date must be set.");
}
if (null == myendTag && null == myendDate) {
@@ -517,8 +490,8 @@ public class CvsTagDiff extends AbstractCvsTask {
}
if (null != myendTag && null != myendDate) {
- throw new BuildException("Only one of end tag and end date must "
- + "be set.");
+ throw new BuildException(
+ "Only one of end tag and end date must be set.");
}
}
@@ -536,8 +509,7 @@ public class CvsTagDiff extends AbstractCvsTask {
addCommandArgument(pack);
}
}
- for (Iterator iter = getModules().iterator(); iter.hasNext();) {
- AbstractCvsTask.Module m = (AbstractCvsTask.Module) iter.next();
+ for (Module m : getModules()) {
packageNames.add(m.getName());
// will be added to command line in super.execute()
}
@@ -549,7 +521,6 @@ public class CvsTagDiff extends AbstractCvsTask {
}
}
-
/**
* removes a "File: module/" prefix if present.
*
@@ -561,17 +532,11 @@ public class CvsTagDiff extends AbstractCvsTask {
if (line.length() < FILE_STRING_LENGTH) {
return null;
}
- boolean matched = false;
for (int i = 0; i < packagePrefixes.length; i++) {
if (line.startsWith(packagePrefixes[i])) {
- matched = true;
- line = line.substring(prefixLengths[i]);
- break;
+ return line.substring(prefixLengths[i]);
}
}
- if (!matched) {
- line = line.substring(FILE_STRING_LENGTH);
- }
- return line;
+ return line.substring(FILE_STRING_LENGTH);
}
}