This is an automated email from the ASF dual-hosted git repository. slachiewicz pushed a commit to branch plexus1 in repository https://gitbox.apache.org/repos/asf/maven-wagon.git
commit b236846d389c509c76016c45ee32fc3d7fbc9efb Author: Sylwester Lachiewicz <[email protected]> AuthorDate: Wed Dec 31 18:24:41 2025 +0100 Refactor to use javax.inject annotations for dependency injection providers --- pom.xml | 17 ++++++++++++++--- wagon-provider-test/pom.xml | 9 +++++++-- .../java/org/apache/maven/wagon/WagonTestCase.java | 18 +++++++++++------- wagon-providers/pom.xml | 19 ------------------- wagon-providers/wagon-file/pom.xml | 13 +++++++++++-- .../apache/maven/wagon/providers/file/FileWagon.java | 5 +++-- wagon-providers/wagon-ftp/pom.xml | 8 ++++++-- .../maven/wagon/providers/ftp/FtpHttpWagon.java | 8 +++----- .../apache/maven/wagon/providers/ftp/FtpWagon.java | 14 +++----------- .../apache/maven/wagon/providers/ftp/FtpsWagon.java | 17 +++-------------- wagon-providers/wagon-http-lightweight/pom.xml | 8 ++++++-- .../wagon/providers/http/LightweightHttpWagon.java | 15 ++++++--------- .../http/LightweightHttpWagonAuthenticator.java | 4 +++- .../wagon/providers/http/LightweightHttpsWagon.java | 8 +++----- .../wagon/shared/http/AbstractHttpClientWagon.java | 1 - wagon-providers/wagon-http/pom.xml | 14 ++++++++++---- wagon-providers/wagon-scm/pom.xml | 14 ++++++++++++-- .../apache/maven/wagon/providers/scm/ScmWagon.java | 14 +++++--------- .../providers/scm/UserSafeGitExeScmProvider.java | 5 ++++- wagon-providers/wagon-ssh-common-test/pom.xml | 9 +++++++-- wagon-providers/wagon-ssh-common/pom.xml | 8 ++++++-- .../ssh/interactive/ConsoleInteractiveUserInfo.java | 11 +++++------ .../ssh/knownhost/AbstractKnownHostsProvider.java | 2 -- .../ssh/knownhost/FileKnownHostsProvider.java | 7 +++---- .../ssh/knownhost/NullKnownHostProvider.java | 7 +++---- .../ssh/knownhost/SingleKnownHostProvider.java | 7 +++---- wagon-providers/wagon-ssh-external/pom.xml | 4 ++-- .../ssh/external/ScpExternalCommandExecutor.java | 7 +++---- .../providers/ssh/external/ScpExternalWagon.java | 14 +++----------- wagon-providers/wagon-ssh/pom.xml | 17 +++++++++++++---- .../wagon/providers/ssh/jsch/AbstractJschWagon.java | 19 +++++++------------ .../wagon/providers/ssh/jsch/ScpCommandExecutor.java | 7 +++---- .../maven/wagon/providers/ssh/jsch/ScpWagon.java | 6 +++--- .../maven/wagon/providers/ssh/jsch/SftpWagon.java | 7 +++---- .../interactive/PrompterUIKeyboardInteractive.java | 10 +++++----- wagon-providers/wagon-webdav-jackrabbit/pom.xml | 8 ++++++-- .../maven/wagon/providers/webdav/WebDavWagon.java | 6 +++--- wagon-tcks/wagon-tck-http/pom.xml | 9 +++++++-- .../apache/maven/wagon/tck/http/HttpWagonTests.java | 17 +++++++++++++---- .../wagon/tck/http/WagonTestCaseConfigurator.java | 4 ++-- 40 files changed, 210 insertions(+), 187 deletions(-) diff --git a/pom.xml b/pom.xml index f174f91b..d5ae6ee1 100644 --- a/pom.xml +++ b/pom.xml @@ -199,9 +199,15 @@ under the License. <version>1.5.1</version> </dependency> <dependency> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-container-default</artifactId> - <version>2.1.1</version> + <groupId>org.eclipse.sisu</groupId> + <artifactId>org.eclipse.sisu.plexus</artifactId> + <version>0.9.0.M4</version> + </dependency> + <dependency> + <groupId>com.google.inject</groupId> + <artifactId>guice</artifactId> + <version>5.1.0</version> + <classifier>classes</classifier> </dependency> <!-- for slf4j --> <dependency> @@ -243,6 +249,11 @@ under the License. <artifactId>mockito-core</artifactId> <version>4.11.0</version> </dependency> + <dependency> + <groupId>javax.inject</groupId> + <artifactId>javax.inject</artifactId> + <version>1</version> + </dependency> </dependencies> </dependencyManagement> diff --git a/wagon-provider-test/pom.xml b/wagon-provider-test/pom.xml index 375a49af..be633f4f 100644 --- a/wagon-provider-test/pom.xml +++ b/wagon-provider-test/pom.xml @@ -36,10 +36,15 @@ under the License. <artifactId>wagon-provider-api</artifactId> </dependency> <dependency> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-container-default</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>org.eclipse.sisu.plexus</artifactId> <scope>compile</scope> </dependency> + <dependency> + <groupId>com.google.inject</groupId> + <artifactId>guice</artifactId> + <classifier>classes</classifier> + </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-utils</artifactId> diff --git a/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java b/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java index 9b3e513e..0840f1cb 100644 --- a/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java +++ b/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java @@ -37,7 +37,10 @@ import org.apache.maven.wagon.repository.Repository; import org.apache.maven.wagon.repository.RepositoryPermissions; import org.apache.maven.wagon.resource.Resource; +import org.codehaus.plexus.ContainerConfiguration; +import org.codehaus.plexus.PlexusConstants; import org.codehaus.plexus.PlexusTestCase; +import org.codehaus.plexus.context.Context; import org.codehaus.plexus.util.FileUtils; import org.junit.Assume; import org.mockito.invocation.InvocationOnMock; @@ -168,8 +171,13 @@ protected void setupRepositories() throws Exception { } } - protected void customizeContext() throws Exception { - getContainer().addContextValue("test.repository", localRepositoryPath); + @Override + protected void customizeContext(Context context) { + context.put("test.repository", localRepositoryPath); + } + + protected void customizeContainerConfiguration(ContainerConfiguration configuration) { + configuration.setClassPathScanning(PlexusConstants.SCANNING_INDEX).setAutoWiring(true); } protected void setupWagonTestingFixtures() throws Exception {} @@ -189,14 +197,10 @@ protected RepositoryPermissions getPermissions() { } protected Wagon getWagon() throws Exception { - Wagon wagon = (Wagon) lookup(Wagon.ROLE, getProtocol()); - + Wagon wagon = lookup(Wagon.class, getProtocol()); Debug debug = new Debug(); - wagon.addSessionListener(debug); - wagon.addTransferListener(debug); - return wagon; } diff --git a/wagon-providers/pom.xml b/wagon-providers/pom.xml index 2997c50e..61f62373 100644 --- a/wagon-providers/pom.xml +++ b/wagon-providers/pom.xml @@ -72,25 +72,6 @@ under the License. </dependencies> <build> - <pluginManagement> - <plugins> - <!-- required due to Javadoc based Plexus components --> - <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> - <version>2.2.0</version> - <executions> - <execution> - <id>generate</id> - <goals> - <goal>generate-metadata</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </pluginManagement> - <plugins> <plugin> <groupId>org.eclipse.sisu</groupId> diff --git a/wagon-providers/wagon-file/pom.xml b/wagon-providers/wagon-file/pom.xml index c1b322b3..2bb264f9 100644 --- a/wagon-providers/wagon-file/pom.xml +++ b/wagon-providers/wagon-file/pom.xml @@ -31,10 +31,19 @@ under the License. <description>Wagon provider that gets and puts artifacts using file system protocol</description> <dependencies> + <dependency> + <groupId>javax.inject</groupId> + <artifactId>javax.inject</artifactId> + </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-utils</artifactId> </dependency> + <dependency> + <groupId>com.google.inject</groupId> + <artifactId>guice</artifactId> + <classifier>classes</classifier> + </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> @@ -45,8 +54,8 @@ under the License. <build> <plugins> <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> </plugin> </plugins> </build> diff --git a/wagon-providers/wagon-file/src/main/java/org/apache/maven/wagon/providers/file/FileWagon.java b/wagon-providers/wagon-file/src/main/java/org/apache/maven/wagon/providers/file/FileWagon.java index 778f28d4..d54fa36f 100644 --- a/wagon-providers/wagon-file/src/main/java/org/apache/maven/wagon/providers/file/FileWagon.java +++ b/wagon-providers/wagon-file/src/main/java/org/apache/maven/wagon/providers/file/FileWagon.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.file; +import javax.inject.Named; + import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; @@ -44,9 +46,8 @@ * Wagon Provider for Local File System * * @author <a href="[email protected]">Michal Maczka</a> - * - * @plexus.component role="org.apache.maven.wagon.Wagon" role-hint="file" instantiation-strategy="per-lookup" */ +@Named("file") public class FileWagon extends StreamWagon { public void fillInputData(InputData inputData) throws TransferFailedException, ResourceDoesNotExistException { if (getRepository().getBasedir() == null) { diff --git a/wagon-providers/wagon-ftp/pom.xml b/wagon-providers/wagon-ftp/pom.xml index e74352ab..4f056b60 100644 --- a/wagon-providers/wagon-ftp/pom.xml +++ b/wagon-providers/wagon-ftp/pom.xml @@ -31,6 +31,10 @@ under the License. <description>Wagon provider that gets and puts artifacts from and to remote server using FTP protocol</description> <dependencies> + <dependency> + <groupId>javax.inject</groupId> + <artifactId>javax.inject</artifactId> + </dependency> <dependency> <groupId>commons-net</groupId> <artifactId>commons-net</artifactId> @@ -61,8 +65,8 @@ under the License. <build> <plugins> <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> </plugin> </plugins> </build> diff --git a/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpHttpWagon.java b/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpHttpWagon.java index e2067fac..f2b36a99 100644 --- a/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpHttpWagon.java +++ b/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpHttpWagon.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.ftp; +import javax.inject.Named; + import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPHTTPClient; import org.apache.maven.wagon.proxy.ProxyInfo; @@ -26,12 +28,8 @@ /** * FtpHttpWagon - * - * - * @plexus.component role="org.apache.maven.wagon.Wagon" - * role-hint="ftph" - * instantiation-strategy="per-lookup" */ +@Named("ftph") public class FtpHttpWagon extends FtpWagon { private static final Logger LOG = LoggerFactory.getLogger(FtpHttpWagon.class); diff --git a/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java b/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java index 7fd651d4..1db01184 100644 --- a/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java +++ b/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpWagon.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.ftp; +import javax.inject.Named; + import java.io.File; import java.io.FileInputStream; import java.io.IOException; @@ -50,23 +52,13 @@ /** * FtpWagon - * - * - * @plexus.component role="org.apache.maven.wagon.Wagon" - * role-hint="ftp" - * instantiation-strategy="per-lookup" */ +@Named("ftp") public class FtpWagon extends StreamWagon { private FTPClient ftp; - /** - * @plexus.configuration default-value="true" - */ private boolean passiveMode = true; - /** - * @plexus.configuration default-value="ISO-8859-1" - */ private String controlEncoding = FTP.DEFAULT_CONTROL_ENCODING; public boolean isPassiveMode() { diff --git a/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpsWagon.java b/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpsWagon.java index cb878518..f0f273cb 100644 --- a/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpsWagon.java +++ b/wagon-providers/wagon-ftp/src/main/java/org/apache/maven/wagon/providers/ftp/FtpsWagon.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.ftp; +import javax.inject.Named; + import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPSClient; import org.slf4j.Logger; @@ -25,28 +27,15 @@ /** * FtpsWagon - * - * - * @plexus.component role="org.apache.maven.wagon.Wagon" - * role-hint="ftps" - * instantiation-strategy="per-lookup" */ +@Named("ftps") public class FtpsWagon extends FtpWagon { private static final Logger LOG = LoggerFactory.getLogger(FtpsWagon.class); - /** - * @plexus.configuration default-value="TLS" - */ private String securityProtocol = "TLS"; - /** - * @plexus.configuration default-value="false" - */ private boolean implicit = false; - /** - * @plexus.configuration default-value="true" - */ private boolean endpointChecking = true; @Override diff --git a/wagon-providers/wagon-http-lightweight/pom.xml b/wagon-providers/wagon-http-lightweight/pom.xml index dcd0a6d1..a91945ee 100644 --- a/wagon-providers/wagon-http-lightweight/pom.xml +++ b/wagon-providers/wagon-http-lightweight/pom.xml @@ -31,6 +31,10 @@ under the License. <description>Wagon provider that gets and puts artifacts through http using standard Java library</description> <dependencies> + <dependency> + <groupId>javax.inject</groupId> + <artifactId>javax.inject</artifactId> + </dependency> <dependency> <groupId>${project.groupId}</groupId> <artifactId>wagon-http-shared</artifactId> @@ -72,8 +76,8 @@ under the License. <build> <plugins> <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> </plugin> </plugins> </build> diff --git a/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagon.java b/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagon.java index 67e298bd..5af25905 100644 --- a/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagon.java +++ b/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagon.java @@ -18,6 +18,9 @@ */ package org.apache.maven.wagon.providers.http; +import javax.inject.Inject; +import javax.inject.Named; + import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; @@ -62,9 +65,9 @@ * LightweightHttpWagon, using JDK's HttpURLConnection. * * @author <a href="[email protected]">Michal Maczka</a> - * @plexus.component role="org.apache.maven.wagon.Wagon" role-hint="http" instantiation-strategy="per-lookup" * @see HttpURLConnection */ +@Named("http") public class LightweightHttpWagon extends StreamWagon { private boolean preemptiveAuthentication; @@ -79,19 +82,13 @@ public class LightweightHttpWagon extends StreamWagon { /** * Whether to use any proxy cache or not. - * - * @plexus.configuration default="false" */ private boolean useCache; - /** - * @plexus.configuration - */ private Properties httpHeaders; - /** - * @plexus.requirement - */ + @Inject + @Named("org.apache.maven.wagon.providers.http.LightweightHttpWagonAuthenticator") private volatile LightweightHttpWagonAuthenticator authenticator; /** diff --git a/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagonAuthenticator.java b/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagonAuthenticator.java index 52609041..e06e388e 100644 --- a/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagonAuthenticator.java +++ b/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagonAuthenticator.java @@ -18,13 +18,15 @@ */ package org.apache.maven.wagon.providers.http; +import javax.inject.Named; + import java.net.Authenticator; import java.net.PasswordAuthentication; /** * @author <a href="mailto:[email protected]">Nicolas De loof</a> - * @plexus.component role="org.apache.maven.wagon.providers.http.LightweightHttpWagonAuthenticator" */ +@Named public class LightweightHttpWagonAuthenticator extends Authenticator { ThreadLocal<LightweightHttpWagon> localWagon = new ThreadLocal<>(); diff --git a/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpsWagon.java b/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpsWagon.java index 4661b161..3c93b130 100644 --- a/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpsWagon.java +++ b/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpsWagon.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.http; +import javax.inject.Named; + import org.apache.maven.wagon.ConnectionException; import org.apache.maven.wagon.authentication.AuthenticationException; import org.apache.maven.wagon.proxy.ProxyInfo; @@ -26,12 +28,8 @@ * LightweightHttpsWagon, using JDK's HttpURLConnection. * * @author <a href="mailto:[email protected]">Joakim Erdfelt</a> - * - * - * @plexus.component role="org.apache.maven.wagon.Wagon" - * role-hint="https" - * instantiation-strategy="per-lookup" */ +@Named("https") public class LightweightHttpsWagon extends LightweightHttpWagon { private String previousHttpsProxyHost; diff --git a/wagon-providers/wagon-http-shared/src/main/java/org/apache/maven/wagon/shared/http/AbstractHttpClientWagon.java b/wagon-providers/wagon-http-shared/src/main/java/org/apache/maven/wagon/shared/http/AbstractHttpClientWagon.java index 92dc157b..5069f9e5 100644 --- a/wagon-providers/wagon-http-shared/src/main/java/org/apache/maven/wagon/shared/http/AbstractHttpClientWagon.java +++ b/wagon-providers/wagon-http-shared/src/main/java/org/apache/maven/wagon/shared/http/AbstractHttpClientWagon.java @@ -516,7 +516,6 @@ private static CloseableHttpClient createClient() { private Closeable closeable; /** - * @plexus.configuration * @deprecated Use httpConfiguration instead. */ private Properties httpHeaders; diff --git a/wagon-providers/wagon-http/pom.xml b/wagon-providers/wagon-http/pom.xml index f7c38954..141de2ad 100644 --- a/wagon-providers/wagon-http/pom.xml +++ b/wagon-providers/wagon-http/pom.xml @@ -85,8 +85,14 @@ under the License. <scope>test</scope> </dependency> <dependency> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-container-default</artifactId> + <groupId>com.google.inject</groupId> + <artifactId>guice</artifactId> + <classifier>classes</classifier> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.eclipse.sisu</groupId> + <artifactId>org.eclipse.sisu.plexus</artifactId> <scope>test</scope> </dependency> @@ -103,8 +109,8 @@ under the License. <build> <plugins> <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> diff --git a/wagon-providers/wagon-scm/pom.xml b/wagon-providers/wagon-scm/pom.xml index 473e9d09..70291b22 100644 --- a/wagon-providers/wagon-scm/pom.xml +++ b/wagon-providers/wagon-scm/pom.xml @@ -35,6 +35,10 @@ under the License. </properties> <dependencies> + <dependency> + <groupId>javax.inject</groupId> + <artifactId>javax.inject</artifactId> + </dependency> <dependency> <groupId>org.apache.maven.scm</groupId> <artifactId>maven-scm-api</artifactId> @@ -45,6 +49,12 @@ under the License. <artifactId>maven-scm-manager-plexus</artifactId> <version>${mavenScmVersion}</version> <scope>runtime</scope> + <exclusions> + <exclusion> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </exclusion> + </exclusions> </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> @@ -84,8 +94,8 @@ under the License. <build> <plugins> <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> diff --git a/wagon-providers/wagon-scm/src/main/java/org/apache/maven/wagon/providers/scm/ScmWagon.java b/wagon-providers/wagon-scm/src/main/java/org/apache/maven/wagon/providers/scm/ScmWagon.java index 5883ac05..afa0f068 100644 --- a/wagon-providers/wagon-scm/src/main/java/org/apache/maven/wagon/providers/scm/ScmWagon.java +++ b/wagon-providers/wagon-scm/src/main/java/org/apache/maven/wagon/providers/scm/ScmWagon.java @@ -18,6 +18,9 @@ */ package org.apache.maven.wagon.providers.scm; +import javax.inject.Inject; +import javax.inject.Named; + import java.io.File; import java.io.IOException; import java.text.DecimalFormat; @@ -69,26 +72,19 @@ * @author <a href="[email protected]">Emmanuel Venisse</a> * @author <a href="[email protected]">Carlos Sanchez</a> * @author Jason van Zyl - * - * @plexus.component role="org.apache.maven.wagon.Wagon" role-hint="scm" instantiation-strategy="per-lookup" */ +@Named("scm") public class ScmWagon extends AbstractWagon { - /** - * @plexus.requirement - */ + @Inject private volatile ScmManager scmManager; /** * The SCM version, if any. - * - * @parameter */ private String scmVersion; /** * The SCM version type, if any. Defaults to "branch". - * - * @parameter */ private String scmVersionType; diff --git a/wagon-providers/wagon-scm/src/test/java/org/apache/maven/wagon/providers/scm/UserSafeGitExeScmProvider.java b/wagon-providers/wagon-scm/src/test/java/org/apache/maven/wagon/providers/scm/UserSafeGitExeScmProvider.java index fe4114a7..37af63e3 100644 --- a/wagon-providers/wagon-scm/src/test/java/org/apache/maven/wagon/providers/scm/UserSafeGitExeScmProvider.java +++ b/wagon-providers/wagon-scm/src/test/java/org/apache/maven/wagon/providers/scm/UserSafeGitExeScmProvider.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.scm; +import javax.inject.Named; + import org.apache.maven.scm.ScmException; import org.apache.maven.scm.ScmFileSet; import org.apache.maven.scm.ScmVersion; @@ -27,8 +29,9 @@ import org.apache.maven.scm.repository.ScmRepository; /** - * @plexus.component role="org.apache.maven.scm.provider.ScmProvider" role-hint="git" + * Test utility provider */ +@Named("git") public class UserSafeGitExeScmProvider extends GitExeScmProvider { @Override diff --git a/wagon-providers/wagon-ssh-common-test/pom.xml b/wagon-providers/wagon-ssh-common-test/pom.xml index 19558ec8..3ddb8e74 100644 --- a/wagon-providers/wagon-ssh-common-test/pom.xml +++ b/wagon-providers/wagon-ssh-common-test/pom.xml @@ -34,10 +34,15 @@ under the License. </properties> <dependencies> <dependency> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-container-default</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>org.eclipse.sisu.plexus</artifactId> <scope>compile</scope> </dependency> + <dependency> + <groupId>com.google.inject</groupId> + <artifactId>guice</artifactId> + <classifier>classes</classifier> + </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> diff --git a/wagon-providers/wagon-ssh-common/pom.xml b/wagon-providers/wagon-ssh-common/pom.xml index dd8bc740..1e8484ee 100644 --- a/wagon-providers/wagon-ssh-common/pom.xml +++ b/wagon-providers/wagon-ssh-common/pom.xml @@ -30,6 +30,10 @@ under the License. <name>Apache Maven Wagon :: Providers :: SSH Common Library</name> <dependencies> + <dependency> + <groupId>javax.inject</groupId> + <artifactId>javax.inject</artifactId> + </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-utils</artifactId> @@ -48,8 +52,8 @@ under the License. <build> <plugins> <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> </plugin> </plugins> </build> diff --git a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/interactive/ConsoleInteractiveUserInfo.java b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/interactive/ConsoleInteractiveUserInfo.java index ee1f3a99..54cf766e 100644 --- a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/interactive/ConsoleInteractiveUserInfo.java +++ b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/interactive/ConsoleInteractiveUserInfo.java @@ -18,6 +18,9 @@ */ package org.apache.maven.wagon.providers.ssh.interactive; +import javax.inject.Inject; +import javax.inject.Named; + import java.util.Arrays; import org.codehaus.plexus.components.interactivity.Prompter; @@ -28,14 +31,10 @@ * * @author Juan F. Codagnone * @since Sep 12, 2005 - * - * @plexus.component role="org.apache.maven.wagon.providers.ssh.interactive.InteractiveUserInfo" - * instantiation-strategy="per-lookup" */ +@Named public class ConsoleInteractiveUserInfo implements InteractiveUserInfo { - /** - * @plexus.requirement role-hint="default" - */ + @Inject private volatile Prompter prompter; public ConsoleInteractiveUserInfo() {} diff --git a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java index 00e5a017..148f552c 100644 --- a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java +++ b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java @@ -31,8 +31,6 @@ public abstract class AbstractKnownHostsProvider implements KnownHostsProvider { /** * Valid values are ask, yes, no. - * - * @plexus.configuration default-value="ask" */ private String hostKeyChecking = "ask"; diff --git a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java index 3c757814..99e0e14d 100644 --- a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java +++ b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.ssh.knownhost; +import javax.inject.Named; + import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; @@ -32,11 +34,8 @@ * * @author Juan F. Codagnone * @since Sep 12, 2005 - * - * @plexus.component role="org.apache.maven.wagon.providers.ssh.knownhost.KnownHostsProvider" - * role-hint="file" - * instantiation-strategy="per-lookup" */ +@Named("file") public class FileKnownHostsProvider extends StreamKnownHostsProvider { private final File file; diff --git a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/NullKnownHostProvider.java b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/NullKnownHostProvider.java index 46248510..899798d1 100644 --- a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/NullKnownHostProvider.java +++ b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/NullKnownHostProvider.java @@ -18,14 +18,13 @@ */ package org.apache.maven.wagon.providers.ssh.knownhost; +import javax.inject.Named; + /** * Dummy <code>KnownHostsProvider</code> * * @author Juan F. Codagnone * @since Sep 12, 2005 - * - * @plexus.component role="org.apache.maven.wagon.providers.ssh.knownhost.KnownHostsProvider" - * role-hint="null" - * instantiation-strategy="per-lookup" */ +@Named("null") public final class NullKnownHostProvider extends AbstractKnownHostsProvider {} diff --git a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/SingleKnownHostProvider.java b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/SingleKnownHostProvider.java index 229b4e05..572bd090 100644 --- a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/SingleKnownHostProvider.java +++ b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/SingleKnownHostProvider.java @@ -18,16 +18,15 @@ */ package org.apache.maven.wagon.providers.ssh.knownhost; +import javax.inject.Named; + /** * Simple <code>KnownHostsProvider</code> with known wired values * - * @plexus.component role="org.apache.maven.wagon.providers.ssh.knownhost.KnownHostsProvider" - * role-hint="single" - * instantiation-strategy="per-lookup" - * * @author Juan F. Codagnone * @since Sep 12, 2005 */ +@Named("single") public class SingleKnownHostProvider extends AbstractKnownHostsProvider { public SingleKnownHostProvider() {} diff --git a/wagon-providers/wagon-ssh-external/pom.xml b/wagon-providers/wagon-ssh-external/pom.xml index 7164504b..9e059606 100644 --- a/wagon-providers/wagon-ssh-external/pom.xml +++ b/wagon-providers/wagon-ssh-external/pom.xml @@ -63,8 +63,8 @@ under the License. <build> <plugins> <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> </plugin> </plugins> </build> diff --git a/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalCommandExecutor.java b/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalCommandExecutor.java index 0d3567e5..655357cb 100644 --- a/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalCommandExecutor.java +++ b/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalCommandExecutor.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.ssh.external; +import javax.inject.Named; + /** * ScpExternalCommandExecutor - bridge class for plexus:descriptor * @@ -25,11 +27,8 @@ * * * @todo is this even needed anymore? - * - * @plexus.component role="org.apache.maven.wagon.CommandExecutor" - * role-hint="scpexe" - * instantiation-strategy="per-lookup" */ +@Named("scpexe") public class ScpExternalCommandExecutor extends ScpExternalWagon { public ScpExternalCommandExecutor() { diff --git a/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagon.java b/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagon.java index 0ab0cd29..5228a6dc 100644 --- a/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagon.java +++ b/wagon-providers/wagon-ssh-external/src/main/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagon.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.ssh.external; +import javax.inject.Named; + import java.io.File; import java.io.FileNotFoundException; import java.util.List; @@ -50,36 +52,26 @@ * * @author <a href="mailto:[email protected]">Brett Porter</a> * @todo [BP] add compression flag - * @plexus.component role="org.apache.maven.wagon.Wagon" - * role-hint="scpexe" - * instantiation-strategy="per-lookup" */ +@Named("scpexe") public class ScpExternalWagon extends AbstractWagon implements CommandExecutor { /** * The external SCP command to use - default is <code>scp</code>. - * - * @component.configuration default="scp" */ private String scpExecutable = "scp"; /** * The external SSH command to use - default is <code>ssh</code>. - * - * @component.configuration default="ssh" */ private String sshExecutable = "ssh"; /** * Arguments to pass to the SCP command. - * - * @component.configuration */ private String scpArgs; /** * Arguments to pass to the SSH command. - * - * @component.configuration */ private String sshArgs; diff --git a/wagon-providers/wagon-ssh/pom.xml b/wagon-providers/wagon-ssh/pom.xml index 717d2934..47568b68 100644 --- a/wagon-providers/wagon-ssh/pom.xml +++ b/wagon-providers/wagon-ssh/pom.xml @@ -34,6 +34,10 @@ under the License. </properties> <dependencies> + <dependency> + <groupId>javax.inject</groupId> + <artifactId>javax.inject</artifactId> + </dependency> <dependency> <groupId>com.jcraft</groupId> <artifactId>jsch</artifactId> @@ -82,8 +86,13 @@ under the License. <scope>test</scope> </dependency> <dependency> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-container-default</artifactId> + <groupId>com.google.inject</groupId> + <artifactId>guice</artifactId> + <classifier>classes</classifier> + </dependency> + <dependency> + <groupId>org.eclipse.sisu</groupId> + <artifactId>org.eclipse.sisu.plexus</artifactId> <scope>test</scope> </dependency> <dependency> @@ -96,8 +105,8 @@ under the License. <build> <plugins> <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> </plugin> </plugins> </build> diff --git a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java index 825e1d75..a7320923 100644 --- a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java +++ b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java @@ -18,6 +18,9 @@ */ package org.apache.maven.wagon.providers.ssh.jsch; +import javax.inject.Inject; +import javax.inject.Named; + import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.File; @@ -80,24 +83,16 @@ public abstract class AbstractJschWagon extends StreamWagon implements SshWagon, private String strictHostKeyChecking; - /** - * @plexus.requirement role-hint="file" - */ + @Inject + @Named("file") private volatile KnownHostsProvider knownHostsProvider; - /** - * @plexus.requirement - */ + @Inject private volatile InteractiveUserInfo interactiveUserInfo; - /** - * @plexus.configuration - */ private volatile String preferredAuthentications; - /** - * @plexus.requirement - */ + @Inject private volatile UIKeyboardInteractive uIKeyboardInteractive; private static final int SOCKS5_PROXY_PORT = 1080; diff --git a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/ScpCommandExecutor.java b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/ScpCommandExecutor.java index f0757e7a..f0e84bde 100644 --- a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/ScpCommandExecutor.java +++ b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/ScpCommandExecutor.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.ssh.jsch; +import javax.inject.Named; + /** * ScpCommandExecutor - bridge class for plexus:descriptor * @@ -25,11 +27,8 @@ * * * @todo is this even needed anymore? - * - * @plexus.component role="org.apache.maven.wagon.CommandExecutor" - * role-hint="scp" - * instantiation-strategy="per-lookup" */ +@Named("scp") public class ScpCommandExecutor extends ScpWagon { public ScpCommandExecutor() { super(); diff --git a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagon.java b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagon.java index 978f225e..4d824f59 100644 --- a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagon.java +++ b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagon.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.ssh.jsch; +import javax.inject.Named; + import java.io.EOFException; import java.io.IOException; import java.io.InputStream; @@ -47,10 +49,8 @@ * * * @todo [BP] add compression flag - * @plexus.component role="org.apache.maven.wagon.Wagon" - * role-hint="scp" - * instantiation-strategy="per-lookup" */ +@Named("scp") public class ScpWagon extends AbstractJschWagon { private static final char COPY_START_CHAR = 'C'; diff --git a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/SftpWagon.java b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/SftpWagon.java index 71048ed1..93e44542 100644 --- a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/SftpWagon.java +++ b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/SftpWagon.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.ssh.jsch; +import javax.inject.Named; + import java.io.File; import java.io.InputStream; import java.io.OutputStream; @@ -47,11 +49,8 @@ * * @todo [BP] add compression flag * @todo see if SftpProgressMonitor allows us to do streaming (without it, we can't do checksums as the input stream is lost) - * - * @plexus.component role="org.apache.maven.wagon.Wagon" - * role-hint="sftp" - * instantiation-strategy="per-lookup" */ +@Named("sftp") public class SftpWagon extends AbstractJschWagon { private static final String SFTP_CHANNEL = "sftp"; diff --git a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/interactive/PrompterUIKeyboardInteractive.java b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/interactive/PrompterUIKeyboardInteractive.java index 5bdd2e20..b4023234 100644 --- a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/interactive/PrompterUIKeyboardInteractive.java +++ b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/interactive/PrompterUIKeyboardInteractive.java @@ -18,6 +18,9 @@ */ package org.apache.maven.wagon.providers.ssh.jsch.interactive; +import javax.inject.Inject; +import javax.inject.Named; + import com.jcraft.jsch.UIKeyboardInteractive; import org.codehaus.plexus.components.interactivity.Prompter; import org.codehaus.plexus.components.interactivity.PrompterException; @@ -31,13 +34,10 @@ * * @author <a href="mailto:juam at users.sourceforge.net">Juan F. Codagnone</a> * @since Sep 22, 2005 - * - * @plexus.component role="com.jcraft.jsch.UIKeyboardInteractive" */ +@Named public class PrompterUIKeyboardInteractive implements UIKeyboardInteractive { - /** - * @plexus.requirement role-hint="default" - */ + @Inject private volatile Prompter prompter; public PrompterUIKeyboardInteractive() {} diff --git a/wagon-providers/wagon-webdav-jackrabbit/pom.xml b/wagon-providers/wagon-webdav-jackrabbit/pom.xml index 1cafcf92..5607ca25 100644 --- a/wagon-providers/wagon-webdav-jackrabbit/pom.xml +++ b/wagon-providers/wagon-webdav-jackrabbit/pom.xml @@ -42,6 +42,10 @@ under the License. </contributors> <dependencies> + <dependency> + <groupId>javax.inject</groupId> + <artifactId>javax.inject</artifactId> + </dependency> <dependency> <!-- Workaround for QDOX-148, see also MNG-3686 --> <groupId>${project.groupId}</groupId> @@ -119,8 +123,8 @@ under the License. <build> <plugins> <plugin> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-component-metadata</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>sisu-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> diff --git a/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java index 97a57912..4be3caa6 100644 --- a/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java +++ b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java @@ -18,6 +18,8 @@ */ package org.apache.maven.wagon.providers.webdav; +import javax.inject.Named; + import java.io.File; import java.io.IOException; import java.net.URLDecoder; @@ -59,10 +61,8 @@ * @author <a href="mailto:[email protected]">Joakim Erdfelt</a> * @author <a href="mailto:[email protected]">Carlos Sanchez</a> * @author <a href="mailto:[email protected]">James William Dumay</a> - * @plexus.component role="org.apache.maven.wagon.Wagon" - * role-hint="dav" - * instantiation-strategy="per-lookup" */ +@Named("dav") public class WebDavWagon extends AbstractHttpClientWagon { protected static final String CONTINUE_ON_FAILURE_PROPERTY = "wagon.webdav.continueOnFailure"; diff --git a/wagon-tcks/wagon-tck-http/pom.xml b/wagon-tcks/wagon-tck-http/pom.xml index 3cfa8138..0f3d2e06 100644 --- a/wagon-tcks/wagon-tck-http/pom.xml +++ b/wagon-tcks/wagon-tck-http/pom.xml @@ -33,10 +33,15 @@ under the License. <dependencies> <dependency> - <groupId>org.codehaus.plexus</groupId> - <artifactId>plexus-container-default</artifactId> + <groupId>org.eclipse.sisu</groupId> + <artifactId>org.eclipse.sisu.plexus</artifactId> <scope>compile</scope> </dependency> + <dependency> + <groupId>com.google.inject</groupId> + <artifactId>guice</artifactId> + <classifier>classes</classifier> + </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-classworlds</artifactId> diff --git a/wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/HttpWagonTests.java b/wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/HttpWagonTests.java index 8fcbd25c..9ad1b06f 100644 --- a/wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/HttpWagonTests.java +++ b/wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/HttpWagonTests.java @@ -30,8 +30,11 @@ import org.apache.maven.wagon.proxy.ProxyInfo; import org.apache.maven.wagon.repository.Repository; import org.apache.maven.wagon.tck.http.fixture.ServerFixture; +import org.codehaus.plexus.ContainerConfiguration; +import org.codehaus.plexus.DefaultContainerConfiguration; import org.codehaus.plexus.DefaultPlexusContainer; import org.codehaus.plexus.PlexusContainer; +import org.codehaus.plexus.classworlds.ClassWorld; import org.codehaus.plexus.component.configurator.ComponentConfigurationException; import org.codehaus.plexus.component.repository.exception.ComponentLifecycleException; import org.codehaus.plexus.util.FileUtils; @@ -85,11 +88,17 @@ public static void beforeAll() throws Exception { System.setProperty("javax.net.ssl.trustStore", keystore.getAbsolutePath()); System.setProperty("javax.net.ssl.trustStorePassword", ServerFixture.SERVER_SSL_KEYSTORE_PASSWORD); - container = new DefaultPlexusContainer(); - // container.initialize(); - // container.start(); + ClassWorld classWorld = + new ClassWorld("plexus.core", Thread.currentThread().getContextClassLoader()); + ContainerConfiguration configuration = new DefaultContainerConfiguration() + .setClassWorld(classWorld) + .setName("test") + .setAutoWiring(true) + .setClassPathScanning(org.codehaus.plexus.PlexusConstants.SCANNING_INDEX); - configurator = (WagonTestCaseConfigurator) container.lookup(WagonTestCaseConfigurator.class.getName()); + container = new DefaultPlexusContainer(configuration); + + configurator = container.lookup(WagonTestCaseConfigurator.class); } @After diff --git a/wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/WagonTestCaseConfigurator.java b/wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/WagonTestCaseConfigurator.java index 190c9ba7..6799cca6 100644 --- a/wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/WagonTestCaseConfigurator.java +++ b/wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/WagonTestCaseConfigurator.java @@ -46,14 +46,14 @@ public class WagonTestCaseConfigurator implements Contextualizable { private String wagonHint; - private static Logger logger = LoggerFactory.getLogger(WagonTestCaseConfigurator.class); + private static final Logger LOGGER = LoggerFactory.getLogger(WagonTestCaseConfigurator.class); public boolean isSupported(final String useCaseId) { if (useCaseConfigs != null) { PlexusConfiguration config = useCaseConfigs.getChild(useCaseId, false); if (config != null && config.getChild(UNSUPPORTED_ELEMENT, false) != null) { - logger.info("Test case '" + useCaseId + "' is marked as unsupported by this wagon."); + LOGGER.info("Test case '" + useCaseId + "' is marked as unsupported by this wagon."); return false; } }
