diff --git a/maven-settings-builder/pom.xml b/maven-settings-builder/pom.xml index 381f5b197ba..fb676ca70ea 100644 --- a/maven-settings-builder/pom.xml +++ b/maven-settings-builder/pom.xml @@ -46,8 +46,8 @@ under the License. - org.codehaus.plexus - plexus-utils + javax.inject + javax.inject org.codehaus.plexus @@ -55,7 +55,7 @@ under the License. org.codehaus.plexus - plexus-component-annotations + plexus-utils org.apache.maven @@ -70,8 +70,8 @@ under the License. - org.codehaus.plexus - plexus-component-metadata + org.eclipse.sisu + sisu-maven-plugin diff --git a/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilder.java b/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilder.java index 3cdae7d04f3..675ea591625 100644 --- a/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilder.java +++ b/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilder.java @@ -27,6 +27,10 @@ import java.util.List; import java.util.Map; +import javax.inject.Inject; +import javax.inject.Named; +import javax.inject.Singleton; + import org.apache.maven.building.FileSource; import org.apache.maven.building.Source; import org.apache.maven.settings.Settings; @@ -36,8 +40,6 @@ import org.apache.maven.settings.io.SettingsWriter; import org.apache.maven.settings.merge.MavenSettingsMerger; import org.apache.maven.settings.validation.SettingsValidator; -import org.codehaus.plexus.component.annotations.Component; -import org.codehaus.plexus.component.annotations.Requirement; import org.codehaus.plexus.interpolation.EnvarBasedValueSource; import org.codehaus.plexus.interpolation.InterpolationException; import org.codehaus.plexus.interpolation.InterpolationPostProcessor; @@ -49,21 +51,29 @@ * * @author Benjamin Bentmann */ -@Component( role = SettingsBuilder.class ) +@Named +@Singleton public class DefaultSettingsBuilder implements SettingsBuilder { - @Requirement private SettingsReader settingsReader; - @Requirement private SettingsWriter settingsWriter; - @Requirement private SettingsValidator settingsValidator; - private MavenSettingsMerger settingsMerger = new MavenSettingsMerger(); + private final MavenSettingsMerger settingsMerger = new MavenSettingsMerger(); + + @Inject + public DefaultSettingsBuilder( SettingsReader settingsReader, + SettingsWriter settingsWriter, + SettingsValidator settingsValidator ) + { + this.settingsReader = settingsReader; + this.settingsWriter = settingsWriter; + this.settingsValidator = settingsValidator; + } public DefaultSettingsBuilder setSettingsReader( SettingsReader settingsReader ) { diff --git a/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilderFactory.java b/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilderFactory.java index e728ec55035..805a4c871d9 100644 --- a/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilderFactory.java +++ b/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilderFactory.java @@ -59,13 +59,9 @@ protected SettingsValidator newSettingsValidator() */ public DefaultSettingsBuilder newInstance() { - DefaultSettingsBuilder builder = new DefaultSettingsBuilder(); - - builder.setSettingsReader( newSettingsReader() ); - builder.setSettingsWriter( newSettingsWriter() ); - builder.setSettingsValidator( newSettingsValidator() ); - - return builder; + return new DefaultSettingsBuilder( newSettingsReader(), + newSettingsWriter(), + newSettingsValidator() ); } } diff --git a/maven-settings-builder/src/main/java/org/apache/maven/settings/crypto/DefaultSettingsDecrypter.java b/maven-settings-builder/src/main/java/org/apache/maven/settings/crypto/DefaultSettingsDecrypter.java index 671a20de7d3..7d6c8b9b662 100644 --- a/maven-settings-builder/src/main/java/org/apache/maven/settings/crypto/DefaultSettingsDecrypter.java +++ b/maven-settings-builder/src/main/java/org/apache/maven/settings/crypto/DefaultSettingsDecrypter.java @@ -22,13 +22,15 @@ import java.util.ArrayList; import java.util.List; +import javax.inject.Inject; +import javax.inject.Named; +import javax.inject.Singleton; + import org.apache.maven.settings.Proxy; import org.apache.maven.settings.Server; import org.apache.maven.settings.building.DefaultSettingsProblem; import org.apache.maven.settings.building.SettingsProblem; import org.apache.maven.settings.building.SettingsProblem.Severity; -import org.codehaus.plexus.component.annotations.Component; -import org.codehaus.plexus.component.annotations.Requirement; import org.sonatype.plexus.components.sec.dispatcher.SecDispatcher; import org.sonatype.plexus.components.sec.dispatcher.SecDispatcherException; @@ -37,13 +39,18 @@ * * @author Benjamin Bentmann */ -@Component( role = SettingsDecrypter.class ) +@Named +@Singleton public class DefaultSettingsDecrypter implements SettingsDecrypter { + private final SecDispatcher securityDispatcher; - @Requirement( hint = "maven" ) - private SecDispatcher securityDispatcher; + @Inject + public DefaultSettingsDecrypter( @Named( "maven" ) SecDispatcher securityDispatcher ) + { + this.securityDispatcher = securityDispatcher; + } @Override public SettingsDecryptionResult decrypt( SettingsDecryptionRequest request ) diff --git a/maven-settings-builder/src/main/java/org/apache/maven/settings/io/DefaultSettingsReader.java b/maven-settings-builder/src/main/java/org/apache/maven/settings/io/DefaultSettingsReader.java index fa9561371df..6044c0c882f 100644 --- a/maven-settings-builder/src/main/java/org/apache/maven/settings/io/DefaultSettingsReader.java +++ b/maven-settings-builder/src/main/java/org/apache/maven/settings/io/DefaultSettingsReader.java @@ -26,9 +26,11 @@ import java.util.Map; import java.util.Objects; +import javax.inject.Named; +import javax.inject.Singleton; + import org.apache.maven.settings.Settings; import org.apache.maven.settings.io.xpp3.SettingsXpp3Reader; -import org.codehaus.plexus.component.annotations.Component; import org.codehaus.plexus.util.ReaderFactory; import org.codehaus.plexus.util.xml.pull.XmlPullParserException; @@ -37,7 +39,8 @@ * * @author Benjamin Bentmann */ -@Component( role = SettingsReader.class ) +@Named +@Singleton public class DefaultSettingsReader implements SettingsReader { diff --git a/maven-settings-builder/src/main/java/org/apache/maven/settings/io/DefaultSettingsWriter.java b/maven-settings-builder/src/main/java/org/apache/maven/settings/io/DefaultSettingsWriter.java index 96af1a340a8..10729a2dd8c 100644 --- a/maven-settings-builder/src/main/java/org/apache/maven/settings/io/DefaultSettingsWriter.java +++ b/maven-settings-builder/src/main/java/org/apache/maven/settings/io/DefaultSettingsWriter.java @@ -27,9 +27,11 @@ import java.util.Map; import java.util.Objects; +import javax.inject.Named; +import javax.inject.Singleton; + import org.apache.maven.settings.Settings; import org.apache.maven.settings.io.xpp3.SettingsXpp3Writer; -import org.codehaus.plexus.component.annotations.Component; import org.codehaus.plexus.util.WriterFactory; /** @@ -37,7 +39,8 @@ * * @author Benjamin Bentmann */ -@Component( role = SettingsWriter.class ) +@Named +@Singleton public class DefaultSettingsWriter implements SettingsWriter { diff --git a/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java b/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java index 1e31f504ff0..2aec1e11031 100644 --- a/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java +++ b/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java @@ -23,6 +23,9 @@ import java.util.List; import java.util.Set; +import javax.inject.Named; +import javax.inject.Singleton; + import org.apache.maven.settings.Mirror; import org.apache.maven.settings.Profile; import org.apache.maven.settings.Repository; @@ -31,13 +34,13 @@ import org.apache.maven.settings.Settings; import org.apache.maven.settings.building.SettingsProblem.Severity; import org.apache.maven.settings.building.SettingsProblemCollector; -import org.codehaus.plexus.component.annotations.Component; import org.codehaus.plexus.util.StringUtils; /** * @author Milos Kleint */ -@Component( role = SettingsValidator.class ) +@Named +@Singleton public class DefaultSettingsValidator implements SettingsValidator {