Author: brett
Date: Thu Feb 14 13:07:41 2008
New Revision: 627872

URL: http://svn.apache.org/viewvc?rev=627872&view=rev
Log:
[ARCHETYPE-117] correct NPE introduced by previous change

Modified:
    
maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeFactory.java
    
maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java
    
maven/archetype/trunk/archetype-plugin/src/test/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfiguratorTest.java

Modified: 
maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeFactory.java
URL: 
http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeFactory.java?rev=627872&r1=627871&r2=627872&view=diff
==============================================================================
--- 
maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeFactory.java
 (original)
+++ 
maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeFactory.java
 Thu Feb 14 13:07:41 2008
@@ -145,7 +145,10 @@
                 )
             );
         }
-        configuration.setDefaultProperty( Constants.PACKAGE, 
configuration.getProperty( Constants.GROUP_ID ) );
+        if ( configuration.getProperty( Constants.GROUP_ID ) != null )
+        {
+            configuration.setDefaultProperty( Constants.PACKAGE, 
configuration.getProperty( Constants.GROUP_ID ) );
+        }
 
         return configuration;
     }

Modified: 
maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java
URL: 
http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java?rev=627872&r1=627871&r2=627872&view=diff
==============================================================================
--- 
maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java
 (original)
+++ 
maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfigurator.java
 Thu Feb 14 13:07:41 2008
@@ -196,8 +196,11 @@
 
                     if ( !archetypeConfiguration.isConfigured( 
requiredProperty ) )
                     {
-                        archetypeConfiguration.setProperty( requiredProperty, 
archetypeConfiguration.getDefaultValue(
-                            requiredProperty ) );
+                        if ( archetypeConfiguration.getDefaultValue( 
requiredProperty ) != null )
+                        {
+                            archetypeConfiguration.setProperty( 
requiredProperty, archetypeConfiguration.getDefaultValue(
+                                requiredProperty ) );
+                        }
                     }
                 }
 

Modified: 
maven/archetype/trunk/archetype-plugin/src/test/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfiguratorTest.java
URL: 
http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/test/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfiguratorTest.java?rev=627872&r1=627871&r2=627872&view=diff
==============================================================================
--- 
maven/archetype/trunk/archetype-plugin/src/test/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfiguratorTest.java
 (original)
+++ 
maven/archetype/trunk/archetype-plugin/src/test/java/org/apache/maven/archetype/ui/DefaultArchetypeGenerationConfiguratorTest.java
 Thu Feb 14 13:07:41 2008
@@ -108,4 +108,27 @@
         assertEquals( "1.0-SNAPSHOT", request.getVersion() );
         assertEquals( "preset-groupId", request.getPackage() );
     }
+
+    // TODO: should test this in interactive mode to check for prompting
+    public void testOldArchetypeGeneratedFieldsDefaultsMissingGroupId()
+        throws PrompterException, IOException, UnknownGroup, 
ArchetypeSelectionFailure, UnknownArchetype,
+        ArchetypeNotDefined, ArchetypeGenerationConfigurationFailure
+    {
+        ArchetypeGenerationRequest request = new ArchetypeGenerationRequest();
+        request.setArchetypeGroupId( "archetypeGroupId" );
+        request.setArchetypeArtifactId( "archetypeArtifactId" );
+        request.setArchetypeVersion( "archetypeVersion" );
+        Properties properties = new Properties();
+        properties.setProperty( "artifactId", "preset-artifactId" );
+
+        try
+        {
+            configurator.configureArchetype( request, Boolean.FALSE, 
properties );
+            fail( "Archetype was not fully configured - fail" );
+        }
+        catch ( ArchetypeNotConfigured archetypeNotDefined )
+        {
+            assertTrue( true );
+        }
+    }
 }


Reply via email to