You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by gi...@apache.org on 2017/08/24 08:59:31 UTC

ant-ivy git commit: use static import rather than import of nested class

Repository: ant-ivy
Updated Branches:
  refs/heads/master cf15c5172 -> 14313cffe


use static import rather than import of nested class

Project: http://git-wip-us.apache.org/repos/asf/ant-ivy/repo
Commit: http://git-wip-us.apache.org/repos/asf/ant-ivy/commit/14313cff
Tree: http://git-wip-us.apache.org/repos/asf/ant-ivy/tree/14313cff
Diff: http://git-wip-us.apache.org/repos/asf/ant-ivy/diff/14313cff

Branch: refs/heads/master
Commit: 14313cffebe7d676ee4716a017df7e3febae6f6f
Parents: cf15c51
Author: Gintas Grigelionis <gi...@apache.org>
Authored: Thu Aug 24 10:44:27 2017 +0200
Committer: Gintas Grigelionis <gi...@apache.org>
Committed: Thu Aug 24 10:46:24 2017 +0200

----------------------------------------------------------------------
 src/java/org/apache/ivy/ant/IvyInfo.java        |  5 +-
 .../descriptor/DefaultModuleDescriptor.java     |  4 +-
 .../org/apache/ivy/core/resolve/IvyNode.java    |  9 +--
 .../apache/ivy/osgi/core/BundleInfoAdapter.java | 11 ++--
 .../parser/m2/PomModuleDescriptorBuilder.java   | 29 ++++-----
 .../parser/m2/PomModuleDescriptorParser.java    | 14 ++---
 .../parser/xml/XmlModuleDescriptorParser.java   |  8 ++-
 .../org/apache/ivy/util/ConfigurationUtils.java |  8 ++-
 src/java/org/apache/ivy/util/FileUtil.java      |  9 ++-
 .../xml/XmlModuleDescriptorParserTest.java      | 63 ++++++++++----------
 .../xml/XmlModuleDescriptorWriterTest.java      |  6 +-
 11 files changed, 85 insertions(+), 81 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/src/java/org/apache/ivy/ant/IvyInfo.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/ivy/ant/IvyInfo.java b/src/java/org/apache/ivy/ant/IvyInfo.java
index e9b9cdb..f54ace4 100644
--- a/src/java/org/apache/ivy/ant/IvyInfo.java
+++ b/src/java/org/apache/ivy/ant/IvyInfo.java
@@ -28,7 +28,6 @@ import java.util.Map;
 import org.apache.ivy.Ivy;
 import org.apache.ivy.core.module.descriptor.Artifact;
 import org.apache.ivy.core.module.descriptor.Configuration;
-import org.apache.ivy.core.module.descriptor.Configuration.Visibility;
 import org.apache.ivy.core.module.descriptor.ModuleDescriptor;
 import org.apache.ivy.core.module.id.ModuleId;
 import org.apache.ivy.core.module.id.ModuleRevisionId;
@@ -38,6 +37,8 @@ import org.apache.ivy.plugins.parser.ModuleDescriptorParserRegistry;
 import org.apache.tools.ant.BuildException;
 import org.apache.tools.ant.Project;
 
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PUBLIC;
+
 /**
  * Parses information about an ivy file and make them available in ant.
  */
@@ -173,7 +174,7 @@ public class IvyInfo extends IvyTask {
         List<String> publicConfigsList = new ArrayList<>();
         for (Configuration config : md.getConfigurations()) {
             String name = config.getName();
-            if (Visibility.PUBLIC.equals(config.getVisibility())) {
+            if (PUBLIC.equals(config.getVisibility())) {
                 publicConfigsList.add(name);
             }
 

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java b/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
index 2a4628c..99d92e2 100644
--- a/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
+++ b/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
@@ -53,6 +53,8 @@ import org.apache.ivy.plugins.repository.Resource;
 import org.apache.ivy.plugins.version.VersionMatcher;
 import org.apache.ivy.util.Message;
 
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PUBLIC;
+
 import static org.apache.ivy.core.module.descriptor.Configuration.findConfigurationExtending;
 
 /**
@@ -417,7 +419,7 @@ public class DefaultModuleDescriptor implements ModuleDescriptor {
     public String[] getPublicConfigurationsNames() {
         List<String> ret = new ArrayList<>();
         for (Configuration conf : configurations.values()) {
-            if (conf.getVisibility() == Configuration.Visibility.PUBLIC) {
+            if (PUBLIC.equals(conf.getVisibility())) {
                 ret.add(conf.getName());
             }
         }

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/src/java/org/apache/ivy/core/resolve/IvyNode.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/ivy/core/resolve/IvyNode.java b/src/java/org/apache/ivy/core/resolve/IvyNode.java
index 47bc3e1..a10ca00 100644
--- a/src/java/org/apache/ivy/core/resolve/IvyNode.java
+++ b/src/java/org/apache/ivy/core/resolve/IvyNode.java
@@ -61,6 +61,9 @@ import org.apache.ivy.util.StringUtils;
 import org.apache.ivy.util.filter.Filter;
 import org.apache.ivy.util.filter.FilterHelper;
 
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PRIVATE;
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PUBLIC;
+
 public class IvyNode implements Comparable<IvyNode> {
     private static final Pattern FALLBACK_CONF_PATTERN = Pattern.compile("(.+)\\((.*)\\)");
 
@@ -461,8 +464,7 @@ public class IvyNode implements Comparable<IvyNode> {
                     }
                     return false;
                 }
-                if (shouldBePublic && !isRoot()
-                        && c.getVisibility() != Configuration.Visibility.PUBLIC) {
+                if (shouldBePublic && !isRoot() && !PUBLIC.equals(c.getVisibility())) {
                     confsToFetch.remove(conf);
                     if (isConfRequiredByMergedUsageOnly(rootModuleConf, conf)) {
                         Message.verbose("configuration required by evicted revision is not visible in "
@@ -660,8 +662,7 @@ public class IvyNode implements Comparable<IvyNode> {
         String defaultConf = getDefaultConf(conf);
         conf = getMainConf(conf);
         if ((md.getConfiguration(conf) == null)
-                || Configuration.Visibility.PRIVATE.equals(md.getConfiguration(conf)
-                        .getVisibility())) {
+                || PRIVATE.equals(md.getConfiguration(conf).getVisibility())) {
             if ("".equals(defaultConf)) {
                 return new String[0];
             }

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java b/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
index 41bfa0f..b8607d5 100644
--- a/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
+++ b/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
@@ -34,7 +34,6 @@ import java.util.jar.Manifest;
 import org.apache.ivy.Ivy;
 import org.apache.ivy.core.module.descriptor.Artifact;
 import org.apache.ivy.core.module.descriptor.Configuration;
-import org.apache.ivy.core.module.descriptor.Configuration.Visibility;
 import org.apache.ivy.core.module.descriptor.DefaultArtifact;
 import org.apache.ivy.core.module.descriptor.DefaultDependencyDescriptor;
 import org.apache.ivy.core.module.descriptor.DefaultExcludeRule;
@@ -49,6 +48,8 @@ import org.apache.ivy.plugins.matcher.ExactOrRegexpPatternMatcher;
 import org.apache.ivy.plugins.matcher.PatternMatcher;
 import org.apache.ivy.plugins.parser.ModuleDescriptorParser;
 
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PUBLIC;
+
 public class BundleInfoAdapter {
 
     public static final String CONF_NAME_DEFAULT = "default";
@@ -58,13 +59,13 @@ public class BundleInfoAdapter {
     public static final String CONF_NAME_OPTIONAL = "optional";
 
     public static final Configuration CONF_OPTIONAL = new Configuration(CONF_NAME_OPTIONAL,
-            Visibility.PUBLIC, "Optional dependencies", new String[] {CONF_NAME_DEFAULT}, true,
+            PUBLIC, "Optional dependencies", new String[] {CONF_NAME_DEFAULT}, true,
             null);
 
     public static final String CONF_NAME_TRANSITIVE_OPTIONAL = "transitive-optional";
 
     public static final Configuration CONF_TRANSITIVE_OPTIONAL = new Configuration(
-            CONF_NAME_TRANSITIVE_OPTIONAL, Visibility.PUBLIC, "Optional dependencies",
+            CONF_NAME_TRANSITIVE_OPTIONAL, PUBLIC, "Optional dependencies",
             new String[] {CONF_NAME_OPTIONAL}, true, null);
 
     public static final String CONF_USE_PREFIX = "use_";
@@ -113,7 +114,7 @@ public class BundleInfoAdapter {
             }
             confDependencies[i] = CONF_NAME_DEFAULT;
             md.addConfiguration(new Configuration(CONF_USE_PREFIX + exportPackage.getName(),
-                    Visibility.PUBLIC, "Exported package " + exportPackage.getName(),
+                    PUBLIC, "Exported package " + exportPackage.getName(),
                     confDependencies, true, null));
         }
 
@@ -326,7 +327,7 @@ public class BundleInfoAdapter {
             if (BundleInfo.PACKAGE_TYPE.equals(type)) {
                 // declare the configuration for the package
                 conf = CONF_USE_PREFIX + name;
-                md.addConfiguration(new Configuration(CONF_USE_PREFIX + name, Visibility.PUBLIC,
+                md.addConfiguration(new Configuration(CONF_USE_PREFIX + name, PUBLIC,
                         "Exported package " + name, new String[] {CONF_NAME_DEFAULT}, true, null));
                 dd.addDependencyConfiguration(conf, conf);
             }

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorBuilder.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorBuilder.java b/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorBuilder.java
index 5aa18fe..a7b58c7 100644
--- a/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorBuilder.java
+++ b/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorBuilder.java
@@ -32,7 +32,6 @@ import org.apache.ivy.Ivy;
 import org.apache.ivy.core.cache.ArtifactOrigin;
 import org.apache.ivy.core.module.descriptor.Artifact;
 import org.apache.ivy.core.module.descriptor.Configuration;
-import org.apache.ivy.core.module.descriptor.Configuration.Visibility;
 import org.apache.ivy.core.module.descriptor.DefaultArtifact;
 import org.apache.ivy.core.module.descriptor.DefaultDependencyArtifactDescriptor;
 import org.apache.ivy.core.module.descriptor.DefaultDependencyDescriptor;
@@ -56,6 +55,8 @@ import org.apache.ivy.plugins.repository.Resource;
 import org.apache.ivy.plugins.resolver.DependencyResolver;
 import org.apache.ivy.util.Message;
 
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PUBLIC;
+
 /**
  * Build a module descriptor. This class handle the complexity of the structure of an ivy
  * ModuleDescriptor and isolate the PomModuleDescriptorParser from it.
@@ -65,47 +66,41 @@ public class PomModuleDescriptorBuilder {
     private static final int DEPENDENCY_MANAGEMENT_KEY_PARTS_COUNT = 4;
 
     public static final Configuration[] MAVEN2_CONFIGURATIONS = new Configuration[] {
-            new Configuration("default", Visibility.PUBLIC,
+            new Configuration("default", PUBLIC,
                     "runtime dependencies and master artifact can be used with this conf",
                     new String[] {"runtime", "master"}, true, null),
-            new Configuration("master", Visibility.PUBLIC,
+            new Configuration("master", PUBLIC,
                     "contains only the artifact published by this module itself, "
                             + "with no transitive dependencies", new String[0], true, null),
-            new Configuration("compile", Visibility.PUBLIC,
+            new Configuration("compile", PUBLIC,
                     "this is the default scope, used if none is specified. "
                             + "Compile dependencies are available in all classpaths.",
                     new String[0], true, null),
-            new Configuration(
-                    "provided",
-                    Visibility.PUBLIC,
+            new Configuration("provided", PUBLIC,
                     "this is much like compile, but indicates you expect the JDK or a container "
                             + "to provide it. "
                             + "It is only available on the compilation classpath, and is not transitive.",
                     new String[0], true, null),
-            new Configuration("runtime", Visibility.PUBLIC,
+            new Configuration("runtime", PUBLIC,
                     "this scope indicates that the dependency is not required for compilation, "
                             + "but is for execution. It is in the runtime and test classpaths, "
                             + "but not the compile classpath.", new String[] {"compile"}, true,
                     null),
-            new Configuration(
-                    "test",
-                    Visibility.PUBLIC,
+            new Configuration("test", PUBLIC,
                     "this scope indicates that the dependency is not required for normal use of "
                             + "the application, and is only available for the test compilation and "
                             + "execution phases.", new String[] {"runtime"}, true, null),
-            new Configuration(
-                    "system",
-                    Visibility.PUBLIC,
+            new Configuration("system", PUBLIC,
                     "this scope is similar to provided except that you have to provide the JAR "
                             + "which contains it explicitly. The artifact is always available and is not "
                             + "looked up in a repository.", new String[0], true, null),
-            new Configuration("sources", Visibility.PUBLIC,
+            new Configuration("sources", PUBLIC,
                     "this configuration contains the source artifact of this module, if any.",
                     new String[0], true, null),
-            new Configuration("javadoc", Visibility.PUBLIC,
+            new Configuration("javadoc", PUBLIC,
                     "this configuration contains the javadoc artifact of this module, if any.",
                     new String[0], true, null),
-            new Configuration("optional", Visibility.PUBLIC, "contains all optional dependencies",
+            new Configuration("optional", PUBLIC, "contains all optional dependencies",
                     new String[0], true, null)};
 
     static final Map<String, ConfMapper> MAVEN2_CONF_MAPPING = new HashMap<>();

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorParser.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorParser.java b/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorParser.java
index 92d81bb..b7cfddf 100644
--- a/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorParser.java
+++ b/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorParser.java
@@ -25,11 +25,9 @@ import java.text.ParseException;
 import java.util.Date;
 import java.util.Map;
 
-import org.apache.ivy.core.IvyContext;
 import org.apache.ivy.core.cache.ArtifactOrigin;
 import org.apache.ivy.core.module.descriptor.Artifact;
 import org.apache.ivy.core.module.descriptor.Configuration;
-import org.apache.ivy.core.module.descriptor.Configuration.Visibility;
 import org.apache.ivy.core.module.descriptor.DefaultArtifact;
 import org.apache.ivy.core.module.descriptor.DefaultDependencyDescriptor;
 import org.apache.ivy.core.module.descriptor.DependencyDescriptor;
@@ -40,7 +38,6 @@ import org.apache.ivy.core.resolve.ResolveData;
 import org.apache.ivy.core.resolve.ResolveEngine;
 import org.apache.ivy.core.resolve.ResolveOptions;
 import org.apache.ivy.core.resolve.ResolvedModuleRevision;
-import org.apache.ivy.plugins.namespace.NameSpaceHelper;
 import org.apache.ivy.plugins.parser.ModuleDescriptorParser;
 import org.apache.ivy.plugins.parser.ParserSettings;
 import org.apache.ivy.plugins.parser.m2.PomModuleDescriptorBuilder.PomDependencyDescriptor;
@@ -55,6 +52,9 @@ import org.apache.ivy.plugins.resolver.DependencyResolver;
 import org.apache.ivy.util.Message;
 import org.xml.sax.SAXException;
 
+import static org.apache.ivy.core.IvyContext.getContext;
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PUBLIC;
+import static org.apache.ivy.plugins.namespace.NameSpaceHelper.toSystem;
 import static org.apache.ivy.plugins.parser.m2.PomModuleDescriptorBuilder.MAVEN2_CONFIGURATIONS;
 import static org.apache.ivy.plugins.parser.m2.PomModuleDescriptorBuilder.extractPomProperties;
 import static org.apache.ivy.plugins.parser.m2.PomModuleDescriptorBuilder.getDependencyManagements;
@@ -202,7 +202,7 @@ public final class PomModuleDescriptorParser implements ModuleDescriptorParser {
                             mdBuilder.getModuleDescriptor(), relocation, true, false, true);
                     /* Map all public dependencies */
                     for (Configuration m2Conf : MAVEN2_CONFIGURATIONS) {
-                        if (Visibility.PUBLIC.equals(m2Conf.getVisibility())) {
+                        if (PUBLIC.equals(m2Conf.getVisibility())) {
                             dd.addDependencyConfiguration(m2Conf.getName(), m2Conf.getName());
                         }
                     }
@@ -383,9 +383,9 @@ public final class PomModuleDescriptorParser implements ModuleDescriptorParser {
     private ResolvedModuleRevision parseOtherPom(ParserSettings ivySettings,
             ModuleRevisionId parentModRevID) throws ParseException {
         DependencyDescriptor dd = new DefaultDependencyDescriptor(parentModRevID, true);
-        ResolveData data = IvyContext.getContext().getResolveData();
+        ResolveData data = getContext().getResolveData();
         if (data == null) {
-            ResolveEngine engine = IvyContext.getContext().getIvy().getResolveEngine();
+            ResolveEngine engine = getContext().getIvy().getResolveEngine();
             ResolveOptions options = new ResolveOptions();
             options.setDownload(false);
             data = new ResolveData(engine, options);
@@ -396,7 +396,7 @@ public final class PomModuleDescriptorParser implements ModuleDescriptorParser {
             // TODO: Throw exception here?
             return null;
         } else {
-            dd = NameSpaceHelper.toSystem(dd, ivySettings.getContextNamespace());
+            dd = toSystem(dd, ivySettings.getContextNamespace());
             return resolver.getDependency(dd, data);
         }
     }

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java b/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java
index 4911c99..2828499 100644
--- a/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java
+++ b/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java
@@ -82,6 +82,8 @@ import org.apache.ivy.util.extendable.ExtendableItemHelper;
 import org.xml.sax.Attributes;
 import org.xml.sax.SAXException;
 
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.getVisibility;
+
 /**
  * Parses an xml ivy file and output a ModuleDescriptor. For dependency and performance reasons, it
  * uses only the SAX API, which makes the parsing code harder to understand.
@@ -839,9 +841,9 @@ public class XmlModuleDescriptorParser extends AbstractModuleDescriptorParser {
                             || Boolean.valueOf(attributes.getValue("transitive"));
                     String deprecated = attributes.getValue("deprecated");
                     Configuration configuration = new Configuration(conf,
-                            Configuration.Visibility.getVisibility((visibility == null) ? "public"
-                                    : visibility), settings.substitute(attributes.getValue("description")),
-                                    (ext == null) ? null : ext.split(","), transitive, deprecated);
+                            getVisibility((visibility == null) ? "public" : visibility),
+                            settings.substitute(attributes.getValue("description")),
+                            (ext == null) ? null : ext.split(","), transitive, deprecated);
                     ExtendableItemHelper.fillExtraAttributes(settings, configuration, attributes,
                         new String[] {"name", "visibility", "extends", "transitive", "description",
                                 "deprecated"});

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/src/java/org/apache/ivy/util/ConfigurationUtils.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/ivy/util/ConfigurationUtils.java b/src/java/org/apache/ivy/util/ConfigurationUtils.java
index ccb50ba..deaf9a6 100644
--- a/src/java/org/apache/ivy/util/ConfigurationUtils.java
+++ b/src/java/org/apache/ivy/util/ConfigurationUtils.java
@@ -22,9 +22,11 @@ import java.util.LinkedHashSet;
 import java.util.Set;
 
 import org.apache.ivy.core.module.descriptor.Configuration;
-import org.apache.ivy.core.module.descriptor.Configuration.Visibility;
 import org.apache.ivy.core.module.descriptor.ModuleDescriptor;
 
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PRIVATE;
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PUBLIC;
+
 /**
  * Class containing several utility methods for working with configurations.
  */
@@ -67,13 +69,13 @@ public final class ConfigurationUtils {
                 result.addAll(Arrays.asList(md.getConfigurationsNames()));
             } else if ("*(public)".equals(conf)) {
                 for (Configuration cf : md.getConfigurations()) {
-                    if (cf.getVisibility().equals(Visibility.PUBLIC)) {
+                    if (PUBLIC.equals(cf.getVisibility())) {
                         result.add(cf.getName());
                     }
                 }
             } else if ("*(private)".equals(conf)) {
                 for (Configuration cf : md.getConfigurations()) {
-                    if (cf.getVisibility().equals(Visibility.PRIVATE)) {
+                    if (PRIVATE.equals(cf.getVisibility())) {
                         result.add(cf.getName());
                     }
                 }

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/src/java/org/apache/ivy/util/FileUtil.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/ivy/util/FileUtil.java b/src/java/org/apache/ivy/util/FileUtil.java
index 957e8de..3f8fa1e 100644
--- a/src/java/org/apache/ivy/util/FileUtil.java
+++ b/src/java/org/apache/ivy/util/FileUtil.java
@@ -40,11 +40,11 @@ import java.util.List;
 import java.util.Stack;
 import java.util.StringTokenizer;
 import java.util.jar.JarOutputStream;
-import java.util.jar.Pack200;
-import java.util.jar.Pack200.Unpacker;
 import java.util.zip.GZIPInputStream;
 import java.util.zip.ZipInputStream;
 
+import static java.util.jar.Pack200.newUnpacker;
+
 /**
  * Utility class used to deal with file related operations, like copy, full reading, symlink, ...
  */
@@ -584,17 +584,16 @@ public final class FileUtil {
             in = new GZIPInputStream(in);
         }
 
-        Unpacker unpacker = Pack200.newUnpacker();
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
         JarOutputStream jar = new JarOutputStream(baos);
-        unpacker.unpack(new UncloseInputStream(in), jar);
+        newUnpacker().unpack(new UncloseInputStream(in), jar);
         jar.close();
         return new ByteArrayInputStream(baos.toByteArray());
     }
 
     /**
      * Wrap an input stream and do not close the stream on call to close(). Used to avoid closing a
-     * {@link ZipInputStream} used with {@link Unpacker#unpack(File, JarOutputStream)}
+     * {@link ZipInputStream} used with {@link Pack200.Unpacker#unpack(File, JarOutputStream)}
      */
     private static final class UncloseInputStream extends InputStream {
 

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParserTest.java
----------------------------------------------------------------------
diff --git a/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParserTest.java b/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParserTest.java
index e5ce534..6fdcf5d 100644
--- a/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParserTest.java
+++ b/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParserTest.java
@@ -17,26 +17,9 @@
  */
 package org.apache.ivy.plugins.parser.xml;
 
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.nio.file.StandardCopyOption;
-import java.text.ParseException;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Date;
-import java.util.GregorianCalendar;
-import java.util.HashSet;
-import java.util.Set;
-
 import org.apache.ivy.Ivy;
 import org.apache.ivy.core.module.descriptor.Artifact;
 import org.apache.ivy.core.module.descriptor.Configuration;
-import org.apache.ivy.core.module.descriptor.Configuration.Visibility;
 import org.apache.ivy.core.module.descriptor.DefaultDependencyDescriptor;
 import org.apache.ivy.core.module.descriptor.DependencyDescriptor;
 import org.apache.ivy.core.module.descriptor.ExcludeRule;
@@ -63,6 +46,24 @@ import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
 
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.nio.file.StandardCopyOption;
+import java.text.ParseException;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.HashSet;
+import java.util.Set;
+
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PRIVATE;
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PUBLIC;
 import static org.junit.Assert.*;
 
 public class XmlModuleDescriptorParserTest extends AbstractModuleDescriptorParserTester {
@@ -242,12 +243,12 @@ public class XmlModuleDescriptorParserTest extends AbstractModuleDescriptorParse
         assertNotNull(confs);
         assertEquals(5, confs.length);
 
-        assertConf(md, "myconf1", "desc 1", Configuration.Visibility.PUBLIC, new String[0]);
-        assertConf(md, "myconf2", "desc 2", Configuration.Visibility.PUBLIC, new String[0]);
-        assertConf(md, "myconf3", "desc 3", Configuration.Visibility.PRIVATE, new String[0]);
-        assertConf(md, "myconf4", "desc 4", Configuration.Visibility.PUBLIC, new String[] {
+        assertConf(md, "myconf1", "desc 1", PUBLIC, new String[0]);
+        assertConf(md, "myconf2", "desc 2", PUBLIC, new String[0]);
+        assertConf(md, "myconf3", "desc 3", PRIVATE, new String[0]);
+        assertConf(md, "myconf4", "desc 4", PUBLIC, new String[] {
                 "myconf1", "myconf2"});
-        assertConf(md, "myoldconf", "my old desc", Configuration.Visibility.PUBLIC, new String[0]);
+        assertConf(md, "myoldconf", "my old desc", PUBLIC, new String[0]);
 
         assertArtifacts(md.getArtifacts("myconf1"), new String[] {"myartifact1", "myartifact2",
                 "myartifact3", "myartifact4"});
@@ -834,8 +835,8 @@ public class XmlModuleDescriptorParserTest extends AbstractModuleDescriptorParse
         // should have imported configurations
         assertNotNull(md.getConfigurations());
         assertEquals(
-            Arrays.asList(new Configuration("conf1", Visibility.PUBLIC, "", new String[0], true, null),
-                    new Configuration("conf2", Visibility.PRIVATE, "", new String[0], true, null)),
+            Arrays.asList(new Configuration("conf1", PUBLIC, "", new String[0], true, null),
+                    new Configuration("conf2", PRIVATE, "", new String[0], true, null)),
             Arrays.asList(md.getConfigurations()));
 
         DependencyDescriptor[] dependencies = md.getDependencies();
@@ -866,9 +867,9 @@ public class XmlModuleDescriptorParserTest extends AbstractModuleDescriptorParse
         // should have imported configurations and added the one defined in the file itself
         assertNotNull(md.getConfigurations());
         assertEquals(
-            Arrays.asList(new Configuration("conf1", Visibility.PUBLIC, "", new String[0], true, null),
-                    new Configuration("conf2", Visibility.PRIVATE, "", new String[0], true, null),
-                    new Configuration("conf3", Visibility.PUBLIC, "", new String[0], true, null)),
+            Arrays.asList(new Configuration("conf1", PUBLIC, "", new String[0], true, null),
+                    new Configuration("conf2", PRIVATE, "", new String[0], true, null),
+                    new Configuration("conf3", PUBLIC, "", new String[0], true, null)),
             Arrays.asList(md.getConfigurations()));
 
         DependencyDescriptor[] dependencies = md.getDependencies();
@@ -901,8 +902,8 @@ public class XmlModuleDescriptorParserTest extends AbstractModuleDescriptorParse
         // should have imported configurations
         assertNotNull(md.getConfigurations());
         assertEquals(
-            Arrays.asList(new Configuration("conf1", Visibility.PUBLIC, "", new String[0], true, null),
-                    new Configuration("conf2", Visibility.PRIVATE, "", new String[0], true, null)),
+            Arrays.asList(new Configuration("conf1", PUBLIC, "", new String[0], true, null),
+                    new Configuration("conf2", PRIVATE, "", new String[0], true, null)),
             Arrays.asList(md.getConfigurations()));
 
         DependencyDescriptor[] dependencies = md.getDependencies();
@@ -936,8 +937,8 @@ public class XmlModuleDescriptorParserTest extends AbstractModuleDescriptorParse
         // should have imported configurations
         assertNotNull(md.getConfigurations());
         assertEquals(
-            Arrays.asList(new Configuration("conf1", Visibility.PUBLIC, "", new String[0], true, null),
-                    new Configuration("conf2", Visibility.PRIVATE, "", new String[0], true, null)),
+            Arrays.asList(new Configuration("conf1", PUBLIC, "", new String[0], true, null),
+                    new Configuration("conf2", PRIVATE, "", new String[0], true, null)),
             Arrays.asList(md.getConfigurations()));
 
         DependencyDescriptor[] dependencies = md.getDependencies();

http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/14313cff/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorWriterTest.java
----------------------------------------------------------------------
diff --git a/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorWriterTest.java b/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorWriterTest.java
index 341b569..a2a6aa1 100644
--- a/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorWriterTest.java
+++ b/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorWriterTest.java
@@ -26,7 +26,6 @@ import java.util.Date;
 import java.util.GregorianCalendar;
 
 import org.apache.ivy.core.module.descriptor.Configuration;
-import org.apache.ivy.core.module.descriptor.Configuration.Visibility;
 import org.apache.ivy.core.module.descriptor.DefaultModuleDescriptor;
 import org.apache.ivy.core.module.descriptor.ModuleDescriptor;
 import org.apache.ivy.core.module.id.ModuleId;
@@ -40,6 +39,7 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.ivy.core.module.descriptor.Configuration.Visibility.PUBLIC;
 import static org.custommonkey.xmlunit.XMLAssert.assertXMLEqual;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
@@ -199,7 +199,7 @@ public class XmlModuleDescriptorWriterTest {
         // Given a ModuleDescriptor with a non-transitive configuration
         DefaultModuleDescriptor md = new DefaultModuleDescriptor(new ModuleRevisionId(new ModuleId(
                 "myorg", "myname"), "1.0"), "integration", new Date());
-        Configuration conf = new Configuration("conf", Visibility.PUBLIC, "desc", null, false, null);
+        Configuration conf = new Configuration("conf", PUBLIC, "desc", null, false, null);
         md.addConfiguration(conf);
 
         // When the ModuleDescriptor is written
@@ -227,7 +227,7 @@ public class XmlModuleDescriptorWriterTest {
         // Given a ModuleDescriptor with a transitive configuration
         DefaultModuleDescriptor md = new DefaultModuleDescriptor(new ModuleRevisionId(new ModuleId(
                 "myorg", "myname"), "1.0"), "integration", new Date());
-        Configuration conf = new Configuration("conf", Visibility.PUBLIC, "desc", null, true, null);
+        Configuration conf = new Configuration("conf", PUBLIC, "desc", null, true, null);
         md.addConfiguration(conf);
 
         // When the ModuleDescriptor is written