You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ev...@apache.org on 2005/09/27 17:32:36 UTC
svn commit: r291976 -
/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/DefaultMavenOneMetadataHelper.java
Author: evenisse
Date: Tue Sep 27 08:32:31 2005
New Revision: 291976
URL: http://svn.apache.org/viewcvs?rev=291976&view=rev
Log:
o Add developers
o Add dependencies
o Fix notifiers initialization
Modified:
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/DefaultMavenOneMetadataHelper.java
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/DefaultMavenOneMetadataHelper.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/DefaultMavenOneMetadataHelper.java?rev=291976&r1=291975&r2=291976&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/DefaultMavenOneMetadataHelper.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/DefaultMavenOneMetadataHelper.java Tue Sep 27 08:32:31 2005
@@ -17,6 +17,8 @@
*/
import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.model.project.ProjectDependency;
+import org.apache.maven.continuum.model.project.ProjectDeveloper;
import org.apache.maven.continuum.model.project.ProjectNotifier;
import org.apache.maven.continuum.notification.ContinuumRecipientSource;
import org.codehaus.plexus.logging.AbstractLogEnabled;
@@ -158,6 +160,75 @@
}
// ----------------------------------------------------------------------
+ // Developers
+ // ----------------------------------------------------------------------
+
+ Xpp3Dom developers = mavenProject.getChild( "developers" );
+
+ if ( developers != null )
+ {
+ Xpp3Dom[] developersList = developers.getChildren();
+
+ List cds = new ArrayList();
+
+ for ( int i = 0; i < developersList.length; i++ )
+ {
+ Xpp3Dom developer = developersList[i];
+
+ ProjectDeveloper cd = new ProjectDeveloper();
+
+ cd.setScmId( getValue( developer, "id", null ) );
+
+ cd.setName( getValue( developer, "name", null ) );
+
+ cd.setEmail( getValue( developer, "email", null ) );
+
+ cds.add( cd );
+ }
+
+ project.setDevelopers( cds );
+ }
+
+ // ----------------------------------------------------------------------
+ // Dependencies
+ // ----------------------------------------------------------------------
+
+ Xpp3Dom dependencies = mavenProject.getChild( "dependencies" );
+
+ if ( dependencies != null )
+ {
+ Xpp3Dom[] dependenciesList = dependencies.getChildren();
+
+ List deps = new ArrayList();
+
+ for ( int i = 0; i < dependenciesList.length; i++ )
+ {
+ Xpp3Dom dependency = dependenciesList[i];
+
+ ProjectDependency cd = new ProjectDependency();
+
+ if ( getValue( dependency, "groupId", null ) != null )
+ {
+ cd.setGroupId( getValue( dependency, "groupId", null ) );
+
+ cd.setArtifactId( getValue( dependency, "artifactId", null ) );
+ }
+ else
+ {
+ cd.setGroupId( getValue( dependency, "id", null ) );
+
+ cd.setArtifactId( getValue( dependency, "id", null ) );
+ }
+
+ cd.setVersion( getValue( dependency, "version", null ) );
+
+ deps.add( cd );
+ }
+
+ project.setDependencies( deps );
+ }
+
+ // ----------------------------------------------------------------------
// notifiers
// ----------------------------------------------------------------------
@@ -206,10 +277,12 @@
props.put( ContinuumRecipientSource.ADDRESS_FIELD, nagEmailAddress );
notifier.setConfiguration( props );
+
+ notifier.setFrom( ProjectNotifier.FROM_PROJECT );
}
}
- if ( notifiers == null && notifier.getConfiguration().isEmpty() )
+ if ( notifier == null && notifier.getConfiguration().isEmpty() )
{
throw new MavenOneMetadataHelperException(
"Missing 'nagEmailAddress' element in the 'build' element in the POM." );
@@ -220,8 +293,27 @@
{
notifiers = new ArrayList();
}
-
notifiers.add( notifier );
+
+ // Add notifier defined by user
+ for ( Iterator i = project.getNotifiers().iterator(); i.hasNext(); )
+ {
+ ProjectNotifier notif = (ProjectNotifier) i.next();
+
+ if ( notif.isFromUser() )
+ {
+ ProjectNotifier userNotifier = new ProjectNotifier();
+
+ userNotifier.setType( notif.getType() );
+
+ userNotifier.setConfiguration( notif.getConfiguration() );
+
+ userNotifier.setFrom( notif.getFrom() );
+
+ notifiers.add( userNotifier );
+ }
+ }
+
}
// ----------------------------------------------------------------------