This is an automated email from the ASF dual-hosted git repository.

cstamas pushed a commit to branch drop-mat
in repository https://gitbox.apache.org/repos/asf/maven-install-plugin.git

commit c5076945cd61b3770a0f2ca89e55f389d7cdfac7
Author: Tamas Cservenak <[email protected]>
AuthorDate: Mon Jun 20 14:45:35 2022 +0200

    Drop MAT
    
    Now that Maven is 3.2.5, no need for MAT anymore.
---
 pom.xml                                            |  35 ++++---
 .../maven/plugins/install/AbstractInstallMojo.java | 101 ++++++++++++++++++---
 .../maven/plugins/install/InstallFileMojo.java     |  67 +++++++-------
 .../apache/maven/plugins/install/InstallMojo.java  |  50 ++--------
 .../maven/plugins/install/InstallFileMojoTest.java |   9 +-
 .../maven/plugins/install/InstallMojoTest.java     |  13 +--
 6 files changed, 157 insertions(+), 118 deletions(-)

diff --git a/pom.xml b/pom.xml
index 7430747..627f549 100644
--- a/pom.xml
+++ b/pom.xml
@@ -63,10 +63,10 @@
   </distributionManagement>
 
   <properties>
-    <mavenVersion>3.2.5</mavenVersion>
-    <slf4jVersion>1.7.32</slf4jVersion>
-    <aetherVersion>1.1.0</aetherVersion>
     <javaVersion>7</javaVersion>
+    <mavenVersion>3.2.5</mavenVersion>
+    <aetherVersion>1.0.0.v20140518</aetherVersion> <!-- Maven bound -->
+    <slf4jVersion>1.7.5</slf4jVersion> <!-- Maven bound -->
     
<project.build.outputTimestamp>2020-04-07T21:04:00Z</project.build.outputTimestamp>
   </properties>
 
@@ -97,9 +97,20 @@
       <scope>provided</scope>
     </dependency>
     <dependency>
-      <groupId>org.apache.maven.shared</groupId>
-      <artifactId>maven-artifact-transfer</artifactId>
-      <version>0.13.1</version>
+      <groupId>org.eclipse.aether</groupId>
+      <artifactId>aether-api</artifactId>
+      <version>${aetherVersion}</version>
+      <scope>compile</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.aether</groupId>
+      <artifactId>aether-util</artifactId>
+      <version>${aetherVersion}</version>
+      <scope>compile</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-utils</artifactId>
     </dependency>
 
     <!-- dependencies to annotations -->
@@ -145,18 +156,6 @@
       <version>${slf4jVersion}</version>
       <scope>test</scope>
     </dependency>
-    <dependency>
-      <groupId>org.eclipse.aether</groupId>
-      <artifactId>aether-api</artifactId>
-      <version>${aetherVersion}</version>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.eclipse.aether</groupId>
-      <artifactId>aether-util</artifactId>
-      <version>${aetherVersion}</version>
-      <scope>test</scope>
-    </dependency>
     <dependency>
       <groupId>org.eclipse.aether</groupId>
       <artifactId>aether-impl</artifactId>
diff --git 
a/src/main/java/org/apache/maven/plugins/install/AbstractInstallMojo.java 
b/src/main/java/org/apache/maven/plugins/install/AbstractInstallMojo.java
index 96d0f53..7143461 100644
--- a/src/main/java/org/apache/maven/plugins/install/AbstractInstallMojo.java
+++ b/src/main/java/org/apache/maven/plugins/install/AbstractInstallMojo.java
@@ -21,14 +21,22 @@ package org.apache.maven.plugins.install;
 
 import java.io.File;
 
+import org.apache.maven.RepositoryUtils;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.project.ProjectBuildingRequest;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.artifact.ProjectArtifact;
 import org.apache.maven.project.artifact.ProjectArtifactMetadata;
-import org.apache.maven.shared.transfer.repository.RepositoryManager;
+import org.eclipse.aether.RepositorySystem;
+import org.eclipse.aether.artifact.DefaultArtifact;
+import org.eclipse.aether.installation.InstallRequest;
+import org.eclipse.aether.installation.InstallationException;
+import org.eclipse.aether.util.artifact.SubArtifact;
 
 /**
  * Common fields for installation mojos.
@@ -38,9 +46,8 @@ import 
org.apache.maven.shared.transfer.repository.RepositoryManager;
 public abstract class AbstractInstallMojo
     extends AbstractMojo
 {
-
     @Component
-    protected RepositoryManager repositoryManager;
+    protected RepositorySystem repositorySystem;
 
     @Parameter( defaultValue = "${session}", required = true, readonly = true )
     protected MavenSession session;
@@ -49,28 +56,98 @@ public abstract class AbstractInstallMojo
      * Gets the path of the specified artifact within the local repository. 
Note that the returned path need not exist
      * (yet).
      *
-     * @param buildingRequest {@link ProjectBuildingRequest}.
      * @param artifact The artifact whose local repo path should be 
determined, must not be <code>null</code>.
      * @return The absolute path to the artifact when installed, never 
<code>null</code>.
      */
-    protected File getLocalRepoFile( ProjectBuildingRequest buildingRequest, 
Artifact artifact )
+    protected File getLocalRepoFile( Artifact artifact )
     {
-        String path = repositoryManager.getPathForLocalArtifact( 
buildingRequest, artifact );
-        return new File( repositoryManager.getLocalRepositoryBasedir( 
buildingRequest ), path );
+        String path = 
session.getRepositorySession().getLocalRepositoryManager()
+                .getPathForLocalArtifact( RepositoryUtils.toArtifact( artifact 
) );
+        return new File( 
session.getRepositorySession().getLocalRepository().getBasedir(), path );
     }
 
     /**
      * Gets the path of the specified artifact metadata within the local 
repository. Note that the returned path need
      * not exist (yet).
      *
-     * @param buildingRequest {@link ProjectBuildingRequest}.
      * @param metadata The artifact metadata whose local repo path should be 
determined, must not be <code>null</code>.
      * @return The absolute path to the artifact metadata when installed, 
never <code>null</code>.
      */
-    protected File getLocalRepoFile( ProjectBuildingRequest buildingRequest, 
ProjectArtifactMetadata metadata )
+    protected File getLocalRepoFile( ProjectArtifactMetadata metadata )
     {
-        String path = repositoryManager.getPathForLocalMetadata( 
buildingRequest, metadata );
-        return new File( repositoryManager.getLocalRepositoryBasedir( 
buildingRequest ), path );
+        DefaultArtifact pomArtifact = new DefaultArtifact(
+                metadata.getGroupId(),
+                metadata.getArtifactId(),
+                "",
+                "pom",
+                metadata.getBaseVersion() );
+
+        String path = 
session.getRepositorySession().getLocalRepositoryManager().getPathForLocalArtifact(
+                pomArtifact );
+        return new File( 
session.getRepositorySession().getLocalRepository().getBasedir(), path );
     }
 
+    protected void installProject( MavenProject project )
+            throws MojoFailureException, MojoExecutionException
+    {
+        try
+        {
+            InstallRequest request = new InstallRequest();
+            Artifact artifact = project.getArtifact();
+            String packaging = project.getPackaging();
+            File pomFile = project.getFile();
+            boolean isPomArtifact = "pom".equals( packaging );
+
+            if ( pomFile != null )
+            {
+                request.addArtifact( RepositoryUtils.toArtifact( new 
ProjectArtifact( project ) ) );
+            }
+
+            if ( !isPomArtifact )
+            {
+                File file = artifact.getFile();
+
+                // Here, we have a temporary solution to MINSTALL-3 
(isDirectory() is true if it went through compile
+                // but not package). We are designing in a proper solution for 
Maven 2.1
+                if ( file != null && file.isFile() )
+                {
+                    org.eclipse.aether.artifact.Artifact mainArtifact = 
RepositoryUtils.toArtifact( artifact );
+                    request.addArtifact( mainArtifact );
+
+                    for ( Object metadata : artifact.getMetadataList() )
+                    {
+                        if ( metadata instanceof ProjectArtifactMetadata )
+                        {
+                            org.eclipse.aether.artifact.Artifact pomArtifact =
+                                    new SubArtifact( mainArtifact, "", "pom" );
+                            pomArtifact = pomArtifact.setFile( ( 
(ProjectArtifactMetadata) metadata ).getFile() );
+                            request.addArtifact( pomArtifact );
+                        }
+                    }
+                }
+                else if ( !project.getAttachedArtifacts().isEmpty() )
+                {
+                    throw new MojoExecutionException( "The packaging plugin 
for this project did not assign "
+                            + "a main file to the project but it has 
attachments. Change packaging to 'pom'." );
+                }
+                else
+                {
+                    throw new MojoExecutionException( "The packaging for this 
project did not assign "
+                            + "a file to the build artifact" );
+                }
+            }
+
+            for ( Artifact attached : project.getAttachedArtifacts() )
+            {
+                getLog().debug( "Attaching for install: " + attached.getId() );
+                request.addArtifact( RepositoryUtils.toArtifact( attached ) );
+            }
+
+            repositorySystem.install( session.getRepositorySession(), request 
);
+        }
+        catch ( InstallationException e )
+        {
+            throw new MojoExecutionException( e.getMessage(), e );
+        }
+    }
 }
diff --git 
a/src/main/java/org/apache/maven/plugins/install/InstallFileMojo.java 
b/src/main/java/org/apache/maven/plugins/install/InstallFileMojo.java
index 32865b2..4ec4136 100644
--- a/src/main/java/org/apache/maven/plugins/install/InstallFileMojo.java
+++ b/src/main/java/org/apache/maven/plugins/install/InstallFileMojo.java
@@ -21,12 +21,12 @@ package org.apache.maven.plugins.install;
 
 import java.io.File;
 import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.io.Reader;
 import java.io.Writer;
+import java.nio.file.Files;
 import java.util.Enumeration;
 import java.util.jar.JarEntry;
 import java.util.jar.JarFile;
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.handler.DefaultArtifactHandler;
+import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.Model;
 import org.apache.maven.model.Parent;
 import org.apache.maven.model.building.ModelBuildingException;
@@ -53,14 +54,15 @@ import org.apache.maven.project.ProjectBuilder;
 import org.apache.maven.project.ProjectBuildingException;
 import org.apache.maven.project.ProjectBuildingRequest;
 import org.apache.maven.project.artifact.ProjectArtifactMetadata;
-import org.apache.maven.shared.transfer.project.install.ProjectInstaller;
-import 
org.apache.maven.shared.transfer.project.install.ProjectInstallerRequest;
-import org.apache.maven.shared.utils.Os;
-import org.apache.maven.shared.utils.ReaderFactory;
-import org.apache.maven.shared.utils.WriterFactory;
-import org.apache.maven.shared.utils.io.IOUtil;
 import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.util.xml.XmlStreamReader;
+import org.codehaus.plexus.util.xml.XmlStreamWriter;
 import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
+import org.eclipse.aether.DefaultRepositoryCache;
+import org.eclipse.aether.DefaultRepositorySystemSession;
+import org.eclipse.aether.repository.LocalRepository;
+import org.eclipse.aether.repository.LocalRepositoryManager;
 
 /**
  * Installs a file in the local repository.
@@ -71,6 +73,7 @@ import 
org.codehaus.plexus.util.xml.pull.XmlPullParserException;
 public class InstallFileMojo
     extends AbstractInstallMojo
 {
+    private static final String LINE_SEP = System.getProperty( 
"line.separator" );
 
     /**
      * GroupId of the artifact to be installed. Retrieved from POM file if one 
is specified or extracted from
@@ -170,19 +173,12 @@ public class InstallFileMojo
     @Component
     private ProjectBuilder projectBuilder;
 
-    /**
-     * Used to install the project created.
-     */
-    @Component
-    private ProjectInstaller installer;
-
     /**
      * @see org.apache.maven.plugin.Mojo#execute()
      */
     public void execute()
         throws MojoExecutionException, MojoFailureException
     {
-
         if ( !file.exists() )
         {
             String message = "The specified file '" + file.getPath() + "' does 
not exist";
@@ -190,16 +186,24 @@ public class InstallFileMojo
             throw new MojoFailureException( message );
         }
 
-        ProjectBuildingRequest buildingRequest = 
session.getProjectBuildingRequest();
-
-        // 
----------------------------------------------------------------------
-        // Override the default localRepository variable
-        // 
----------------------------------------------------------------------
         if ( localRepositoryPath != null )
         {
-            buildingRequest = repositoryManager.setLocalRepositoryBasedir( 
buildingRequest, localRepositoryPath );
-
-            getLog().debug( "localRepoPath: " + 
repositoryManager.getLocalRepositoryBasedir( buildingRequest ) );
+            // "clone" session and replace localRepository
+            DefaultRepositorySystemSession newSession = new 
DefaultRepositorySystemSession(
+                    session.getRepositorySession() );
+            // Clear cache, since we're using a new local repository
+            newSession.setCache( new DefaultRepositoryCache() );
+            // keep same repositoryType
+            String contentType = 
newSession.getLocalRepository().getContentType();
+            if ( "enhanced".equals( contentType ) )
+            {
+                contentType = "default";
+            }
+            LocalRepositoryManager localRepositoryManager = 
repositorySystem.newLocalRepositoryManager( newSession,
+                    new LocalRepository( localRepositoryPath, contentType ) );
+            newSession.setLocalRepositoryManager( localRepositoryManager );
+            this.session = new MavenSession(
+                    session.getContainer(), newSession, session.getRequest(), 
session.getResult() );
         }
 
         File temporaryPom = null;
@@ -225,7 +229,7 @@ public class InstallFileMojo
         project.getArtifact().setArtifactHandler( ah );
         Artifact artifact = project.getArtifact();
 
-        if ( file.equals( getLocalRepoFile( buildingRequest, artifact ) ) )
+        if ( file.equals( getLocalRepoFile( artifact ) ) )
         {
             throw new MojoFailureException( "Cannot install artifact. "
                 + "Artifact is already in the local repository.\n\nFile in 
question is: " + file + "\n" );
@@ -262,7 +266,7 @@ public class InstallFileMojo
                 temporaryPom = generatePomFile();
                 ProjectArtifactMetadata pomMetadata = new 
ProjectArtifactMetadata( artifact, temporaryPom );
                 if ( Boolean.TRUE.equals( generatePom )
-                    || ( generatePom == null && !getLocalRepoFile( 
buildingRequest, pomMetadata ).exists() ) )
+                    || ( generatePom == null && !getLocalRepoFile( pomMetadata 
).exists() ) )
                 {
                     getLog().debug( "Installing generated POM" );
                     if ( classifier == null )
@@ -293,12 +297,7 @@ public class InstallFileMojo
 
         try
         {
-            // CHECKSTYLE_OFF: LineLength
-            ProjectInstallerRequest projectInstallerRequest =
-                new ProjectInstallerRequest().setProject( project );
-            // CHECKSTYLE_ON: LineLength
-
-            installer.install( buildingRequest, projectInstallerRequest );
+            installProject( project );
         }
         catch ( Exception e )
         {
@@ -344,7 +343,7 @@ public class InstallFileMojo
         {
             if ( e.getCause() instanceof ModelBuildingException )
             {
-                throw new MojoExecutionException( "The artifact information is 
not valid:" + Os.LINE_SEP
+                throw new MojoExecutionException( "The artifact information is 
not valid:" + LINE_SEP
                     + e.getCause().getMessage() );
             }
             throw new MojoFailureException( "Unable to create the project.", e 
);
@@ -387,7 +386,7 @@ public class InstallFileMojo
                         }
                         pomFile = File.createTempFile( base, ".pom" );
 
-                        pomOutputStream = new FileOutputStream( pomFile );
+                        pomOutputStream = Files.newOutputStream( 
pomFile.toPath() );
 
                         IOUtil.copy( pomInputStream, pomOutputStream );
 
@@ -448,7 +447,7 @@ public class InstallFileMojo
         Reader reader = null;
         try
         {
-            reader = ReaderFactory.newXmlReader( pomFile );
+            reader = new XmlStreamReader( pomFile );
             final Model model = new MavenXpp3Reader().read( reader );
             reader.close();
             reader = null;
@@ -545,7 +544,7 @@ public class InstallFileMojo
         {
             File pomFile = File.createTempFile( "mvninstall", ".pom" );
 
-            writer = WriterFactory.newXmlWriter( pomFile );
+            writer = new XmlStreamWriter( pomFile );
             new MavenXpp3Writer().write( writer, model );
             writer.close();
             writer = null;
diff --git a/src/main/java/org/apache/maven/plugins/install/InstallMojo.java 
b/src/main/java/org/apache/maven/plugins/install/InstallMojo.java
index b01c114..3e3463b 100644
--- a/src/main/java/org/apache/maven/plugins/install/InstallMojo.java
+++ b/src/main/java/org/apache/maven/plugins/install/InstallMojo.java
@@ -19,7 +19,6 @@ package org.apache.maven.plugins.install;
  * under the License.
  */
 
-import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
@@ -27,16 +26,10 @@ import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
-import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.LifecyclePhase;
 import org.apache.maven.plugins.annotations.Mojo;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.project.MavenProject;
-import org.apache.maven.project.ProjectBuildingRequest;
-import 
org.apache.maven.shared.transfer.artifact.install.ArtifactInstallerException;
-import org.apache.maven.shared.transfer.project.NoFileAssignedException;
-import org.apache.maven.shared.transfer.project.install.ProjectInstaller;
-import 
org.apache.maven.shared.transfer.project.install.ProjectInstallerRequest;
 
 /**
  * Installs the project's main artifact, and any other artifacts attached by 
other plugins in the lifecycle, to the
@@ -55,8 +48,8 @@ public class InstallMojo
      */
     private static final AtomicInteger READYPROJECTSCOUNTER = new 
AtomicInteger();
 
-    private static final List<ProjectInstallerRequest> INSTALLREQUESTS =
-        Collections.synchronizedList( new ArrayList<ProjectInstallerRequest>() 
);
+    private static final List<MavenProject> INSTALLREQUESTS =
+        Collections.synchronizedList( new ArrayList<MavenProject>() );
 
     /**
      */
@@ -85,9 +78,6 @@ public class InstallMojo
     @Parameter( property = "maven.install.skip", defaultValue = "false" )
     private boolean skip;
 
-    @Component
-    private ProjectInstaller installer;
-
     public void execute()
         throws MojoExecutionException, MojoFailureException
     {
@@ -98,18 +88,13 @@ public class InstallMojo
         }
         else
         {
-            // CHECKSTYLE_OFF: LineLength
-            ProjectInstallerRequest projectInstallerRequest =
-                new ProjectInstallerRequest().setProject( project );
-            // CHECKSTYLE_ON: LineLength
-
             if ( !installAtEnd )
             {
-                installProject( session.getProjectBuildingRequest(), 
projectInstallerRequest );
+                installProject( project );
             }
             else
             {
-                INSTALLREQUESTS.add( projectInstallerRequest );
+                INSTALLREQUESTS.add( project );
                 addedInstallRequest = true;
             }
         }
@@ -121,7 +106,7 @@ public class InstallMojo
             {
                 while ( !INSTALLREQUESTS.isEmpty() )
                 {
-                    installProject( session.getProjectBuildingRequest(), 
INSTALLREQUESTS.remove( 0 ) );
+                    installProject( INSTALLREQUESTS.remove( 0 ) );
                 }
             }
         }
@@ -132,28 +117,9 @@ public class InstallMojo
         }
     }
 
-    private void installProject( ProjectBuildingRequest pbr, 
ProjectInstallerRequest pir )
-        throws MojoFailureException, MojoExecutionException
-    {
-        try
-        {
-            installer.install( session.getProjectBuildingRequest(), pir );
-        }
-        catch ( IOException e )
-        {
-            throw new MojoFailureException( "IOException", e );
-        }
-        catch ( ArtifactInstallerException e )
-        {
-            throw new MojoExecutionException( "ArtifactInstallerException", e 
);
-        }
-        catch ( NoFileAssignedException e )
-        {
-            throw new MojoExecutionException( "NoFileAssignedException", e );
-        }
-
-    }
-
+    /**
+     * Visible for testing.
+     */
     public void setSkip( boolean skip )
     {
         this.skip = skip;
diff --git 
a/src/test/java/org/apache/maven/plugins/install/InstallFileMojoTest.java 
b/src/test/java/org/apache/maven/plugins/install/InstallFileMojoTest.java
index bf040b1..c135d95 100644
--- a/src/test/java/org/apache/maven/plugins/install/InstallFileMojoTest.java
+++ b/src/test/java/org/apache/maven/plugins/install/InstallFileMojoTest.java
@@ -28,8 +28,8 @@ import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
 import org.apache.maven.plugin.testing.AbstractMojoTestCase;
 import org.apache.maven.project.DefaultProjectBuildingRequest;
 import org.apache.maven.project.ProjectBuildingRequest;
-import org.apache.maven.shared.utils.ReaderFactory;
-import org.apache.maven.shared.utils.io.FileUtils;
+import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.xml.XmlStreamReader;
 import org.eclipse.aether.DefaultRepositorySystemSession;
 import org.eclipse.aether.internal.impl.EnhancedLocalRepositoryManagerFactory;
 import org.eclipse.aether.repository.LocalRepository;
@@ -159,7 +159,7 @@ public class InstallFileMojoTest
         File installedPom = new File( getBasedir(), LOCAL_REPO + groupId + "/" 
+ artifactId + "/" + version + "/" +
             artifactId + "-" + version + "." + "pom" );
 
-        try ( Reader reader = ReaderFactory.newXmlReader( installedPom ) ) {
+        try ( Reader reader = new XmlStreamReader( installedPom ) ) {
             Model model = new MavenXpp3Reader().read( reader );
 
             assertEquals( "4.0.0", model.getModelVersion() );
@@ -258,7 +258,7 @@ public class InstallFileMojoTest
         
         assertTrue( installedArtifact.exists() );
         
-        assertEquals( 5, FileUtils.getFiles( new File( LOCAL_REPO ), null, 
null ).size() );
+        assertEquals( FileUtils.getFiles( new File( LOCAL_REPO ), null, null 
).toString(), 5, FileUtils.getFiles( new File( LOCAL_REPO ), null, null 
).size() );
     }
 
     private void assignValuesForParameter( Object obj )
@@ -294,6 +294,7 @@ public class InstallFileMojoTest
         ProjectBuildingRequest buildingRequest = new 
DefaultProjectBuildingRequest();
         buildingRequest.setRepositorySession( repositorySession );
         when( session.getProjectBuildingRequest() ).thenReturn( 
buildingRequest );
+        when( session.getRepositorySession() ).thenReturn( repositorySession );
         return session;
     }
 }
diff --git 
a/src/test/java/org/apache/maven/plugins/install/InstallMojoTest.java 
b/src/test/java/org/apache/maven/plugins/install/InstallMojoTest.java
index ed73d2c..374872a 100644
--- a/src/test/java/org/apache/maven/plugins/install/InstallMojoTest.java
+++ b/src/test/java/org/apache/maven/plugins/install/InstallMojoTest.java
@@ -26,6 +26,7 @@ import java.io.File;
 import java.util.Collections;
 import java.util.List;
 
+import org.apache.maven.RepositoryUtils;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.metadata.ArtifactMetadata;
 import org.apache.maven.execution.MavenSession;
@@ -36,9 +37,9 @@ import 
org.apache.maven.plugins.install.stubs.InstallArtifactStub;
 import org.apache.maven.project.DefaultProjectBuildingRequest;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.ProjectBuildingRequest;
-import org.apache.maven.shared.transfer.repository.RepositoryManager;
-import org.apache.maven.shared.utils.io.FileUtils;
+import org.codehaus.plexus.util.FileUtils;
 import org.eclipse.aether.DefaultRepositorySystemSession;
+import org.eclipse.aether.artifact.DefaultArtifact;
 import org.eclipse.aether.internal.impl.EnhancedLocalRepositoryManagerFactory;
 import org.eclipse.aether.repository.LocalRepository;
 import org.eclipse.aether.repository.NoLocalRepositoryManagerException;
@@ -279,12 +280,7 @@ public class InstallMojoTest
             }
         }
 
-        RepositoryManager repoManager = (RepositoryManager) 
getVariableValueFromObject( mojo, "repositoryManager" );
-        
-        ProjectBuildingRequest pbr = mavenSession.getProjectBuildingRequest();
-
-        File pom = new File( repoManager.getLocalRepositoryBasedir( pbr ),
-                             repoManager.getPathForLocalMetadata( pbr, 
metadata ) );
+        File pom = new File( new File( LOCAL_REPO ), 
mavenSession.getRepositorySession().getLocalRepositoryManager().getPathForLocalArtifact(
 new DefaultArtifact( artifact.getGroupId(), artifact.getArtifactId(), "pom", 
artifact.getVersion() ) ) );
 
         assertTrue( pom.exists() );
 
@@ -357,6 +353,7 @@ public class InstallMojoTest
         ProjectBuildingRequest buildingRequest = new 
DefaultProjectBuildingRequest();
         buildingRequest.setRepositorySession( repositorySession );
         when( session.getProjectBuildingRequest() ).thenReturn( 
buildingRequest );
+        when( session.getRepositorySession() ).thenReturn( repositorySession );
         return session;
     }
     

Reply via email to