Author: jvanzyl Date: Thu Oct 4 21:03:10 2007 New Revision: 582071 URL: http://svn.apache.org/viewvc?rev=582071&view=rev Log: o adjusting the request to hold the upfront repositories that can be taken out of profiles
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java?rev=582071&r1=582070&r2=582071&view=diff ============================================================================== --- maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java (original) +++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionRequest.java Thu Oct 4 21:03:10 2007 @@ -108,6 +108,8 @@ private ProfileManager profileManager; + private List remoteRepositories; + /** * Suppress SNAPSHOT updates. * @issue MNG-2681 @@ -566,5 +568,22 @@ this.globalSettingsFile = globalSettingsFile; return this; + } + + public MavenExecutionRequest addRemoteRepository( ArtifactRepository repository ) + { + if ( remoteRepositories == null ) + { + remoteRepositories = new ArrayList(); + } + + remoteRepositories.add( repository ); + + return this; + } + + public List getRemoteRepositories() + { + return remoteRepositories; } } Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java?rev=582071&r1=582070&r2=582071&view=diff ============================================================================== --- maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java (original) +++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java Thu Oct 4 21:03:10 2007 @@ -195,4 +195,7 @@ File getGlobalSettingsFile(); MavenExecutionRequest setGlobalSettingsFile( File globalSettingsFile ); + + MavenExecutionRequest addRemoteRepository( ArtifactRepository repository ); + List getRemoteRepositories(); } Modified: maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java?rev=582071&r1=582070&r2=582071&view=diff ============================================================================== --- maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java (original) +++ maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java Thu Oct 4 21:03:10 2007 @@ -30,6 +30,7 @@ import org.apache.maven.embedder.MavenEmbedderException; import org.apache.maven.execution.MavenExecutionRequest; import org.apache.maven.model.Profile; +import org.apache.maven.model.Repository; import org.apache.maven.monitor.event.DefaultEventMonitor; import org.apache.maven.plugin.Mojo; import org.apache.maven.profiles.DefaultProfileManager; @@ -61,7 +62,7 @@ /** * Things that we deal with in this populator to ensure that we have a valid [EMAIL PROTECTED] - * + * <p/> * - POM * - Settings * - Local Repository @@ -110,14 +111,85 @@ profileManager( request, configuration ); + processSettings( request, configuration ); + return request; } + private void processSettings( MavenExecutionRequest request, + Configuration configuration ) + { + ProfileManager profileManager = request.getProfileManager(); + + Settings settings = request.getSettings(); + + List settingsProfiles = settings.getProfiles(); + + if ( settingsProfiles != null && !settingsProfiles.isEmpty() ) + { + List settingsActiveProfileIds = settings.getActiveProfiles(); + + profileManager.explicitlyActivate( settingsActiveProfileIds ); + + for ( Iterator it = settings.getProfiles().iterator(); it.hasNext(); ) + { + org.apache.maven.settings.Profile rawProfile = (org.apache.maven.settings.Profile) it.next(); + + Profile profile = SettingsUtils.convertFromSettingsProfile( rawProfile ); + + profileManager.addProfile( profile ); + + // We need to convert profile repositories to artifact repositories + + for ( Iterator j = profile.getRepositories().iterator(); j.hasNext(); ) + { + Repository r = (Repository) j.next(); + + ArtifactRepositoryPolicy releases = new ArtifactRepositoryPolicy(); + + if ( r.getReleases() != null ) + { + releases.setChecksumPolicy( r.getReleases().getChecksumPolicy() ); + + releases.setUpdatePolicy( r.getReleases().getUpdatePolicy() ); + } + else + { + releases.setChecksumPolicy( ArtifactRepositoryPolicy.UPDATE_POLICY_DAILY ); + + releases.setUpdatePolicy( ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN ); + } + + ArtifactRepositoryPolicy snapshots = new ArtifactRepositoryPolicy(); + + if ( r.getSnapshots() != null ) + { + snapshots.setChecksumPolicy( r.getSnapshots().getChecksumPolicy() ); + + snapshots.setUpdatePolicy( r.getSnapshots().getUpdatePolicy() ); + } + else + { + snapshots.setChecksumPolicy( ArtifactRepositoryPolicy.UPDATE_POLICY_DAILY ); + + snapshots.setUpdatePolicy( ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN ); + } + + ArtifactRepository ar = artifactRepositoryFactory.createArtifactRepository( r.getId(), r.getUrl(), + defaultArtifactRepositoryLayout, snapshots, releases ); + + request.addRemoteRepository( ar ); + } + } + } + } + // ------------------------------------------------------------------------ // POM // ------------------------------------------------------------------------ - private void pom( MavenExecutionRequest request, Configuration configuration ) + private void pom( MavenExecutionRequest request, + Configuration configuration ) { // ------------------------------------------------------------------------ // POM @@ -138,7 +210,7 @@ if ( !pom.exists() ) { - pom = new File( request.getBaseDirectory(), Maven.POMv4 ); + pom = new File( request.getBaseDirectory(), Maven.POMv4 ); } request.setPomFile( pom.getAbsolutePath() ); @@ -149,7 +221,8 @@ // Settings // ------------------------------------------------------------------------ - private void settings( MavenExecutionRequest request, Configuration configuration ) + private void settings( MavenExecutionRequest request, + Configuration configuration ) { // ------------------------------------------------------------------------ // Settings @@ -188,7 +261,8 @@ // Local Repository // ------------------------------------------------------------------------ - private void localRepository( MavenExecutionRequest request, Configuration configuration ) + private void localRepository( MavenExecutionRequest request, + Configuration configuration ) throws MavenEmbedderException { // ------------------------------------------------------------------------ @@ -206,7 +280,8 @@ } - public ArtifactRepository createLocalRepository( Settings settings, Configuration configuration ) + public ArtifactRepository createLocalRepository( Settings settings, + Configuration configuration ) throws MavenEmbedderException { String localRepositoryPath = null; @@ -314,7 +389,8 @@ // Snapshot Policy // ------------------------------------------------------------------------ - private void snapshotPolicy( MavenExecutionRequest request, Configuration configuration ) + private void snapshotPolicy( MavenExecutionRequest request, + Configuration configuration ) { // ------------------------------------------------------------------------ // Snapshot Repository Update Policies @@ -347,7 +423,8 @@ // Checksum Policy // ------------------------------------------------------------------------ - private void checksumPolicy( MavenExecutionRequest request, Configuration configuration ) + private void checksumPolicy( MavenExecutionRequest request, + Configuration configuration ) { // ------------------------------------------------------------------------ // Repository Checksum Policies @@ -362,7 +439,8 @@ // Artifact Transfer Mechanism // ------------------------------------------------------------------------ - private void artifactTransferMechanism( MavenExecutionRequest request, Configuration configuration ) + private void artifactTransferMechanism( MavenExecutionRequest request, + Configuration configuration ) throws MavenEmbedderException { // ------------------------------------------------------------------------ @@ -477,7 +555,8 @@ // Eventing // ------------------------------------------------------------------------ - private void eventing( MavenExecutionRequest request, Configuration configuration ) + private void eventing( MavenExecutionRequest request, + Configuration configuration ) { // ------------------------------------------------------------------------ // Event Monitor/Logging @@ -499,7 +578,8 @@ // Profile Manager // ------------------------------------------------------------------------ - private void profileManager( MavenExecutionRequest request, Configuration configuration ) + private void profileManager( MavenExecutionRequest request, + Configuration configuration ) { // ------------------------------------------------------------------------ // Profile Manager @@ -509,10 +589,6 @@ ProfileManager globalProfileManager = new DefaultProfileManager( container ); - loadSettingsProfiles( - globalProfileManager, - request.getSettings() ); - globalProfileManager.explicitlyActivate( request.getActiveProfiles() ); globalProfileManager.explicitlyDeactivate( request.getInactiveProfiles() ); @@ -528,27 +604,5 @@ throws ContextException { container = (PlexusContainer) context.get( PlexusConstants.PLEXUS_KEY ); - } - - public void loadSettingsProfiles( ProfileManager profileManager, - Settings settings ) - { - List settingsProfiles = settings.getProfiles(); - - if ( settingsProfiles != null && !settingsProfiles.isEmpty() ) - { - List settingsActiveProfileIds = settings.getActiveProfiles(); - - profileManager.explicitlyActivate( settingsActiveProfileIds ); - - for ( Iterator it = settings.getProfiles().iterator(); it.hasNext(); ) - { - org.apache.maven.settings.Profile rawProfile = (org.apache.maven.settings.Profile) it.next(); - - Profile profile = SettingsUtils.convertFromSettingsProfile( rawProfile ); - - profileManager.addProfile( profile ); - } - } } }