[MRESOLVER-344] Upgrade Maven to 3.9.4 and Resolver to 1.9.15

Update to Maven 3.9.4 + Resolver 1.9.15

---

https://issues.apache.org/jira/browse/MRESOLVER-344
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/AntModelResolver.java b/src/main/java/org/apache/maven/resolver/internal/ant/AntModelResolver.java
index acdf730..1a16e36 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/AntModelResolver.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/AntModelResolver.java
@@ -72,7 +72,7 @@
         this.repoSys = repoSys;
         this.remoteRepositoryManager = remoteRepositoryManager;
         this.repositories = repositories;
-        this.repositoryIds = new HashSet<String>();
+        this.repositoryIds = new HashSet<>();
     }
 
     private AntModelResolver( final AntModelResolver original )
@@ -82,7 +82,7 @@
         this.repoSys = original.repoSys;
         this.remoteRepositoryManager = original.remoteRepositoryManager;
         this.repositories = original.repositories;
-        this.repositoryIds = new HashSet<String>( original.repositoryIds );
+        this.repositoryIds = new HashSet<>( original.repositoryIds );
     }
 
     public void addRepository( final Repository repository )
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/ConverterUtils.java b/src/main/java/org/apache/maven/resolver/internal/ant/ConverterUtils.java
index 3e2d333..f522bb5 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/ConverterUtils.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/ConverterUtils.java
@@ -113,7 +113,7 @@
                                                                                  Collection<Exclusion> exclusions2 )
     {
         Collection<org.eclipse.aether.graph.Exclusion> results =
-            new LinkedHashSet<org.eclipse.aether.graph.Exclusion>();
+            new LinkedHashSet<>();
         if ( exclusions1 != null )
         {
             for ( Exclusion exclusion : exclusions1 )
@@ -202,11 +202,11 @@
         }
         else
         {
-            repositories = new ArrayList<RemoteRepository>();
+            repositories = new ArrayList<>();
         }
 
         List<org.eclipse.aether.repository.RemoteRepository> results =
-            new ArrayList<org.eclipse.aether.repository.RemoteRepository>();
+            new ArrayList<>();
         for ( RemoteRepository repo : repositories )
         {
             results.add( toRepository( repo ) );
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/ProjectWorkspaceReader.java b/src/main/java/org/apache/maven/resolver/internal/ant/ProjectWorkspaceReader.java
index cccc72a..867f3af 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/ProjectWorkspaceReader.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/ProjectWorkspaceReader.java
@@ -48,7 +48,7 @@
 
     private static final Object LOCK = new Object();
 
-    private Map<String, Artifact> artifacts = new ConcurrentHashMap<String, Artifact>();
+    private Map<String, Artifact> artifacts = new ConcurrentHashMap<>();
 
     public void addPom( Pom pom )
     {
@@ -107,7 +107,7 @@
 
     public List<String> findVersions( Artifact artifact )
     {
-        List<String> versions = new ArrayList<String>();
+        List<String> versions = new ArrayList<>();
         for ( Artifact art : artifacts.values() )
         {
             if ( ArtifactIdUtils.equalsVersionlessId( artifact, art ) )
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/SettingsUtils.java b/src/main/java/org/apache/maven/resolver/internal/ant/SettingsUtils.java
index 51cb0d1..f732210 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/SettingsUtils.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/SettingsUtils.java
@@ -43,7 +43,7 @@
             return null;
         }
 
-        List<org.apache.maven.model.Profile> results = new ArrayList<org.apache.maven.model.Profile>();
+        List<org.apache.maven.model.Profile> results = new ArrayList<>();
 
         for ( Profile profile : profiles )
         {
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/tasks/AbstractDistTask.java b/src/main/java/org/apache/maven/resolver/internal/ant/tasks/AbstractDistTask.java
index 12066a0..e8fd725 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/tasks/AbstractDistTask.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/tasks/AbstractDistTask.java
@@ -47,7 +47,7 @@
     {
         getArtifacts().validate( this );
 
-        final Map<String, File> duplicates = new HashMap<String, File>();
+        final Map<String, File> duplicates = new HashMap<>();
         for ( final Artifact artifact : getArtifacts().getArtifacts() )
         {
             final String key = artifact.getType() + ':' + artifact.getClassifier();
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/tasks/Layout.java b/src/main/java/org/apache/maven/resolver/internal/ant/tasks/Layout.java
index 1060c93..4cc5527 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/tasks/Layout.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/tasks/Layout.java
@@ -55,8 +55,8 @@
     Layout( String layout )
         throws BuildException
     {
-        Collection<String> valid = new HashSet<String>( Arrays.asList( GID, GID_DIRS, AID, VER, BVER, EXT, CLS ) );
-        List<String> tokens = new ArrayList<String>();
+        Collection<String> valid = new HashSet<>( Arrays.asList( GID, GID_DIRS, AID, VER, BVER, EXT, CLS ) );
+        List<String> tokens = new ArrayList<>();
         Matcher m = Pattern.compile( "(\\{[^}]*\\})|([^{]+)" ).matcher( layout );
         while ( m.find() )
         {
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/tasks/Resolve.java b/src/main/java/org/apache/maven/resolver/internal/ant/tasks/Resolve.java
index c17e359..631c052 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/tasks/Resolve.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/tasks/Resolve.java
@@ -59,7 +59,7 @@
     extends AbstractResolvingTask
 {
 
-    private List<ArtifactConsumer> consumers = new ArrayList<ArtifactConsumer>();
+    private List<ArtifactConsumer> consumers = new ArrayList<>();
 
     private boolean failOnMissingAttachments;
 
@@ -132,7 +132,7 @@
         DependencyNode root = collectDependencies().getRoot();
         root.accept( new DependencyGraphLogger( this ) );
 
-        Map<String, Group> groups = new HashMap<String, Group>();
+        Map<String, Group> groups = new HashMap<>();
         for ( ArtifactConsumer consumer : consumers )
         {
             String classifier = consumer.getClassifier();
@@ -215,8 +215,8 @@
                 throw new BuildException( "You must not specify both 'scopes' and 'classpath'" );
             }
 
-            Collection<String> included = new HashSet<String>();
-            Collection<String> excluded = new HashSet<String>();
+            Collection<String> included = new HashSet<>();
+            Collection<String> excluded = new HashSet<>();
 
             String[] split = scopes.split( "[, ]" );
             for ( String scope : split )
@@ -504,9 +504,9 @@
 
         private String classifier;
 
-        private List<ArtifactConsumer> consumers = new ArrayList<ArtifactConsumer>();
+        private List<ArtifactConsumer> consumers = new ArrayList<>();
 
-        private List<ArtifactRequest> requests = new ArrayList<ArtifactRequest>();
+        private List<ArtifactRequest> requests = new ArrayList<>();
 
         Group( String classifier )
         {
@@ -525,7 +525,7 @@
 
         public void createRequests( DependencyNode node )
         {
-            createRequests( node, new LinkedList<DependencyNode>() );
+            createRequests( node, new LinkedList<>() );
         }
 
         private void createRequests( DependencyNode node, LinkedList<DependencyNode> parents )
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/types/Artifacts.java b/src/main/java/org/apache/maven/resolver/internal/ant/types/Artifacts.java
index 85f8b78..2b15ad9 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/types/Artifacts.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/types/Artifacts.java
@@ -33,7 +33,7 @@
     implements ArtifactContainer
 {
 
-    private List<ArtifactContainer> containers = new ArrayList<ArtifactContainer>();
+    private List<ArtifactContainer> containers = new ArrayList<>();
 
     protected Artifacts getRef()
     {
@@ -86,7 +86,7 @@
         {
             return getRef().getArtifacts();
         }
-        List<Artifact> artifacts = new ArrayList<Artifact>();
+        List<Artifact> artifacts = new ArrayList<>();
         for ( ArtifactContainer container : containers )
         {
             artifacts.addAll( container.getArtifacts() );
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/types/Authentication.java b/src/main/java/org/apache/maven/resolver/internal/ant/types/Authentication.java
index 6d212fc..e65326f 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/types/Authentication.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/types/Authentication.java
@@ -41,7 +41,7 @@
 
     private String passphrase;
 
-    private List<String> servers = new ArrayList<String>();
+    private List<String> servers = new ArrayList<>();
 
     @Override
     public void setProject( Project project )
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/types/Dependencies.java b/src/main/java/org/apache/maven/resolver/internal/ant/types/Dependencies.java
index 5e1ea3c..ee5bb4a 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/types/Dependencies.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/types/Dependencies.java
@@ -41,9 +41,9 @@
 
     private Pom pom;
 
-    private List<DependencyContainer> containers = new ArrayList<DependencyContainer>();
+    private List<DependencyContainer> containers = new ArrayList<>();
 
-    private List<Exclusion> exclusions = new ArrayList<Exclusion>();
+    private List<Exclusion> exclusions = new ArrayList<>();
 
     private boolean nestedDependencies;
 
@@ -64,7 +64,7 @@
             {
                 throw new BuildException( "A <pom> used for dependency resolution has to be backed by a pom.xml file" );
             }
-            Map<String, String> ids = new HashMap<String, String>();
+            Map<String, String> ids = new HashMap<>();
             for ( DependencyContainer container : containers )
             {
                 container.validate( task );
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/types/Dependency.java b/src/main/java/org/apache/maven/resolver/internal/ant/types/Dependency.java
index 9299a5f..8b24c03 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/types/Dependency.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/types/Dependency.java
@@ -52,7 +52,7 @@
 
     private File systemPath;
 
-    private List<Exclusion> exclusions = new ArrayList<Exclusion>();
+    private List<Exclusion> exclusions = new ArrayList<>();
 
     protected Dependency getRef()
     {
diff --git a/src/main/java/org/apache/maven/resolver/internal/ant/types/RemoteRepositories.java b/src/main/java/org/apache/maven/resolver/internal/ant/types/RemoteRepositories.java
index 0b90877..c63a29d 100644
--- a/src/main/java/org/apache/maven/resolver/internal/ant/types/RemoteRepositories.java
+++ b/src/main/java/org/apache/maven/resolver/internal/ant/types/RemoteRepositories.java
@@ -33,7 +33,7 @@
     implements RemoteRepositoryContainer
 {
 
-    private List<RemoteRepositoryContainer> containers = new ArrayList<RemoteRepositoryContainer>();
+    private List<RemoteRepositoryContainer> containers = new ArrayList<>();
 
     protected RemoteRepositories getRef()
     {
@@ -86,7 +86,7 @@
         {
             return getRef().getRepositories();
         }
-        List<RemoteRepository> repos = new ArrayList<RemoteRepository>();
+        List<RemoteRepository> repos = new ArrayList<>();
         for ( RemoteRepositoryContainer container : containers )
         {
             repos.addAll( container.getRepositories() );