You are viewing a plain text version of this content. The canonical link for it is here.
Posted to m2-dev@maven.apache.org by jv...@apache.org on 2004/07/01 03:55:43 UTC

cvs commit: maven-components/maven-core/src/test/java/org/apache/maven MavenTestCase.java

jvanzyl     2004/06/30 18:55:43

  Modified:    maven-core/src/main/java/org/apache/maven Maven.java
               maven-core/src/main/resources/META-INF/plexus components.xml
               maven-core/src/test/java/org/apache/maven MavenTestCase.java
  Added:       maven-core/src/main/resources/META-INF/plexus plexus.xml
  Removed:     maven-core/src/main/resources/org/apache/maven plexus.xml
  Log:
  o made some changes to plexus so that the container automatically discovers
    META-INF/plexus/plexus.xml which can contain arbitrary container
    configuration. This means that you don't have to specify the URL
    of a configuration which makes embedding easier.
  
  o the plexus.xml file now contains some configuration for the component
    discovery mechanism is plexus and this configuration is processed
    first before any plugins are discovered.
  
  o move all the component configurations to META-INF/plexus/components.xml
    so that all the components are automatically discovered when the maven
    component is embedded.
  
  Revision  Changes    Path
  1.7       +1 -5      maven-components/maven-core/src/main/java/org/apache/maven/Maven.java
  
  Index: Maven.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-core/src/main/java/org/apache/maven/Maven.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- Maven.java	30 Jun 2004 22:03:36 -0000	1.6
  +++ Maven.java	1 Jul 2004 01:55:43 -0000	1.7
  @@ -56,10 +56,6 @@
               classWorld = bootClassWorld;
           }
   
  -        URL url = Maven.class.getResource( "plexus.xml" );
  -
  -        embedder.setConfiguration( url );
  -
           embedder.addContextValue( "maven.home", mavenHome );
   
           embedder.start( classWorld );
  
  
  
  1.3       +143 -0    maven-components/maven-core/src/main/resources/META-INF/plexus/components.xml
  
  Index: components.xml
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-core/src/main/resources/META-INF/plexus/components.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- components.xml	14 Jun 2004 17:42:41 -0000	1.2
  +++ components.xml	1 Jul 2004 01:55:43 -0000	1.3
  @@ -1,2 +1,145 @@
   <component-set>
  +  <components>
  +    <component>
  +      <role>org.apache.maven.MavenCore</role>
  +      <implementation>org.apache.maven.DefaultMavenCore</implementation>
  +      <requirements>
  +        <requirement>
  +          <role>org.apache.maven.plugin.PluginManager</role>
  +        </requirement>
  +        <requirement>
  +          <role>org.apache.maven.project.MavenProjectBuilder</role>
  +        </requirement>
  +        <requirement>
  +          <role>org.codehaus.plexus.i18n.I18N</role>
  +        </requirement>
  +        <requirement>
  +          <role>org.apache.maven.lifecycle.MavenLifecycleManager</role>
  +        </requirement>
  +      </requirements>
  +    </component>
  +    <component>
  +      <role>org.codehaus.plexus.i18n.I18N</role>
  +      <implementation>org.codehaus.plexus.i18n.DefaultI18N</implementation>
  +      <configuration>
  +        <default-bundle-name>org.apache.maven.messages.messages</default-bundle-name>
  +      </configuration>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.lifecycle.MavenLifecycleManager</role>
  +      <implementation>org.apache.maven.lifecycle.DefaultMavenLifecycleManager</implementation>
  +      <configuration>
  +        <lifecycle-phases>
  +          <lifecycle-phase implementation="org.apache.maven.lifecycle.phase.GoalDecorationPhase"/>
  +          <lifecycle-phase implementation="org.apache.maven.lifecycle.phase.GoalResolutionPhase"/>
  +          <lifecycle-phase implementation="org.apache.maven.lifecycle.phase.PluginDownloadPhase"/>
  +          <lifecycle-phase implementation="org.apache.maven.lifecycle.phase.PluginDependencyResolutionPhase"/>
  +          <lifecycle-phase implementation="org.apache.maven.lifecycle.phase.PluginDependencyDownloadPhase"/>
  +          <lifecycle-phase implementation="org.apache.maven.lifecycle.phase.DependencyResolutionPhase"/>
  +          <lifecycle-phase implementation="org.apache.maven.lifecycle.phase.DependencyDownloadPhase"/>
  +          <lifecycle-phase implementation="org.apache.maven.lifecycle.phase.GoalAttainmentPhase"/>
  +        </lifecycle-phases>
  +      </configuration>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.project.MavenProjectBuilder</role>
  +      <implementation>org.apache.maven.project.DefaultMavenProjectBuilder</implementation>
  +      <requirements>
  +        <requirement>
  +          <role>org.apache.maven.project.inheritance.ModelInheritanceAssembler</role>
  +        </requirement>
  +         <requirement>
  +          <role>org.apache.maven.artifact.factory.MavenArtifactFactory</role>
  +        </requirement>
  +        <requirement>
  +          <role>org.apache.maven.wagon.manager.WagonManager</role>
  +        </requirement>
  +        <requirement>
  +          <role>org.apache.maven.project.validation.ModelValidator</role>
  +        </requirement>
  +        <requirement>
  +          <role>org.apache.maven.project.path.PathTranslator</role>
  +        </requirement>
  +      </requirements>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.artifact.factory.MavenArtifactFactory</role>
  +      <implementation>org.apache.maven.artifact.factory.DefaultMavenArtifactFactory</implementation>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.artifact.collector.ArtifactCollector</role>
  +      <implementation>org.apache.maven.artifact.collector.DefaultArtifactCollector</implementation>
  +      <requirements>
  +        <requirement>
  +          <role>org.apache.maven.artifact.resolver.ArtifactResolver</role>
  +        </requirement>
  +      </requirements>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.artifact.resolver.ArtifactResolver</role>
  +      <implementation>org.apache.maven.artifact.resolver.DefaultArtifactResolver</implementation>
  +      <requirements>
  +        <requirement>
  +          <role>org.apache.maven.artifact.downloader.ArtifactDownloader</role>
  +        </requirement>
  +        <requirement>
  +          <role>org.apache.maven.artifact.snapshot.SnapshotResolver</role>
  +        </requirement>
  +      </requirements>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.artifact.downloader.ArtifactDownloader</role>
  +      <implementation>org.apache.maven.artifact.downloader.DefaultArtifactDownloader</implementation>
  +      <requirements>
  +        <requirement>
  +          <role>org.apache.maven.wagon.manager.WagonManager</role>
  +        </requirement>
  +      </requirements>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.project.inheritance.ModelInheritanceAssembler</role>
  +      <implementation>org.apache.maven.project.inheritance.DefaultModelInheritanceAssembler</implementation>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.project.validation.ModelValidator</role>
  +      <implementation>org.apache.maven.project.validation.DefaultModelValidator</implementation>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.artifact.snapshot.SnapshotResolver</role>
  +      <implementation>org.apache.maven.artifact.snapshot.DefaultSnapshotResolver</implementation>
  +      <requirements>
  +        <requirement>
  +          <role>org.apache.maven.wagon.manager.WagonManager</role>
  +        </requirement>
  +        <requirement>
  +          <role>org.apache.maven.artifact.downloader.ArtifactDownloader</role>
  +        </requirement>
  +      </requirements>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.artifact.installer.ArtifactInstaller</role>
  +      <implementation>org.apache.maven.artifact.installer.DefaultArtifactInstaller</implementation>
  +      <requirements>
  +        <requirement>
  +         <role>org.apache.maven.artifact.factory.MavenArtifactFactory</role>
  +       </requirement>
  +      </requirements>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.artifact.deployer.ArtifactDeployer</role>
  +      <implementation>org.apache.maven.artifact.deployer.DefaultArtifactDeployer</implementation>
  +      <requirements>
  +        <requirement>
  +         <role>org.apache.maven.artifact.factory.MavenArtifactFactory</role>
  +       </requirement>
  +       <requirement>
  +          <role>org.apache.maven.wagon.manager.WagonManager</role>
  +       </requirement>
  +      </requirements>
  +    </component>
  +    <component>
  +      <role>org.apache.maven.project.path.PathTranslator</role>
  +      <implementation>org.apache.maven.project.path.DefaultPathTranslator</implementation>
  +    </component>
  +  </components>
   </component-set>
  
  
  
  1.1                  maven-components/maven-core/src/main/resources/META-INF/plexus/plexus.xml
  
  Index: plexus.xml
  ===================================================================
  <plexus>
    <component-discoverer-manager implementation="org.codehaus.plexus.component.discovery.DefaultComponentDiscovererManager">
      <listeners>
        <listener>
          <role>org.apache.maven.plugin.PluginManager</role>
        </listener>
      </listeners>
      <component-discoverers>
        <component-discoverer implementation="org.apache.maven.plugin.MavenPluginDiscoverer"/>
      </component-discoverers>
    </component-discoverer-manager>
    <resources>
      <jar-repository>${maven.home}/plugins</jar-repository>
    </resources>
    <components>
      <component>
        <role>org.apache.maven.plugin.PluginManager</role>
        <implementation>org.apache.maven.plugin.DefaultPluginManager</implementation>
        <configuration>
          <maven-home>${maven.home}</maven-home>
        </configuration>
      </component>
    </components>
  </plexus>
  
  
  
  1.3       +3 -26     maven-components/maven-core/src/test/java/org/apache/maven/MavenTestCase.java
  
  Index: MavenTestCase.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-core/src/test/java/org/apache/maven/MavenTestCase.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- MavenTestCase.java	27 Jun 2004 07:39:08 -0000	1.2
  +++ MavenTestCase.java	1 Jul 2004 01:55:43 -0000	1.3
  @@ -16,11 +16,10 @@
    * limitations under the License.
    */
   
  -import org.codehaus.plexus.PlexusTestCase;
  -import org.codehaus.classworlds.ClassWorld;
   import org.codehaus.classworlds.ClassRealm;
  +import org.codehaus.classworlds.ClassWorld;
  +import org.codehaus.plexus.PlexusTestCase;
   
  -import java.io.InputStream;
   import java.io.File;
   
   /**
  @@ -41,15 +40,6 @@
           pluginsDirectory.mkdirs();
       }
   
  -    // We want to provide an environment, for all the maven components being tested, that
  -    // mocks for standard conditions of execution. Which means setting up some values like:
  -    //
  -    // maven.home
  -    // maven.home.local
  -    //
  -    // And using the same plexus configuration for testing that will be used during the
  -    // normal execution of maven by users.
  -
       protected void customizeContext()
           throws Exception
       {
  @@ -62,18 +52,5 @@
           getContainer().addContextValue( "maven.home", new File( getBasedir(), "target/maven.home" ).getPath() );
   
           getContainer().addContextValue( "maven.home.local", new File( getBasedir(), "target/maven.home.local" ).getPath() );
  -    }
  -
  -    public InputStream getCustomConfiguration()
  -        throws Exception
  -    {
  -        ClassLoader cl = Thread.currentThread().getContextClassLoader();
  -
  -        InputStream is = cl.getResourceAsStream( "org/apache/maven/plexus.xml" );
  -
  -        if ( is == null )
  -            throw new Exception( "Could not find the maven configuration file." );
  -
  -        return is;
       }
   }