You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2008/02/09 03:22:05 UTC

svn commit: r620062 [1/2] - in /maven/components/branches/CAP: maven-core/src/main/java/org/apache/maven/extension/ maven-core/src/main/java/org/apache/maven/plugin/ maven-core/src/main/java/org/apache/maven/plugin/version/ maven-core/src/test/java/org...

Author: jvanzyl
Date: Fri Feb  8 18:22:02 2008
New Revision: 620062

URL: http://svn.apache.org/viewvc?rev=620062&view=rev
Log:
o meshing with my local changes in maven artifact

Added:
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Coordinate.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/CoordinateModelReaderSource.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/DefaultProjectFactory.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/FileModelReaderSource.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReader.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSource.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSourceException.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReadingException.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ParentCoordinateAdapter.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/PomArtifact.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ProjectFactory.java   (with props)
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Xpp3ModelReader.java   (with props)
Modified:
    maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java
    maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
    maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManagerSupport.java
    maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java
    maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/execution/DefaultMavenRealmManagerTest.java
    maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/extension/DefaultExtensionManagerTest.java
    maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java
    maven/components/branches/CAP/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java
    maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/CustomArtifactFactory.java
    maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/TestComponentOverride.java
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/MavenProject.java
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/AttachedArtifact.java
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/PomMetadataSource.java
    maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/build/model/DefaultModelLineageBuilder.java
    maven/components/branches/CAP/maven-project/src/main/resources/META-INF/plexus/components.xml
    maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java
    maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/artifact/MavenMetadataSourceTest.java
    maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t07/ProjectInheritanceTest.java
    maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t11/ProjectInheritanceTest.java
    maven/components/branches/CAP/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml
    maven/components/branches/CAP/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml

Modified: maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java (original)
+++ maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/extension/DefaultExtensionManager.java Fri Feb  8 18:22:02 2008
@@ -22,7 +22,7 @@
 import org.apache.maven.ArtifactFilterManager;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.ArtifactUtils;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.manager.WagonManager;
 import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
@@ -79,8 +79,6 @@
     extends AbstractLogEnabled
     implements ExtensionManager, Contextualizable
 {
-    private ArtifactFactory artifactFactory;
-
     private ArtifactResolver artifactResolver;
 
     private ArtifactMetadataSource artifactMetadataSource;
@@ -94,14 +92,13 @@
     private PluginManager pluginManager;
 
     // used for unit testing.
-    protected DefaultExtensionManager( ArtifactFactory artifactFactory,
+    protected DefaultExtensionManager(
                                     ArtifactResolver artifactResolver,
                                     ArtifactMetadataSource artifactMetadataSource,
                                     MutablePlexusContainer container,
                                     ArtifactFilterManager artifactFilterManager,
                                     WagonManager wagonManager )
     {
-        this.artifactFactory = artifactFactory;
         this.artifactResolver = artifactResolver;
         this.artifactMetadataSource = artifactMetadataSource;
         this.container = container;
@@ -120,9 +117,9 @@
                               MavenExecutionRequest request )
         throws ExtensionManagerException
     {
-        Artifact extensionArtifact = artifactFactory.createBuildArtifact( extension.getGroupId(),
+        Artifact extensionArtifact = new DefaultArtifact( extension.getGroupId(),
                                                                           extension.getArtifactId(),
-                                                                          extension.getVersion(), "jar" );
+                                                                          extension.getVersion(), "jar", null, false, Artifact.SCOPE_RUNTIME, null );
 
         Parent originatingParent = originatingModel.getParent();
 
@@ -142,7 +139,7 @@
             version = originatingParent.getVersion();
         }
 
-        Artifact projectArtifact = artifactFactory.createProjectArtifact( groupId, artifactId, version );
+        Artifact projectArtifact = new DefaultArtifact( groupId, artifactId, version, "pom", null, false, Artifact.SCOPE_RUNTIME, null );
 
         addExtension( extensionArtifact,
                       projectArtifact,
@@ -188,9 +185,9 @@
             pluginVersion = Artifact.RELEASE_VERSION;
         }
 
-        Artifact pluginArtifact = artifactFactory.createBuildArtifact( plugin.getGroupId(),
+        Artifact pluginArtifact = new DefaultArtifact( plugin.getGroupId(),
                                                                        plugin.getArtifactId(),
-                                                                       pluginVersion, "maven-plugin" );
+                                                                       pluginVersion, "maven-plugin", null, false, Artifact.SCOPE_RUNTIME, null );
 
         getLogger().debug( "Starting extension-addition process for: " + pluginArtifact );
 
@@ -438,7 +435,7 @@
         }
     }
 
-    public static void checkPlexusUtils( ResolutionGroup resolutionGroup, ArtifactFactory artifactFactory )
+    public static void checkPlexusUtils( ResolutionGroup resolutionGroup )
     {
         // ----------------------------------------------------------------------------
         // If the plugin already declares a dependency on plexus-utils then we're all
@@ -482,9 +479,9 @@
             // version to the latest version we know that works as of the 2.0.6 release. We set the scope to runtime
             // as this is what's implicitly happening in 2.0.6.
 
-            resolutionGroup.getArtifacts().add( artifactFactory.createArtifact( "org.codehaus.plexus",
-                                                                                "plexus-utils", "1.1",
-                                                                                Artifact.SCOPE_RUNTIME, "jar" ) );
+            resolutionGroup.getArtifacts().add( new DefaultArtifact( "org.codehaus.plexus",
+                "plexus-utils", "1.1",
+                "jar", null, false, Artifact.SCOPE_RUNTIME, null ) );
         }
     }
 }

Modified: maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java (original)
+++ maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java Fri Feb  8 18:22:02 2008
@@ -21,7 +21,7 @@
 
 import org.apache.maven.ArtifactFilterManager;
 import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
 import org.apache.maven.artifact.metadata.ResolutionGroup;
@@ -120,8 +120,6 @@
 
     protected PluginVersionManager pluginVersionManager;
 
-    protected ArtifactFactory artifactFactory;
-
     protected ArtifactResolver artifactResolver;
 
     protected ArtifactMetadataSource artifactMetadataSource;
@@ -359,7 +357,6 @@
         try
         {
             projectPluginDependencies = MavenMetadataSource.createArtifacts(
-                                                                             artifactFactory,
                                                                              plugin.getDependencies(),
                                                                              null,
                                                                              coreArtifactFilterManager.getCoreArtifactFilter(),
@@ -492,8 +489,7 @@
                 MavenProject p = (MavenProject) i.next();
 
                 resolveTransitiveDependencies( session, artifactResolver,
-                                               mojoDescriptor.isDependencyResolutionRequired(),
-                                               artifactFactory, p );
+                                               mojoDescriptor.isDependencyResolutionRequired(), p );
             }
 
             downloadDependencies( project, session, artifactResolver );
@@ -1293,7 +1289,6 @@
     private void resolveTransitiveDependencies( MavenSession context,
                                                 ArtifactResolver artifactResolver,
                                                 String scope,
-                                                ArtifactFactory artifactFactory,
                                                 MavenProject project )
         throws ArtifactResolutionException, ArtifactNotFoundException,
         InvalidDependencyVersionException
@@ -1301,10 +1296,10 @@
         ArtifactFilter filter = new ScopeArtifactFilter( scope );
 
         // TODO: such a call in MavenMetadataSource too - packaging not really the intention of type
-        Artifact artifact = artifactFactory.createBuildArtifact( project.getGroupId(),
+        Artifact artifact = new DefaultArtifact( project.getGroupId(),
                                                                  project.getArtifactId(),
                                                                  project.getVersion(),
-                                                                 project.getPackaging() );
+                                                                 project.getPackaging(), null, false, Artifact.SCOPE_RUNTIME, null );
 
         // TODO: we don't need to resolve over and over again, as long as we are sure that the parameters are the same
         // check this with yourkit as a hot spot.
@@ -1312,7 +1307,7 @@
         if ( project.getDependencyArtifacts() == null )
         {
             // NOTE: Don't worry about covering this case with the error-reporter bindings...it's already handled by the project error reporter.
-            project.setDependencyArtifacts( project.createArtifacts( artifactFactory, null, null ) );
+            project.setDependencyArtifacts( project.createArtifacts( null, null ) );
         }
         ArtifactResolutionResult result = artifactResolver.resolveTransitively(
                                                                                 project.getDependencyArtifacts(),
@@ -1346,8 +1341,7 @@
         }
     }
 
-    public static void checkPlexusUtils( ResolutionGroup resolutionGroup,
-                                         ArtifactFactory artifactFactory )
+    public static void checkPlexusUtils( ResolutionGroup resolutionGroup )
     {
         // ----------------------------------------------------------------------------
         // If the plugin already declares a dependency on plexus-utils then we're all
@@ -1392,10 +1386,7 @@
             // as this is what's implicitly happening in 2.0.6.
 
             resolutionGroup.getArtifacts()
-                           .add(
-                                 artifactFactory.createArtifact( "org.codehaus.plexus",
-                                                                 "plexus-utils", "1.1",
-                                                                 Artifact.SCOPE_RUNTIME, "jar" ) );
+                .add( new DefaultArtifact( "org.codehaus.plexus", "plexus-utils", "1.1", "jar", null, false, Artifact.SCOPE_RUNTIME, null ) );
         }
     }
 

Modified: maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManagerSupport.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManagerSupport.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManagerSupport.java (original)
+++ maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManagerSupport.java Fri Feb  8 18:22:02 2008
@@ -1,7 +1,7 @@
 package org.apache.maven.plugin;
 
 import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
 import org.apache.maven.artifact.resolver.ArtifactResolutionException;
@@ -39,8 +39,6 @@
 
     private ArtifactResolver artifactResolver;
 
-    private ArtifactFactory artifactFactory;
-
     private MavenProjectBuilder mavenProjectBuilder;
 
     private RuntimeInformation runtimeInformation;
@@ -71,8 +69,6 @@
 
         List remoteRepositories = new ArrayList();
 
-//        remoteRepositories.addAll( project.getPluginArtifactRepositories() );
-
         remoteRepositories.addAll( project.getRemoteArtifactRepositories() );
 
         MavenProject pluginProject = buildPluginProject( plugin,
@@ -83,9 +79,7 @@
 
         checkPluginDependencySpec( plugin, pluginProject );
 
-        Artifact pluginArtifact = artifactFactory.createPluginArtifact( plugin.getGroupId(),
-                                                                        plugin.getArtifactId(),
-                                                                        versionRange );
+        Artifact pluginArtifact = new DefaultArtifact( plugin.getGroupId(), plugin.getArtifactId(), versionRange, "maven-plugin", null, false, Artifact.SCOPE_RUNTIME, null );
 
         pluginArtifact = project.replaceWithActiveArtifact( pluginArtifact );
 
@@ -99,9 +93,8 @@
                                             List remoteRepositories )
         throws InvalidPluginException
     {
-        Artifact artifact = artifactFactory.createProjectArtifact( plugin.getGroupId(),
-                                                                   plugin.getArtifactId(),
-                                                                   plugin.getVersion() );
+        Artifact artifact = new DefaultArtifact( plugin.getGroupId(), plugin.getArtifactId(), plugin.getVersion(),
+            "pom", null, false, Artifact.SCOPE_RUNTIME, null );
 
         try
         {
@@ -152,7 +145,7 @@
         ArtifactFilter filter = new ScopeArtifactFilter( "runtime" );
         try
         {
-            pluginProject.createArtifacts( artifactFactory, null, filter );
+            pluginProject.createArtifacts( null, filter );
         }
         catch ( InvalidDependencyVersionException e )
         {

Modified: maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java (original)
+++ maven/components/branches/CAP/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionManager.java Fri Feb  8 18:22:02 2008
@@ -21,7 +21,7 @@
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.ArtifactUtils;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
 import org.apache.maven.artifact.metadata.ResolutionGroup;
@@ -48,8 +48,6 @@
     extends AbstractLogEnabled
     implements PluginVersionManager
 {
-    private ArtifactFactory artifactFactory;
-
     private ArtifactMetadataSource artifactMetadataSource;
 
     private MavenProjectBuilder mavenProjectBuilder;
@@ -181,7 +179,7 @@
     {
         getLogger().info( "Attempting to resolve a version for plugin: " + groupId + ":" + artifactId + " using meta-version: " + metaVersionId  );
 
-        Artifact artifact = artifactFactory.createProjectArtifact( groupId, artifactId, metaVersionId );
+        Artifact artifact = new DefaultArtifact( groupId, artifactId, metaVersionId, "pom", null, false, Artifact.SCOPE_RUNTIME, null );
 
         String key = artifact.getDependencyConflictId();
 
@@ -215,7 +213,7 @@
                 MavenProject pluginProject;
                 try
                 {
-                    artifact = artifactFactory.createProjectArtifact( groupId, artifactId, artifactVersion );
+                    artifact = new DefaultArtifact( groupId, artifactId, artifactVersion, "pom", null, false, Artifact.SCOPE_RUNTIME, null );
 
                     pluginProject = mavenProjectBuilder.buildFromRepository( artifact, project.getRemoteArtifactRepositories(), localRepository );
                 }

Modified: maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/execution/DefaultMavenRealmManagerTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/execution/DefaultMavenRealmManagerTest.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/execution/DefaultMavenRealmManagerTest.java (original)
+++ maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/execution/DefaultMavenRealmManagerTest.java Fri Feb  8 18:22:02 2008
@@ -1,7 +1,7 @@
 package org.apache.maven.execution;
 
 import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.realm.DefaultMavenRealmManager;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.logging.Logger;
@@ -14,14 +14,9 @@
 public class DefaultMavenRealmManagerTest
     extends PlexusTestCase
 {
-
-    private ArtifactFactory factory;
-
     protected void setUp() throws Exception
     {
         super.setUp();
-
-        factory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
     }
 
     public void test_ReuseSingleExtensionRealmFromMultipleProjectRealms_UsingTwoManagerInstances()
@@ -30,8 +25,8 @@
         ClassLoader cloader = Thread.currentThread().getContextClassLoader();
         URL jarResource = cloader.getResource( "org/apache/maven/execution/test-extension-1.jar" );
 
-        Artifact ext1 = factory.createBuildArtifact( "org.group", "artifact-ext", "1", "jar" );
-        Artifact ext2 = factory.createBuildArtifact( "org.group", "artifact-ext", "1", "jar" );
+        Artifact ext1 = new DefaultArtifact( "org.group", "artifact-ext", "1", "jar", null, false, Artifact.SCOPE_RUNTIME, null );
+        Artifact ext2 = new DefaultArtifact( "org.group", "artifact-ext", "1", "jar", null, false, Artifact.SCOPE_RUNTIME, null );
 
         assertNotSame( ext1, ext2 );
 
@@ -57,7 +52,7 @@
 
         mgr1.importExtensionsIntoProjectRealm( "org.group", pAid1, "2", ext1 );
 
-        String targetClass = ArtifactFactory.ROLE;
+        String targetClass = "org.apache.maven.artifact.factory.ArtifactFactory"; //ArtifactFactory.ROLE;
 
         Object result1 = getContainer().lookup( targetClass, "test", mgr1.getProjectRealm( "org.group", pAid1, "2" ) );
 

Modified: maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/extension/DefaultExtensionManagerTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/extension/DefaultExtensionManagerTest.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/extension/DefaultExtensionManagerTest.java (original)
+++ maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/extension/DefaultExtensionManagerTest.java Fri Feb  8 18:22:02 2008
@@ -2,7 +2,6 @@
 
 import org.apache.maven.ArtifactFilterManager;
 import org.apache.maven.DefaultArtifactFilterManager;
-import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.handler.ArtifactHandler;
 import org.apache.maven.artifact.manager.WagonManager;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
@@ -46,8 +45,6 @@
 
     private ArtifactRepositoryFactory repoFactory;
 
-    private ArtifactFactory factory;
-
     private ArtifactResolver resolver;
 
     private ArtifactMetadataSource metadataSource;
@@ -67,7 +64,6 @@
 
         repoFactory = (ArtifactRepositoryFactory) lookup( ArtifactRepositoryFactory.ROLE );
 
-        factory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
         resolver = (ArtifactResolver) lookup( ArtifactResolver.ROLE );
 
         metadataSource = (ArtifactMetadataSource) lookup( ArtifactMetadataSource.ROLE );
@@ -125,13 +121,9 @@
 
         ExtensionManager mgr = newDefaultExtensionManager();
 
-        MavenRealmManager realmManager = new DefaultMavenRealmManager(
-                                                                      container,
-                                                                      new ConsoleLogger(
-                                                                                         Logger.LEVEL_DEBUG,
-                                                                                         "test" ) );
+        MavenRealmManager realmManager = new DefaultMavenRealmManager( container, new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
 
-       MavenExecutionRequest request = new DefaultMavenExecutionRequest().setLocalRepository( localRepository )
+        MavenExecutionRequest request = new DefaultMavenExecutionRequest().setLocalRepository( localRepository )
                                                                          .setRealmManager( realmManager );
 
         mgr.addExtension( ext, model, remoteRepositories, request );
@@ -139,6 +131,7 @@
         ClassRealm projectRealm = realmManager.getProjectRealm( model.getGroupId(), model.getArtifactId(), model.getVersion() );
         ClassRealm oldRealm = getContainer().setLookupRealm( projectRealm );
 
+        /*
         List compList = getContainer().getComponentDescriptorList( ArtifactFactory.ROLE );
 
         System.out.println( "Got: " + compList );
@@ -147,6 +140,7 @@
         assertNotNull( result );
 
         getContainer().setLookupRealm( oldRealm );
+        */
     }
 
     public void test_addExtension_usingModel_ShouldLoadCustomLifecycleMappingAndArtifactHandler()
@@ -209,7 +203,7 @@
     private ExtensionManager newDefaultExtensionManager()
         throws Exception
     {
-        DefaultExtensionManager mgr = new DefaultExtensionManager( factory, resolver,
+        DefaultExtensionManager mgr = new DefaultExtensionManager( resolver,
                                                                    metadataSource, container,
                                                                    filterManager, wagonManager );
 

Modified: maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java (original)
+++ maven/components/branches/CAP/maven-core/src/test/java/org/apache/maven/plugin/PluginParameterExpressionEvaluatorTest.java Fri Feb  8 18:22:02 2008
@@ -21,7 +21,7 @@
 
 
 import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.DefaultArtifactRepository;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
@@ -321,10 +321,8 @@
                                        String version )
         throws Exception
     {
-        ArtifactFactory artifactFactory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
-
         // TODO: used to be SCOPE_COMPILE, check
-        return artifactFactory.createBuildArtifact( groupId, artifactId, version, "jar" );
+        return new DefaultArtifact( groupId, artifactId, version, "jar", null, false, Artifact.SCOPE_RUNTIME, null );
     }
 
 }

Modified: maven/components/branches/CAP/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java (original)
+++ maven/components/branches/CAP/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java Fri Feb  8 18:22:02 2008
@@ -21,7 +21,7 @@
 
 import org.apache.maven.Maven;
 import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.handler.ArtifactHandler;
 import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
 import org.apache.maven.artifact.repository.ArtifactRepository;
@@ -150,8 +150,6 @@
 
     private ArtifactRepositoryFactory artifactRepositoryFactory;
 
-    private ArtifactFactory artifactFactory;
-
     private ArtifactResolver artifactResolver;
 
     private ArtifactRepositoryLayout defaultArtifactRepositoryLayout;
@@ -485,7 +483,7 @@
                                     String scope,
                                     String type )
     {
-        return artifactFactory.createArtifact( groupId, artifactId, version, scope, type );
+        return new DefaultArtifact( groupId, artifactId, version, type, null, false, Artifact.SCOPE_RUNTIME, null );
     }
 
     public Artifact createArtifactWithClassifier( String groupId,
@@ -494,7 +492,7 @@
                                                   String type,
                                                   String classifier )
     {
-        return artifactFactory.createArtifactWithClassifier( groupId, artifactId, version, type, classifier );
+        return new DefaultArtifact( groupId, artifactId, version, type, classifier, false, Artifact.SCOPE_RUNTIME, null );
     }
 
     public void resolve( Artifact artifact,
@@ -677,8 +675,6 @@
             // ----------------------------------------------------------------------
 
             artifactRepositoryFactory = (ArtifactRepositoryFactory) container.lookup( ArtifactRepositoryFactory.ROLE );
-
-            artifactFactory = (ArtifactFactory) container.lookup( ArtifactFactory.ROLE );
 
             artifactResolver = (ArtifactResolver) container.lookup( ArtifactResolver.ROLE, "default" );
 

Modified: maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/CustomArtifactFactory.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/CustomArtifactFactory.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/CustomArtifactFactory.java (original)
+++ maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/CustomArtifactFactory.java Fri Feb  8 18:22:02 2008
@@ -19,15 +19,11 @@
  * under the License.
  */
 
-import org.apache.maven.artifact.factory.DefaultArtifactFactory;
-
 /**
  *
  * @author <a href="mailto:kenney@apache.org">Kenney Westerhof</a>
  *
  */
 public class CustomArtifactFactory
-    extends DefaultArtifactFactory
 {
-
 }

Modified: maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/TestComponentOverride.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/TestComponentOverride.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/TestComponentOverride.java (original)
+++ maven/components/branches/CAP/maven-embedder/src/test/java/org/apache/maven/embedder/TestComponentOverride.java Fri Feb  8 18:22:02 2008
@@ -20,7 +20,6 @@
  */
 
 import junit.framework.TestCase;
-import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.codehaus.plexus.PlexusContainer;
 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
 
@@ -63,6 +62,10 @@
         maven = new MavenEmbedder( request );
     }
 
+    /*
+
+    jvz
+
     public void testComponentOverride()
         throws ComponentLookupException
     {
@@ -76,4 +79,5 @@
         // test wheter the requirement is injected - if not, it nullpointers
         factory.createArtifact( "testGroupId", "testArtifactId", "testVersion", "compile", "jar" );
     }
+    */
 }

Modified: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java (original)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java Fri Feb  8 18:22:02 2008
@@ -25,8 +25,8 @@
 import org.apache.maven.artifact.ArtifactUtils;
 import org.apache.maven.artifact.InvalidRepositoryException;
 import org.apache.maven.artifact.UnknownRepositoryLayoutException;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
-import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
@@ -142,8 +142,6 @@
 
     protected ArtifactMetadataSource artifactMetadataSource;
 
-    private ArtifactFactory artifactFactory;
-
     private ModelInheritanceAssembler modelInheritanceAssembler;
 
     private ModelValidator validator;
@@ -334,7 +332,7 @@
 
         try
         {
-            project.setDependencyArtifacts( project.createArtifacts( artifactFactory, null, null ) );
+            project.setDependencyArtifacts( project.createArtifacts( null, null ) );
         }
         catch ( InvalidDependencyVersionException e )
         {
@@ -362,8 +360,7 @@
     //
     // ----------------------------------------------------------------------
 
-    private Map createManagedVersionMap( String projectId,
-                                         DependencyManagement dependencyManagement, File pomFile )
+    private Map createManagedVersionMap( String projectId, DependencyManagement dependencyManagement, File pomFile )
         throws ProjectBuildingException
     {
         Map map = null;
@@ -385,8 +382,8 @@
                 {
                     VersionRange versionRange = VersionRange.createFromVersionSpec( d.getVersion() );
 
-                    Artifact artifact = artifactFactory.createDependencyArtifact( d.getGroupId(), d.getArtifactId(), versionRange, d.getType(),
-                        d.getClassifier(), d.getScope(), d.isOptional() );
+                    Artifact artifact = new DefaultArtifact( d.getGroupId(), d.getArtifactId(), versionRange, d.getType(),
+                        d.getClassifier(), d.isOptional(), d.getScope(), null );
 
                     if ( Artifact.SCOPE_SYSTEM.equals( d.getScope() ) && ( d.getSystemPath() != null ) )
                     {
@@ -478,10 +475,8 @@
                 + artifact.getArtifactId() + ":" + artifact.getVersion() + ") of type: "
                 + artifact.getType() + "; constructing POM artifact instead." );
 
-            projectArtifact = artifactFactory.createProjectArtifact( artifact.getGroupId(),
-                artifact.getArtifactId(),
-                artifact.getVersion(),
-                artifact.getScope() );
+            projectArtifact = new DefaultArtifact( artifact.getGroupId(), artifact.getArtifactId(),
+                artifact.getVersion(), "pom", null, false, artifact.getScope(), null );
         }
 
         Model model;
@@ -938,8 +933,8 @@
 
         // TODO: such a call in MavenMetadataSource too - packaging not really the intention of type
         // TODO: maybe not strictly correct, while we should enfore that packaging has a type handler of the same id, we don't
-        Artifact projectArtifact = artifactFactory.createBuildArtifact( project.getGroupId(), project.getArtifactId(),
-            project.getVersion(), project.getPackaging() );
+        Artifact projectArtifact = new DefaultArtifact( project.getGroupId(), project.getArtifactId(), project.getVersion(), project.getPackaging(),
+            null, false, Artifact.SCOPE_RUNTIME, null );
         project.setArtifact( projectArtifact );
 
 //        project.setPluginArtifactRepositories( mavenTools.buildArtifactRepositories( model.getPluginRepositories() ) );
@@ -1053,8 +1048,8 @@
                 lastProject.setParent( project );
                 project = lastProject.getParent();
 
-                lastProject.setParentArtifact( artifactFactory.createParentArtifact( project.getGroupId(), project
-                    .getArtifactId(), project.getVersion() ) );
+                lastProject.setParentArtifact( new DefaultArtifact( project.getGroupId(), project.getArtifactId(), project.getVersion(), "pom", 
+                    null, false, Artifact.SCOPE_RUNTIME, null ) );
             }
 
             // NOTE: the caching aspect may replace the parent project instance, so we apply profiles here.
@@ -1112,8 +1107,9 @@
                     Dependency dep = (Dependency)iter.next();
                     if (dep.getType().equals("pom"))
                     {
-                        Artifact artifact = artifactFactory.createProjectArtifact( dep.getGroupId(), dep.getArtifactId(),
-                                                                                  dep.getVersion(), dep.getScope() );
+                        Artifact artifact = new DefaultArtifact( dep.getGroupId(), dep.getArtifactId(),
+                            dep.getVersion(), "pom", null, false, dep.getScope(), null );
+
                         MavenProject project = buildFromRepository(artifact, parentSearchRepositories, localRepository, false);
 
                         DependencyManagement depMgmt = project.getDependencyManagement();
@@ -1243,8 +1239,7 @@
             Artifact artifact;
             try
             {
-                artifact = artifactFactory.createPluginArtifact( p.getGroupId(), p.getArtifactId(),
-                    VersionRange.createFromVersionSpec( version ) );
+                artifact = new DefaultArtifact( p.getGroupId(), p.getArtifactId(), VersionRange.createFromVersionSpec( version ), "maven-plugin", null, false, Artifact.SCOPE_RUNTIME, null );
             }
             catch ( InvalidVersionSpecificationException e )
             {
@@ -1301,8 +1296,9 @@
                 Artifact artifact;
                 try
                 {
-                    artifact = artifactFactory.createPluginArtifact( p.getGroupId(), p.getArtifactId(),
-                        VersionRange.createFromVersionSpec( version ) );
+                    artifact = new DefaultArtifact( p.getGroupId(), p.getArtifactId(),
+                        VersionRange.createFromVersionSpec( version ), "maven-plugin", null, false,
+                        Artifact.SCOPE_RUNTIME, null );
                 }
                 catch ( InvalidVersionSpecificationException e )
                 {
@@ -1360,9 +1356,7 @@
                 Artifact artifact;
                 try
                 {
-                    VersionRange versionRange = VersionRange.createFromVersionSpec( version );
-                    artifact =
-                        artifactFactory.createExtensionArtifact( ext.getGroupId(), ext.getArtifactId(), versionRange );
+                    artifact = new DefaultArtifact( ext.getGroupId(), ext.getArtifactId(), VersionRange.createFromVersionSpec( version ), "jar", null, false, Artifact.SCOPE_RUNTIME, null );                    
                 }
                 catch ( InvalidVersionSpecificationException e )
                 {

Modified: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/MavenProject.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/MavenProject.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/MavenProject.java (original)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/MavenProject.java Fri Feb  8 18:22:02 2008
@@ -22,7 +22,6 @@
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.ArtifactUtils;
 import org.apache.maven.artifact.DependencyResolutionRequiredException;
-import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
@@ -1573,12 +1572,10 @@
      * @todo the lazy initialisation of this makes me uneasy.
      * @return {@link Set} &lt; {@link Artifact} >
      */
-    public Set createArtifacts( ArtifactFactory artifactFactory, String inheritedScope,
-                                ArtifactFilter dependencyFilter )
+    public Set createArtifacts( String inheritedScope, ArtifactFilter dependencyFilter )
         throws InvalidDependencyVersionException
     {
-        return MavenMetadataSource.createArtifacts( artifactFactory, getDependencies(), inheritedScope,
-                                                    dependencyFilter, this );
+        return MavenMetadataSource.createArtifacts( getDependencies(), inheritedScope, dependencyFilter, this );
     }
 
     public void addProjectReference( MavenProject project )

Modified: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/AttachedArtifact.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/AttachedArtifact.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/AttachedArtifact.java (original)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/AttachedArtifact.java Fri Feb  8 18:22:02 2008
@@ -39,8 +39,7 @@
 
     public AttachedArtifact( Artifact parent, String type, String classifier )
     {
-        super( parent.getGroupId(), parent.getArtifactId(), parent.getVersionRange(), parent.getScope(), type,
-               classifier, parent.isOptional() );
+        super( parent.getGroupId(), parent.getArtifactId(), parent.getVersionRange(), type, classifier, parent.isOptional(), parent.getScope(), null );
 
         setDependencyTrail( Collections.singletonList( parent.getId() ) );
 

Modified: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java (original)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java Fri Feb  8 18:22:02 2008
@@ -20,7 +20,7 @@
  */
 
 import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
 import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
@@ -76,8 +76,6 @@
 
     private MavenProjectBuilder mavenProjectBuilder;
 
-    private ArtifactFactory artifactFactory;
-
     private RepositoryMetadataManager repositoryMetadataManager;
 
     // lazily instantiated and cached.
@@ -115,8 +113,8 @@
         do
         {
             // TODO: can we just modify the original?
-            pomArtifact = artifactFactory.createProjectArtifact( artifact.getGroupId(), artifact.getArtifactId(),
-                                                                 artifact.getVersion(), artifact.getScope() );
+            pomArtifact = new DefaultArtifact( artifact.getGroupId(), artifact.getArtifactId(), artifact.getVersion(),
+                "pom", null, false, artifact.getScope(), null );
 
             if ( Artifact.SCOPE_SYSTEM.equals( artifact.getScope() ) )
             {
@@ -252,8 +250,7 @@
                 // or used the inherited scope (should that be passed to the buildFromRepository method above?)
                 try
                 {
-                    artifacts = project.createArtifacts( artifactFactory, artifact.getScope(),
-                                                         artifact.getDependencyFilter() );
+                    artifacts = project.createArtifacts( artifact.getScope(), artifact.getDependencyFilter() );
                 }
                 catch ( InvalidDependencyVersionException e )
                 {
@@ -337,8 +334,7 @@
      * @todo desperately needs refactoring. It's just here because it's implementation is maven-project specific
      * @return {@link Set} &lt; {@link Artifact} >
      */
-    public static Set createArtifacts( ArtifactFactory artifactFactory, List dependencies, String inheritedScope,
-                                       ArtifactFilter dependencyFilter, MavenProject project )
+    public static Set createArtifacts( List dependencies, String inheritedScope, ArtifactFilter dependencyFilter, MavenProject project )
         throws InvalidDependencyVersionException
     {
         Set projectArtifacts = new LinkedHashSet( dependencies.size() );
@@ -365,9 +361,11 @@
             {
                 throw new InvalidDependencyVersionException( project.getId(), d, project.getFile(), e );
             }
-            Artifact artifact = artifactFactory.createDependencyArtifact( d.getGroupId(), d.getArtifactId(),
-                                                                          versionRange, d.getType(), d.getClassifier(),
-                                                                          scope, inheritedScope, d.isOptional() );
+
+            //TODO
+            Artifact artifact = new DefaultArtifact( d.getGroupId(), d.getArtifactId(),
+                versionRange, d.getType(), d.getClassifier(), d.isOptional(),
+                scope, inheritedScope );
 
             if ( Artifact.SCOPE_SYSTEM.equals( scope ) )
             {

Modified: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/PomMetadataSource.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/PomMetadataSource.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/PomMetadataSource.java (original)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/artifact/PomMetadataSource.java Fri Feb  8 18:22:02 2008
@@ -20,7 +20,7 @@
  */
 
 import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.resolver.metadata.ArtifactMetadata;
@@ -59,8 +59,6 @@
 
     private MavenProjectBuilder mavenProjectBuilder;
 
-    private ArtifactFactory artifactFactory;
-
     // lazily instantiated and cached.
     private MavenProject superProject;
 
@@ -86,11 +84,10 @@
 
         MavenProject project = null;
 
-        Artifact pomArtifact = artifactFactory.createProjectArtifact(
+        Artifact pomArtifact = new DefaultArtifact(
             artifactMetadata.getGroupId()
             , artifactMetadata.getArtifactId()
-            , artifactMetadata.getVersion()
-        );
+            , artifactMetadata.getVersion(), "pom", null, false, Artifact.SCOPE_RUNTIME, null );
 
         try
         {

Modified: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/build/model/DefaultModelLineageBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/build/model/DefaultModelLineageBuilder.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/build/model/DefaultModelLineageBuilder.java (original)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/build/model/DefaultModelLineageBuilder.java Fri Feb  8 18:22:02 2008
@@ -22,7 +22,7 @@
 import org.apache.maven.MavenTools;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.InvalidRepositoryException;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
 import org.apache.maven.artifact.resolver.ArtifactResolutionException;
@@ -57,11 +57,8 @@
 public class DefaultModelLineageBuilder
     implements ModelLineageBuilder, LogEnabled
 {
-
     public static final String ROLE_HINT = "default";
 
-    private ArtifactFactory artifactFactory;
-
     private ArtifactResolver artifactResolver;
 
     private MavenTools mavenTools;
@@ -74,16 +71,11 @@
     {
     }
 
-    public DefaultModelLineageBuilder( ArtifactResolver resolver,
-                                       ArtifactFactory artifactFactory )
+    public DefaultModelLineageBuilder( ArtifactResolver resolver )
     {
         artifactResolver = resolver;
-        this.artifactFactory = artifactFactory;
     }
 
-    /**
-     * @see org.apache.maven.project.build.model.ModelLineageBuilder#buildModelLineage(java.io.File, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List)
-     */
     public ModelLineage buildModelLineage( File pom,
                                            ArtifactRepository localRepository,
                                            List remoteRepositories,
@@ -225,7 +217,7 @@
      * Update the remote repository set used to resolve parent POMs, by adding those declared in
      * the given model to the HEAD of a new list, then appending the old remote repositories list.
      * The specified pomFile is used for error reporting.
-     * @param profileManager
+     * @param externalProfileManager
      */
     private List updateRepositorySet( Model model,
                                       List oldArtifactRepositories,
@@ -315,7 +307,6 @@
     /**
      * Pull the parent specification out of the given model, construct an Artifact instance, and
      * resolve that artifact...then, return the resolved POM file for the parent.
-     * @param projectBuildCache
      * @param allowStubs
      */
     private ModelAndFile resolveParentPom( ModelAndFile child,
@@ -442,10 +433,10 @@
                                                 File childPomFile )
         throws ProjectBuildingException
     {
-        Artifact parentPomArtifact = artifactFactory.createBuildArtifact( modelParent.getGroupId(),
-                                                                          modelParent.getArtifactId(),
-                                                                          modelParent.getVersion(),
-                                                                          "pom" );
+        Artifact parentPomArtifact = new DefaultArtifact( modelParent.getGroupId(),
+            modelParent.getArtifactId(),
+            modelParent.getVersion(),
+            "pom", null, false, Artifact.SCOPE_RUNTIME, null );
 
         try
         {

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Coordinate.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Coordinate.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Coordinate.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Coordinate.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,35 @@
+package org.apache.maven.project.factory;
+
+/** @author Jason van Zyl */
+public class Coordinate
+{
+    private String groupId;
+
+    private String artifactId;
+
+    private String version;
+
+    public Coordinate( String groupId,
+                       String artifactId,
+                       String version )
+    {
+        this.groupId = groupId;
+        this.artifactId = artifactId;
+        this.version = version;
+    }
+
+    public String getGroupId()
+    {
+        return groupId;
+    }
+
+    public String getArtifactId()
+    {
+        return artifactId;
+    }
+
+    public String getVersion()
+    {
+        return version;
+    }
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Coordinate.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Coordinate.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/CoordinateModelReaderSource.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/CoordinateModelReaderSource.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/CoordinateModelReaderSource.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/CoordinateModelReaderSource.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,34 @@
+package org.apache.maven.project.factory;
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.resolver.ArtifactResolver;
+
+import java.io.Reader;
+
+/** @author Jason van Zyl */
+public class CoordinateModelReaderSource
+    implements ModelReaderSource
+{
+    private Coordinate coordinate;
+    
+    private ArtifactResolver artifactResolver;
+
+    public CoordinateModelReaderSource( Coordinate coordinate, ArtifactResolver artifactResolver )
+    {
+        this.coordinate = coordinate;
+
+        this.artifactResolver = artifactResolver;
+    }
+
+    public Reader getReader()
+        throws ModelReaderSourceException
+    {
+        
+        // Now we get into the business of looking for the POMs locally and retrieving them
+        // if they cannot be found ...
+
+        // check local
+
+        return null;
+    }
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/CoordinateModelReaderSource.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/CoordinateModelReaderSource.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/DefaultProjectFactory.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/DefaultProjectFactory.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/DefaultProjectFactory.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/DefaultProjectFactory.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,67 @@
+package org.apache.maven.project.factory;
+
+import org.apache.maven.artifact.resolver.ArtifactResolver;
+import org.apache.maven.model.Model;
+import org.apache.maven.model.Parent;
+import org.apache.maven.project.MavenProject;
+
+import java.util.LinkedList;
+import java.util.List;
+
+/** @author Jason van Zyl */
+public class DefaultProjectFactory
+    implements ProjectFactory
+{
+    /** @plexus.requirement */
+    private ArtifactResolver artifactResolver;
+
+    // Things we need to account for:
+    // - different formats with different versions
+    // - mixins
+    // - exactly where the error occured in parsing any format
+    // - differentiate between parsing, i/o, or any other errors
+    // - the model reader implementer should be able to provide exacting detail on errors
+    // - we must preserve the original model for each project along the way
+    // - how best to share projects that are parsed so they can be cached for long-lived processes
+    // - adding a listener so that elements can be picked up like extensions or profiles so that we don't have to process them again
+
+    // Take the source, determine the model format and version of the format
+    // - could be XML element-based, version 4.0.0, or newer
+    // - could be XML attribute-based, version 1.0.0
+
+    /** @plexus.requirement */
+    private ModelReader modelReader;
+    
+    public MavenProject build( ModelReaderSource source )
+        throws ModelReaderSourceException, ModelReadingException
+    {
+        Model model = modelReader.read( source );
+
+        // We need a copy of the unadulterated model
+        // The project needs to adulterated model
+        // Think about how to build up the projects/models to be efficient
+        // Start the tests
+
+        List lineage = new LinkedList();
+
+        Model currentModel = model;
+
+        lineage.add( currentModel );
+
+        while( currentModel.getParent() != null )
+        {
+            Parent parent = model.getParent();
+
+            Model parentModel = modelReader.read(
+                new CoordinateModelReaderSource( new ParentCoordinateAdapter( parent ), artifactResolver ) );
+
+            currentModel = parentModel;
+
+            lineage.add( currentModel );
+        }
+
+        MavenProject project = new MavenProject();
+
+        return project;
+    }
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/DefaultProjectFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/DefaultProjectFactory.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/FileModelReaderSource.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/FileModelReaderSource.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/FileModelReaderSource.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/FileModelReaderSource.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,31 @@
+package org.apache.maven.project.factory;
+
+import java.io.File;
+import java.io.FileReader;
+import java.io.Reader;
+import java.io.FileNotFoundException;
+
+/** @author Jason van Zyl */
+public class FileModelReaderSource
+    implements ModelReaderSource
+{
+    private File project;
+
+    public FileModelReaderSource( File project )
+    {
+        this.project = project;
+    }
+
+    public Reader getReader()
+        throws ModelReaderSourceException
+    {
+        try
+        {
+            return new FileReader( project );
+        }
+        catch ( FileNotFoundException e )
+        {
+            throw new ModelReaderSourceException( "The project specified does not exist: " + project );
+        }
+    }
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/FileModelReaderSource.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/FileModelReaderSource.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReader.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReader.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReader.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReader.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,12 @@
+package org.apache.maven.project.factory;
+
+import org.apache.maven.model.Model;
+import org.apache.maven.project.factory.ModelReaderSource;
+import org.apache.maven.project.factory.ModelReaderSourceException;
+
+/** @author Jason van Zyl */
+public interface ModelReader
+{
+    Model read( ModelReaderSource source )
+        throws ModelReaderSourceException, ModelReadingException;
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReader.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSource.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSource.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSource.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSource.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,10 @@
+package org.apache.maven.project.factory;
+
+import java.io.Reader;
+
+/** @author Jason van Zyl */
+public interface ModelReaderSource
+{
+    Reader getReader()
+        throws ModelReaderSourceException;
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSource.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSource.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSourceException.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSourceException.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSourceException.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSourceException.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,22 @@
+package org.apache.maven.project.factory;
+
+/** @author Jason van Zyl */
+public class ModelReaderSourceException
+    extends Exception
+{
+    public ModelReaderSourceException( String s )
+    {
+        super( s );
+    }
+
+    public ModelReaderSourceException( String s,
+                                        Throwable throwable )
+    {
+        super( s, throwable );
+    }
+
+    public ModelReaderSourceException( Throwable throwable )
+    {
+        super( throwable );
+    }
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSourceException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReaderSourceException.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReadingException.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReadingException.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReadingException.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReadingException.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,22 @@
+package org.apache.maven.project.factory;
+
+/** @author Jason van Zyl */
+public class ModelReadingException
+    extends Exception
+{
+    public ModelReadingException( String s )
+    {
+        super( s );
+    }
+
+    public ModelReadingException( String s,
+                                   Throwable throwable )
+    {
+        super( s, throwable );
+    }
+
+    public ModelReadingException( Throwable throwable )
+    {
+        super( throwable );
+    }
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReadingException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ModelReadingException.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ParentCoordinateAdapter.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ParentCoordinateAdapter.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ParentCoordinateAdapter.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ParentCoordinateAdapter.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,15 @@
+package org.apache.maven.project.factory;
+
+import org.apache.maven.model.Parent;
+
+/** @author Jason van Zyl */
+public class ParentCoordinateAdapter
+    extends Coordinate
+{
+    private Parent parent;
+
+    public ParentCoordinateAdapter( Parent parent )
+    {
+        super( parent.getGroupId(), parent.getArtifactId(), parent.getVersion() );
+    }
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ParentCoordinateAdapter.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ParentCoordinateAdapter.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/PomArtifact.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/PomArtifact.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/PomArtifact.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/PomArtifact.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,15 @@
+package org.apache.maven.project.factory;
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.DefaultArtifact;
+import org.apache.maven.artifact.versioning.VersionRange;
+
+/** @author Jason van Zyl */
+public class PomArtifact
+    extends DefaultArtifact
+{
+    public PomArtifact( String groupId, String artifactId, String version )
+    {
+        super( groupId, artifactId, VersionRange.createFromVersion( version ), "pom", null, false, Artifact.SCOPE_RUNTIME, null );
+    }
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/PomArtifact.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/PomArtifact.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ProjectFactory.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ProjectFactory.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ProjectFactory.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ProjectFactory.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,12 @@
+package org.apache.maven.project.factory;
+
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.factory.ModelReaderSource;
+import org.apache.maven.project.factory.ModelReaderSourceException;
+
+/** @author Jason van Zyl */
+public interface ProjectFactory
+{
+    MavenProject build( ModelReaderSource source )
+        throws ModelReaderSourceException, ModelReadingException;
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ProjectFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/ProjectFactory.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Xpp3ModelReader.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Xpp3ModelReader.java?rev=620062&view=auto
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Xpp3ModelReader.java (added)
+++ maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Xpp3ModelReader.java Fri Feb  8 18:22:02 2008
@@ -0,0 +1,33 @@
+package org.apache.maven.project.factory;
+
+import org.apache.maven.model.Model;
+import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
+import org.apache.maven.project.factory.ModelReaderSource;
+import org.apache.maven.project.factory.ModelReaderSourceException;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
+
+import java.io.IOException;
+
+/** @author Jason van Zyl */
+public class Xpp3ModelReader
+    implements ModelReader
+{
+    private MavenXpp3Reader reader;
+
+    public Model read( ModelReaderSource source )
+        throws ModelReaderSourceException, ModelReadingException
+    {
+        try
+        {
+            return reader.read( source.getReader() );
+        }
+        catch ( IOException e )
+        {
+            return null;
+        }
+        catch ( XmlPullParserException e )
+        {
+            return null;
+        }
+    }
+}

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Xpp3ModelReader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/CAP/maven-project/src/main/java/org/apache/maven/project/factory/Xpp3ModelReader.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Modified: maven/components/branches/CAP/maven-project/src/main/resources/META-INF/plexus/components.xml
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/main/resources/META-INF/plexus/components.xml?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/main/resources/META-INF/plexus/components.xml (original)
+++ maven/components/branches/CAP/maven-project/src/main/resources/META-INF/plexus/components.xml Fri Feb  8 18:22:02 2008
@@ -46,9 +46,6 @@
           <role-hint>default</role-hint>
         </requirement>
         <requirement>
-          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
-        </requirement>
-        <requirement>
           <role>org.apache.maven.MavenTools</role>
         </requirement>
         <requirement>
@@ -135,9 +132,6 @@
           <role>org.apache.maven.project.path.PathTranslator</role>
         </requirement>
         <requirement>
-          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
-        </requirement>
-        <requirement>
           <role>org.apache.maven.artifact.resolver.ArtifactResolver</role>
           <role-hint>default</role-hint>
         </requirement>
@@ -257,9 +251,6 @@
       </configuration>
       <requirements>
         <requirement>
-          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
-        </requirement>
-        <requirement>
           <role>org.apache.maven.artifact.repository.metadata.RepositoryMetadataManager</role>
         </requirement>
         <requirement>
@@ -274,9 +265,6 @@
       <implementation>org.apache.maven.project.artifact.MavenMetadataSource</implementation>
       <requirements>
         <requirement>
-          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
-        </requirement>
-        <requirement>
           <role>org.apache.maven.artifact.repository.metadata.RepositoryMetadataManager</role>
         </requirement>
         <requirement>
@@ -291,9 +279,6 @@
       <implementation>org.apache.maven.project.artifact.MavenMetadataSource</implementation>
       <requirements>
         <requirement>
-          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
-        </requirement>
-        <requirement>
           <role>org.apache.maven.artifact.repository.metadata.RepositoryMetadataManager</role>
         </requirement>
         <requirement>
@@ -306,11 +291,6 @@
       <role>org.apache.maven.artifact.resolver.metadata.MetadataSource</role>
       <role-hint>default</role-hint>
       <implementation>org.apache.maven.project.artifact.PomMetadataSource</implementation>
-      <requirements>
-        <requirement>
-          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
-        </requirement>
-      </requirements>
     </component>
 
     <component>

Modified: maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java (original)
+++ maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java Fri Feb  8 18:22:02 2008
@@ -21,7 +21,7 @@
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.InvalidRepositoryException;
-import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.DefaultArtifact;
 import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
 import org.apache.maven.artifact.metadata.ResolutionGroup;
@@ -67,16 +67,12 @@
     static class Source
         implements ArtifactMetadataSource
     {
-        private ArtifactFactory artifactFactory;
-
         private final ArtifactRepositoryFactory repositoryFactory;
 
         private final PlexusContainer container;
 
-        public Source( ArtifactFactory artifactFactory, ArtifactRepositoryFactory repositoryFactory,
-                       PlexusContainer container )
+        public Source( ArtifactRepositoryFactory repositoryFactory, PlexusContainer container )
         {
-            this.artifactFactory = artifactFactory;
             this.repositoryFactory = repositoryFactory;
             this.container = container;
         }
@@ -166,9 +162,10 @@
                 }
 
                 VersionRange versionRange = VersionRange.createFromVersionSpec( d.getVersion() );
-                Artifact artifact = artifactFactory.createDependencyArtifact( d.getGroupId(), d.getArtifactId(),
+
+                Artifact artifact = new DefaultArtifact( d.getGroupId(), d.getArtifactId(),
                                                                               versionRange, d.getType(),
-                                                                              d.getClassifier(), scope,
+                                                                              d.getClassifier(), false, scope,
                                                                               inheritedScope );
                 if ( artifact != null )
                 {
@@ -182,7 +179,7 @@
 
     public Source source()
     {
-        return new Source( artifactFactory, repositoryFactory, container );
+        return new Source( repositoryFactory, container );
     }
 
     /**
@@ -200,7 +197,7 @@
         throws ArtifactResolutionException, ArtifactNotFoundException
     {
         return super.resolveTransitively( artifacts, originatingArtifact, localRepository, remoteRepositories,
-                                          new Source( artifactFactory, repositoryFactory, container ), filter );
+                                          new Source( repositoryFactory, container ), filter );
     }
 
     public ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact,
@@ -209,7 +206,7 @@
         throws ArtifactResolutionException, ArtifactNotFoundException
     {
         return super.resolveTransitively( artifacts, originatingArtifact, remoteRepositories, localRepository,
-                                          new Source( artifactFactory, repositoryFactory, container ) );
+                                          new Source( repositoryFactory, container ) );
     }
 
     public void contextualize( Context context )

Modified: maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/artifact/MavenMetadataSourceTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/artifact/MavenMetadataSourceTest.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/artifact/MavenMetadataSourceTest.java (original)
+++ maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/artifact/MavenMetadataSourceTest.java Fri Feb  8 18:22:02 2008
@@ -21,7 +21,6 @@
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.ArtifactUtils;
-import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
 import org.apache.maven.artifact.resolver.filter.ScopeArtifactFilter;
 import org.apache.maven.model.Dependency;
@@ -66,14 +65,12 @@
         List deps = new ArrayList();
         deps.add( dep1 );
         deps.add( dep2 );
-        
-        ArtifactFactory factory = ( ArtifactFactory ) lookup( ArtifactFactory.ROLE );
-        
+
         ArtifactFilter dependencyFilter = new ScopeArtifactFilter( Artifact.SCOPE_COMPILE );
         
         MavenProject project = new MavenProject( new Model() );
         
-        Set result = MavenMetadataSource.createArtifacts( factory, deps, null, dependencyFilter, project );
+        Set result = MavenMetadataSource.createArtifacts( deps, null, dependencyFilter, project );
         
         for ( Iterator it = result.iterator(); it.hasNext(); )
         {
@@ -106,9 +103,7 @@
 
         MavenProject project = new MavenProject( model );
 
-        ArtifactFactory factory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
-
-        project.setArtifacts( project.createArtifacts( factory, null, null ) );
+        project.setArtifacts( project.createArtifacts( null, null ) );
 
         String key = ArtifactUtils.versionlessKey( groupId, artifactId );
 
@@ -159,9 +154,7 @@
 
         injector.injectDefaults( model );
 
-        ArtifactFactory factory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
-
-        project.setArtifacts( project.createArtifacts( factory, null, null ) );
+        project.setArtifacts( project.createArtifacts( null, null ) );
 
         String key = ArtifactUtils.versionlessKey( groupId, artifactId );
 

Modified: maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t07/ProjectInheritanceTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t07/ProjectInheritanceTest.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t07/ProjectInheritanceTest.java (original)
+++ maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t07/ProjectInheritanceTest.java Fri Feb  8 18:22:02 2008
@@ -58,7 +58,6 @@
         File pom1 = new File( pom0Basedir, "p1/pom.xml" );
 
         // load everything...
-        MavenProject project0 = getProjectWithDependencies( pom0 );
         MavenProject project1 = getProjectWithDependencies( pom1 );
 
         assertEquals( pom0Basedir, project1.getParent().getBasedir().getCanonicalFile() );

Modified: maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t11/ProjectInheritanceTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t11/ProjectInheritanceTest.java?rev=620062&r1=620061&r2=620062&view=diff
==============================================================================
--- maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t11/ProjectInheritanceTest.java (original)
+++ maven/components/branches/CAP/maven-project/src/test/java/org/apache/maven/project/inheritance/t11/ProjectInheritanceTest.java Fri Feb  8 18:22:02 2008
@@ -51,15 +51,15 @@
         File localRepo = getLocalRepositoryPath();
 
         File pom0 = new File( localRepo, "p0/pom.xml" );
+
         File pom0Basedir = pom0.getParentFile();
+
         File pom1 = new File( pom0Basedir, "p1/pom.xml" );
 
-        // load the child project, which inherits from p0...
-        MavenProject project0 = getProjectWithDependencies( pom0 );
         MavenProject project1 = getProjectWithDependencies( pom1 );
 
         assertEquals( pom0Basedir, project1.getParent().getBasedir().getCanonicalFile() );
-        assertNull( "dependencyManagement has overwritten the scope of the currently building child project",
-                    project1.getArtifact().getScope() );
+
+        assertNull( "dependencyManagement has overwritten the scope of the currently building child project", project1.getArtifact().getScope() );
     }
 }