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 tr...@apache.org on 2005/01/06 14:40:44 UTC

cvs commit: maven-components/maven-archetype/maven-archetype-core/src/test/java/org/apache/maven/archetype/descriptor ArchetypeDescriptorBuilderTest.java

trygvis     2005/01/06 05:40:44

  Modified:    maven-archetype/maven-archetype-core/src/main/java/org/apache/maven/archetype
                        DefaultArchetype.java
               maven-archetype/maven-archetype-core/src/main/java/org/apache/maven/archetype/descriptor
                        ArchetypeDescriptorBuilder.java
               maven-archetype/maven-archetype-core/src/test/java/org/apache/maven/archetype/descriptor
                        ArchetypeDescriptorBuilderTest.java
  Log:
  o Improving test case.
  o Fixing proper reading of the resources sections.
  
  Revision  Changes    Path
  1.3       +29 -6     maven-components/maven-archetype/maven-archetype-core/src/main/java/org/apache/maven/archetype/DefaultArchetype.java
  
  Index: DefaultArchetype.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-archetype/maven-archetype-core/src/main/java/org/apache/maven/archetype/DefaultArchetype.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultArchetype.java	6 Jan 2005 13:03:10 -0000	1.2
  +++ DefaultArchetype.java	6 Jan 2005 13:40:44 -0000	1.3
  @@ -87,7 +87,7 @@
           }
   
           // ----------------------------------------------------------------------
  -        //
  +        // Load the descriptor
           // ----------------------------------------------------------------------
   
           String outputDirectory = (String) parameters.get( "outputDirectory" );
  @@ -124,6 +124,10 @@
               throw new ArchetypeDescriptorException( "Error reading the " + ARCHETYPE_DESCRIPTOR + " descriptor.", e );
           }
   
  +        // ----------------------------------------------------------------------
  +        // Set up the Velocity context
  +        // ----------------------------------------------------------------------
  +
           Context context = new VelocityContext();
   
           context.put( "package", packageName );
  @@ -137,17 +141,25 @@
               context.put( key, value );
           }
   
  +        // ----------------------------------------------------------------------
  +        // Process the templates
  +        // ----------------------------------------------------------------------
  +
           ClassLoader old = Thread.currentThread().getContextClassLoader();
   
           Thread.currentThread().setContextClassLoader( archetypeJarLoader );
   
           try
           {
  -            processTemplate( outputDirectory, context, ARCHETYPE_POM, null );
  +            processTemplate( outputDirectory, context, ARCHETYPE_POM, false, null );
   
               processSources( outputDirectory, context, descriptor.getSources(), packageName );
   
  +            processResources( outputDirectory, context, descriptor.getResources(), packageName );
  +
               processSources( outputDirectory, context, descriptor.getTestSources(), packageName );
  +
  +            processResources( outputDirectory, context, descriptor.getTestResources(), packageName );
           }
           catch ( Exception e )
           {
  @@ -170,16 +182,27 @@
           {
               String template = (String) i.next();
   
  -            processTemplate( outputDirectory, context, template, packageName );
  +            processTemplate( outputDirectory, context, template, true, packageName );
  +        }
  +    }
  +
  +    protected void processResources( String outputDirectory, Context context, List resources, String packageName )
  +        throws Exception
  +    {
  +        for ( Iterator i = resources.iterator(); i.hasNext(); )
  +        {
  +            String template = (String) i.next();
  +
  +            processTemplate( outputDirectory, context, template, false, packageName );
           }
       }
   
  -    protected void processTemplate( String outputDirectory, Context context, String template, String packageName )
  +    protected void processTemplate( String outputDirectory, Context context, String template, boolean packageInFileName, String packageName )
           throws Exception
       {
           File f;
   
  -        if ( packageName != null )
  +        if ( packageInFileName && packageName != null )
           {
               String path = packageName.replace( '.', '/' );
   
  
  
  
  1.3       +4 -4      maven-components/maven-archetype/maven-archetype-core/src/main/java/org/apache/maven/archetype/descriptor/ArchetypeDescriptorBuilder.java
  
  Index: ArchetypeDescriptorBuilder.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-archetype/maven-archetype-core/src/main/java/org/apache/maven/archetype/descriptor/ArchetypeDescriptorBuilder.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ArchetypeDescriptorBuilder.java	6 Jan 2005 13:03:10 -0000	1.2
  +++ ArchetypeDescriptorBuilder.java	6 Jan 2005 13:40:44 -0000	1.3
  @@ -52,7 +52,7 @@
   
           if ( resources != null )
           {
  -            Xpp3Dom[] resourceList = resources.getChildren( "source" );
  +            Xpp3Dom[] resourceList = resources.getChildren( "resource" );
   
               for ( int i = 0; i < resourceList.length; i++ )
               {
  @@ -72,11 +72,11 @@
               }
           }
   
  -        Xpp3Dom testResources = dom.getChild( "sources" );
  +        Xpp3Dom testResources = dom.getChild( "testResources" );
   
           if ( testResources != null )
           {
  -            Xpp3Dom[] testResourceList = sources.getChildren( "source" );
  +            Xpp3Dom[] testResourceList = testResources.getChildren( "resource" );
   
               for ( int i = 0; i < testResourceList.length; i++ )
               {
  
  
  
  1.3       +23 -7     maven-components/maven-archetype/maven-archetype-core/src/test/java/org/apache/maven/archetype/descriptor/ArchetypeDescriptorBuilderTest.java
  
  Index: ArchetypeDescriptorBuilderTest.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-archetype/maven-archetype-core/src/test/java/org/apache/maven/archetype/descriptor/ArchetypeDescriptorBuilderTest.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ArchetypeDescriptorBuilderTest.java	6 Jan 2005 13:03:10 -0000	1.2
  +++ ArchetypeDescriptorBuilderTest.java	6 Jan 2005 13:40:44 -0000	1.3
  @@ -38,16 +38,16 @@
               "    <source>source1</source>" +
               "  </sources>" +
               "  <resources>" +
  -            "    <source>source0</source>" +
  -            "    <source>source1</source>" +
  +            "    <resource>resource0</resource>" +
  +            "    <resource>resource1</resource>" +
               "  </resources>" +
               "  <testSources>" +
  -            "    <source>source0</source>" +
  -            "    <source>source1</source>" +
  +            "    <source>testSource0</source>" +
  +            "    <source>testSource1</source>" +
               "  </testSources>" +
               "  <testResources>" +
  -            "    <source>source0</source>" +
  -            "    <source>source1</source>" +
  +            "    <resource>testResource0</resource>" +
  +            "    <resource>testResource1</resource>" +
               "  </testResources>" +
               "</archetype>";
   
  @@ -59,10 +59,26 @@
   
           assertEquals( 2, descriptor.getSources().size() );
   
  +        assertEquals( "source0", descriptor.getSources().get( 0 ) );
  +
  +        assertEquals( "source1", descriptor.getSources().get( 1 ) );
  +
           assertEquals( 2, descriptor.getResources().size() );
   
  +        assertEquals( "resource0", descriptor.getResources().get( 0 ) );
  +
  +        assertEquals( "resource1", descriptor.getResources().get( 1 ) );
  +
           assertEquals( 2, descriptor.getTestSources().size() );
   
  +        assertEquals( "testSource0", descriptor.getTestSources().get( 0 ) );
  +
  +        assertEquals( "testSource1", descriptor.getTestSources().get( 1 ) );
  +
           assertEquals( 2, descriptor.getTestResources().size() );
  +
  +        assertEquals( "testResource0", descriptor.getTestResources().get( 0 ) );
  +
  +        assertEquals( "testResource1", descriptor.getTestResources().get( 1 ) );
       }
   }