Repository: ant-ivy Updated Branches: refs/heads/master 9c14146a9 -> cf15c5172
refactor iterators Project: http://git-wip-us.apache.org/repos/asf/ant-ivy/repo Commit: http://git-wip-us.apache.org/repos/asf/ant-ivy/commit/cf15c517 Tree: http://git-wip-us.apache.org/repos/asf/ant-ivy/tree/cf15c517 Diff: http://git-wip-us.apache.org/repos/asf/ant-ivy/diff/cf15c517 Branch: refs/heads/master Commit: cf15c51722dd4b406876dce1ccd52eea787d84b7 Parents: 9c14146 Author: Gintas Grigelionis <[email protected]> Authored: Wed Aug 23 14:32:49 2017 +0200 Committer: Gintas Grigelionis <[email protected]> Committed: Wed Aug 23 14:32:49 2017 +0200 ---------------------------------------------------------------------- .../ivy/osgi/core/ManifestHeaderElement.java | 24 +++----- .../ivy/osgi/core/ManifestHeaderValue.java | 14 ++--- .../ivy/plugins/report/XmlReportWriter.java | 60 +++++++++----------- 3 files changed, 40 insertions(+), 58 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/cf15c517/src/java/org/apache/ivy/osgi/core/ManifestHeaderElement.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/ivy/osgi/core/ManifestHeaderElement.java b/src/java/org/apache/ivy/osgi/core/ManifestHeaderElement.java index 96f884f..efca83f 100644 --- a/src/java/org/apache/ivy/osgi/core/ManifestHeaderElement.java +++ b/src/java/org/apache/ivy/osgi/core/ManifestHeaderElement.java @@ -19,7 +19,6 @@ package org.apache.ivy.osgi.core; import java.util.ArrayList; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -88,26 +87,19 @@ public class ManifestHeaderElement { } public String toString() { - String string = ""; - Iterator<String> itValues = values.iterator(); - while (itValues.hasNext()) { - string = string.concat(itValues.next()); - if (itValues.hasNext()) { - string = string.concat(";"); + StringBuilder sb = new StringBuilder(); + for (String value : values) { + if (sb.length() > 0) { + sb.append(";"); } + sb.append(value); } for (Entry<String, String> directive : directives.entrySet()) { - string = string.concat(";"); - string = string.concat(directive.getKey()); - string = string.concat(":="); - string = string.concat(directive.getValue()); + sb.append(";").append(directive.getKey()).append(":=").append(directive.getValue()); } for (Entry<String, String> attribute : attributes.entrySet()) { - string = string.concat(";"); - string = string.concat(attribute.getKey()); - string = string.concat("="); - string = string.concat(attribute.getValue()); + sb.append(";").append(attribute.getKey()).append("=").append(attribute.getValue()); } - return string; + return sb.toString(); } } http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/cf15c517/src/java/org/apache/ivy/osgi/core/ManifestHeaderValue.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/ivy/osgi/core/ManifestHeaderValue.java b/src/java/org/apache/ivy/osgi/core/ManifestHeaderValue.java index 5bff0e0..843d3e1 100644 --- a/src/java/org/apache/ivy/osgi/core/ManifestHeaderValue.java +++ b/src/java/org/apache/ivy/osgi/core/ManifestHeaderValue.java @@ -21,7 +21,6 @@ import java.io.PrintStream; import java.text.ParseException; import java.util.ArrayList; import java.util.Collections; -import java.util.Iterator; import java.util.List; /** @@ -394,15 +393,14 @@ public class ManifestHeaderValue { } public String toString() { - String string = ""; - Iterator<ManifestHeaderElement> it = elements.iterator(); - while (it.hasNext()) { - string = string.concat(it.next().toString()); - if (it.hasNext()) { - string = string.concat(","); + StringBuilder sb = new StringBuilder(); + for (ManifestHeaderElement element : elements) { + if (sb.length() > 0) { + sb.append(","); } + sb.append(element.toString()); } - return string; + return sb.toString(); } public static void writeParseException(PrintStream out, String source, ParseException e) { http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/cf15c517/src/java/org/apache/ivy/plugins/report/XmlReportWriter.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/ivy/plugins/report/XmlReportWriter.java b/src/java/org/apache/ivy/plugins/report/XmlReportWriter.java index deaeec7..23a1d34 100644 --- a/src/java/org/apache/ivy/plugins/report/XmlReportWriter.java +++ b/src/java/org/apache/ivy/plugins/report/XmlReportWriter.java @@ -29,6 +29,7 @@ import java.util.List; import java.util.Map; import org.apache.ivy.core.cache.ArtifactOrigin; +import org.apache.ivy.core.module.descriptor.DependencyDescriptor; import org.apache.ivy.core.module.descriptor.License; import org.apache.ivy.core.module.descriptor.ModuleDescriptor; import org.apache.ivy.core.module.id.ModuleId; @@ -49,6 +50,7 @@ import org.apache.ivy.util.XMLHelper; public class XmlReportWriter { static final String REPORT_ENCODING = "UTF-8"; + private static final String SEPARATOR = " "; public void output(ConfigurationResolveReport report, OutputStream stream) { output(report, new String[] {report.getConfiguration()}, stream); @@ -74,11 +76,7 @@ public class XmlReportWriter { if (mrid.getBranch() != null) { out.println("\t\tbranch=\"" + XMLHelper.escape(mrid.getBranch()) + "\""); } - Map<String, String> extraAttributes = mrid.getExtraAttributes(); - for (Map.Entry<String, String> entry : extraAttributes.entrySet()) { - out.println("\t\textra-" + entry.getKey() + "=\"" - + XMLHelper.escape(entry.getValue()) + "\""); - } + out.println(extraToString(mrid.getExtraAttributes(), "\t\t")); out.println("\t\tconf=\"" + XMLHelper.escape(report.getConfiguration()) + "\""); out.println("\t\tconfs=\"" + XMLHelper.escape(StringUtils.join(confs, ", ")) + "\""); out.println("\t\tdate=\"" + DateUtil.format(report.getDate()) + "\"/>"); @@ -142,10 +140,7 @@ public class XmlReportWriter { } extraAttributes = (md != null) ? md.getExtraAttributes() : dep.getResolvedId() .getExtraAttributes(); - for (Map.Entry<String, String> entry : extraAttributes.entrySet()) { - details.append(" extra-").append(entry.getKey()).append("=\"") - .append(XMLHelper.escape(entry.getValue())).append("\""); - } + details.append(extraToString(extraAttributes, SEPARATOR)); out.println(String.format("\t\t\t<revision name=\"%s\"%s%s downloaded=\"%s\" searched=\"%s\"%s conf=\"%s\" position=\"%d\">", XMLHelper.escape(dep.getResolvedId().getRevision()), (dep.getResolvedId().getBranch() == null) ? "" : " branch=\"" @@ -158,14 +153,9 @@ public class XmlReportWriter { if (md != null) { License[] licenses = md.getLicenses(); for (License license : licenses) { - String lurl; - if (license.getUrl() != null) { - lurl = " url=\"" + XMLHelper.escape(license.getUrl()) + "\""; - } else { - lurl = ""; - } - out.println("\t\t\t\t<license name=\"" + XMLHelper.escape(license.getName()) + "\"" - + lurl + "/>"); + out.println(String.format("\t\t\t\t<license name=\"%s\"%s/>", + XMLHelper.escape(license.getName()), + license.getUrl() == null ? "" : " url=\"" + XMLHelper.escape(license.getUrl()) + "\"")); } } outputMetadataArtifact(out, dep); @@ -175,6 +165,18 @@ public class XmlReportWriter { out.println("\t\t\t</revision>"); } + private String extraToString(Map<String, String> extraAttributes, String prefix) { + StringBuilder sb = new StringBuilder(); + for (Map.Entry<String, String> entry : extraAttributes.entrySet()) { + if (sb.length() > 0 && !SEPARATOR.equals(prefix)) { + sb.append(System.lineSeparator()); + } + sb.append(prefix).append("extra-").append(entry.getKey()).append("=\"") + .append(XMLHelper.escape(entry.getValue())).append("\""); + } + return sb.toString(); + } + private void outputEvictionInformation(ConfigurationResolveReport report, PrintWriter out, IvyNode dep) { if (dep.isEvicted(report.getConfiguration())) { @@ -219,24 +221,17 @@ public class XmlReportWriter { } private void outputCallers(ConfigurationResolveReport report, PrintWriter out, IvyNode dep) { - Caller[] callers = dep.getCallers(report.getConfiguration()); - for (Caller caller : callers) { - StringBuilder callerDetails = new StringBuilder(); - Map<String, String> callerExtraAttributes = caller.getDependencyDescriptor() - .getExtraAttributes(); - for (Map.Entry<String, String> entry : callerExtraAttributes.entrySet()) { - callerDetails.append(" extra-").append(entry.getKey()).append("=\"") - .append(XMLHelper.escape(entry.getValue())).append("\""); - } - + for (Caller caller : dep.getCallers(report.getConfiguration())) { + final DependencyDescriptor dependencyDescriptor = caller.getDependencyDescriptor(); out.println(String.format("\t\t\t\t<caller organisation=\"%s\" name=\"%s\" conf=\"%s\" rev=\"%s\" rev-constraint-default=\"%s\" rev-constraint-dynamic=\"%s\" callerrev=\"%s\"%s/>", XMLHelper.escape(caller.getModuleRevisionId().getOrganisation()), XMLHelper.escape(caller.getModuleRevisionId().getName()), XMLHelper.escape(toString(caller.getCallerConfigurations())), XMLHelper.escape(caller.getAskedDependencyId(dep.getData()).getRevision()), - XMLHelper.escape(caller.getDependencyDescriptor().getDependencyRevisionId().getRevision()), - XMLHelper.escape(caller.getDependencyDescriptor().getDynamicConstraintDependencyRevisionId().getRevision()), - XMLHelper.escape(caller.getModuleRevisionId().getRevision()), callerDetails)); + XMLHelper.escape(dependencyDescriptor.getDependencyRevisionId().getRevision()), + XMLHelper.escape(dependencyDescriptor.getDynamicConstraintDependencyRevisionId().getRevision()), + XMLHelper.escape(caller.getModuleRevisionId().getRevision()), + extraToString(dependencyDescriptor.getExtraAttributes(), SEPARATOR))); } } @@ -246,10 +241,7 @@ public class XmlReportWriter { out.print("\t\t\t\t\t<artifact name=\"" + XMLHelper.escape(adr.getName()) + "\" type=\"" + XMLHelper.escape(adr.getType()) + "\" ext=\"" + XMLHelper.escape(adr.getExt()) + "\""); - for (Map.Entry<String, String> entry : adr.getArtifact().getExtraAttributes().entrySet()) { - out.print(" extra-" + entry.getKey() + "=\"" - + XMLHelper.escape(entry.getValue()) + "\""); - } + out.print(extraToString(adr.getArtifact().getExtraAttributes(), SEPARATOR)); out.print(" status=\"" + XMLHelper.escape(adr.getDownloadStatus().toString()) + "\""); out.print(" details=\"" + XMLHelper.escape(adr.getDownloadDetails()) + "\""); out.print(" size=\"" + adr.getSize() + "\"");
