You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ep...@apache.org on 2006/09/21 02:12:33 UTC

svn commit: r448412 [1/4] - in /maven/continuum/branches/release-integration/continuum: ./ continuum-api/ continuum-api/src/main/java/org/apache/maven/continuum/execution/ continuum-api/src/main/java/org/apache/maven/continuum/project/builder/ continuu...

Author: epunzalan
Date: Wed Sep 20 17:12:28 2006
New Revision: 448412

URL: http://svn.apache.org/viewvc?view=rev&rev=448412
Log:
merged with trunk at rev 448238

Added:
    maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/execution/ContinuumBuildCancelledException.java   (with props)
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/   (props changed)
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/src/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/src/test/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/src/test/java/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/org/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/src/test/java/org/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/org/apache/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/src/test/java/org/apache/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/continuum/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/continuum/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/continuum/testprojects/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/continuum/testprojects/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/continuum/testprojects/timeout/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/continuum/testprojects/timeout/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/TestAction.java   (with props)
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/buildcontroller/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/buildcontroller/
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/buildcontroller/
      - copied from r448139, maven/continuum/trunk/continuum-core/src/test/resources/org/apache/maven/continuum/buildcontroller/
    maven/continuum/branches/release-integration/continuum/continuum-model/src/main/mdo/continuum.xml   (with props)
    maven/continuum/branches/release-integration/continuum/continuum-store/src/test/resources/
      - copied from r448139, maven/continuum/trunk/continuum-store/src/test/resources/
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/CancelBuildAction.java   (with props)
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ContinuumConfirmAction.java   (with props)
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/xmlrpc/
      - copied from r448139, maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/xmlrpc/
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/ProjectEditAction-projectSave-validation.xml   (with props)
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/confirmBuildDefinitionRemoval.jsp
      - copied unchanged from r448139, maven/continuum/trunk/continuum-webapp/src/main/webapp/confirmBuildDefinitionRemoval.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/confirmGroupRemoval.jsp
      - copied unchanged from r448139, maven/continuum/trunk/continuum-webapp/src/main/webapp/confirmGroupRemoval.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/confirmScheduleRemoval.jsp
      - copied unchanged from r448139, maven/continuum/trunk/continuum-webapp/src/main/webapp/confirmScheduleRemoval.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/confirmation.jsp
      - copied unchanged from r448139, maven/continuum/trunk/continuum-webapp/src/main/webapp/confirmation.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/images/cancelbuild.gif
      - copied unchanged from r448139, maven/continuum/trunk/continuum-webapp/src/main/webapp/images/cancelbuild.gif
Removed:
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumUnitTest.java
    maven/continuum/branches/release-integration/continuum/continuum-model/src/main/mdo/continuum.mdo
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/interceptor/ContinuumInterceptor.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/ProjectEditAction-validation.xml
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/deleteBuildDefinition.jsp
Modified:
    maven/continuum/branches/release-integration/continuum/continuum-api/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/AbstractContinuumProjectBuilder.java
    maven/continuum/branches/release-integration/continuum/continuum-cc/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-core-it/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-core/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/BuildProjectTask.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/evaluator/BuildProjectTaskViabilityEvaluator.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/queue/CheckOutTask.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/main/resources/META-INF/plexus/components.xml
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/pom.xml   (contents, props changed)
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/continuum/testprojects/timeout/TimeoutTest.java   (contents, props changed)
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/buildcontroller/BuildProjectTaskExecutorTest.java   (contents, props changed)
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/DefaultContinuumTest.xml
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/buildcontroller/BuildProjectTaskExecutorTest.xml   (contents, props changed)
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.xml
    maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/projects/continuum/continuum-core/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-model/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-notifiers/continuum-notifier-api/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-notifiers/continuum-notifier-irc/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-notifiers/continuum-notifier-jabber/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-notifiers/continuum-notifier-msn/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-notifiers/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-plexus-application/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-release/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-release/src/test/java/org/apache/maven/continuum/release/executors/ReleaseTaskExecutorTest.java
    maven/continuum/branches/release-integration/continuum/continuum-rpc-client/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-sandbox/continuum-python/continuum.py
    maven/continuum/branches/release-integration/continuum/continuum-store/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java
    maven/continuum/branches/release-integration/continuum/continuum-store/src/test/java/org/apache/maven/continuum/store/ContinuumStoreTest.java
    maven/continuum/branches/release-integration/continuum/continuum-store/src/test/resources/log4j.xml   (contents, props changed)
    maven/continuum/branches/release-integration/continuum/continuum-test/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java
    maven/continuum/branches/release-integration/continuum/continuum-web/pom.xml
    maven/continuum/branches/release-integration/continuum/continuum-web/src/main/resources/templates/screens/ProjectBuild.vm
    maven/continuum/branches/release-integration/continuum/continuum-webapp/   (props changed)
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/AbstractNotifierEditAction.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectEditAction.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/UserGroupManagementAction.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/UserManagementAction.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/BuildNowCell.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/StateCell.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/jsp/ui/IfAuthorizedTag.java
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/xmlrpc/DefaultXmlRpcService.java   (contents, props changed)
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/java/org/apache/maven/continuum/web/xmlrpc/XmlRpcService.java   (contents, props changed)
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/META-INF/plexus/application.xml
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/localization/Continuum.properties
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/IrcNotifierEditAction-ircNotifierSave-validation.xml
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/JabberNotifierEditAction-jabberNotifierSave-validation.xml
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/MailNotifierEditAction-mailNotifierSave-validation.xml
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/org/apache/maven/continuum/web/action/MsnNotifierEditAction-msnNotifierSave-validation.xml
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/template/default/controlfooter.ftl
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/resources/xwork.xml
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/WEB-INF/   (props changed)
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/WEB-INF/web.xml
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/addMavenOneProject.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/addMavenTwoProject.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/buildResult.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/buildResults.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/components/buildDefinitionGroupSummaryComponent.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/components/buildDefinitionSummaryComponent.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/components/failureComponent.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/components/projectSummaryComponent.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/configurationEdit.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/editSchedule.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/groupSummary.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/index.jsp   (contents, props changed)
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/navigations/DefaultBottom.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/navigations/Menu.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/notifierIrc.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/notifierJabber.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/notifierMail.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/notifierMsn.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/notifierSelectType.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/projectEdit.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/projectGroupBuildDefinition.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/projectGroupMembers.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/projectGroupNotifier.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/projectGroupSummary.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/projectView.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/schedules.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/summary.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/surefireReport.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/user.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/userGroup.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/userGroups.jsp
    maven/continuum/branches/release-integration/continuum/continuum-webapp/src/main/webapp/users.jsp
    maven/continuum/branches/release-integration/continuum/continuum-xmlrpc/pom.xml
    maven/continuum/branches/release-integration/continuum/pom.xml

Modified: maven/continuum/branches/release-integration/continuum/continuum-api/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-api/pom.xml?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-api/pom.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-api/pom.xml Wed Sep 20 17:12:28 2006
@@ -7,7 +7,6 @@
   <modelVersion>4.0.0</modelVersion>
   <artifactId>continuum-api</artifactId>
   <name>Continuum API</name>
-  <version>1.1-SNAPSHOT</version>
   <dependencies>
     <dependency>
       <groupId>org.codehaus.plexus</groupId>

Added: maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/execution/ContinuumBuildCancelledException.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/execution/ContinuumBuildCancelledException.java?view=auto&rev=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/execution/ContinuumBuildCancelledException.java (added)
+++ maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/execution/ContinuumBuildCancelledException.java Wed Sep 20 17:12:28 2006
@@ -0,0 +1,35 @@
+package org.apache.maven.continuum.execution;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:trygvis@inamo.no">Trygve Laugst&oslash;l</a>
+ * @version $Id: ContinuumBuildCancelledException.java 446647 2006-09-15 15:59:47Z kenney $
+ */
+public class ContinuumBuildCancelledException
+    extends ContinuumBuildExecutorException
+{
+    public ContinuumBuildCancelledException( String message )
+    {
+        super( message );
+    }
+
+    public ContinuumBuildCancelledException( String message, Throwable cause )
+    {
+        super( message, cause );
+    }
+}

Propchange: maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/execution/ContinuumBuildCancelledException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/AbstractContinuumProjectBuilder.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/AbstractContinuumProjectBuilder.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/AbstractContinuumProjectBuilder.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/AbstractContinuumProjectBuilder.java Wed Sep 20 17:12:28 2006
@@ -93,6 +93,8 @@
         File continuumTmpDir = new File( TMP_DIR, "continuum" );
 
         File uploadDirectory = new File( continuumTmpDir, baseDirectory );
+        // resolve any '..' as it will cause issues
+        uploadDirectory = uploadDirectory.getCanonicalFile();
 
         uploadDirectory.mkdirs();
 

Modified: maven/continuum/branches/release-integration/continuum/continuum-cc/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-cc/pom.xml?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-cc/pom.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-cc/pom.xml Wed Sep 20 17:12:28 2006
@@ -7,7 +7,6 @@
   <modelVersion>4.0.0</modelVersion>
   <artifactId>continuum-cc</artifactId>
   <name>Continuum Cruise Control Importer</name>
-  <version>1.1-SNAPSHOT</version>
   <build>
     <plugins>
       <plugin>

Modified: maven/continuum/branches/release-integration/continuum/continuum-core-it/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core-it/pom.xml?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core-it/pom.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core-it/pom.xml Wed Sep 20 17:12:28 2006
@@ -7,7 +7,6 @@
   <modelVersion>4.0.0</modelVersion>
   <artifactId>continuum-core-it</artifactId>
   <name>Continuum Core Integration Test</name>
-  <version>1.1-SNAPSHOT</version>
   <build>
     <plugins>
       <plugin>
@@ -50,7 +49,7 @@
       <groupId>org.apache.maven.continuum</groupId>
       <artifactId>continuum-webapp</artifactId>
       <type>pom</type>
-      <version>1.1-SNAPSHOT</version>
+      <version>${pom.version}</version>
     </dependency>
     <dependency>
       <groupId>org.codehaus.plexus</groupId>

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/pom.xml?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/pom.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/pom.xml Wed Sep 20 17:12:28 2006
@@ -7,7 +7,6 @@
   <modelVersion>4.0.0</modelVersion>
   <artifactId>continuum-core</artifactId>
   <name>Continuum Core</name>
-  <version>1.1-SNAPSHOT</version>
   <dependencies>
     <dependency>
       <groupId>org.apache.derby</groupId>
@@ -131,10 +130,9 @@
     <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-taskqueue</artifactId>
-      <version>1.0-alpha-3</version>
     </dependency>
     <dependency>
-      <groupId>org.apache.maven.continuum.jpox</groupId>
+      <groupId>jpox</groupId>
       <artifactId>jpox</artifactId>
     </dependency>
     <dependency>
@@ -158,7 +156,44 @@
     <dependency>
       <groupId>org.apache.maven.continuum</groupId>
       <artifactId>continuum-release</artifactId>
-      <version>1.1-SNAPSHOT</version>
     </dependency>
   </dependencies>
+  <profiles>
+    <profile>
+      <id>default</id>
+      <activation>
+        <activeByDefault>true</activeByDefault>
+      </activation>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-surefire-plugin</artifactId>
+            <version>2.2</version>
+            <configuration>
+              <childDelegation>true</childDelegation>
+              <excludes>
+                <exclude>**/BuildProjectTaskExecutorTest.java</exclude>
+              </excludes>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>it</id>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-surefire-plugin</artifactId>
+            <version>2.2</version>
+            <configuration>
+              <childDelegation>true</childDelegation>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+  </profiles>
 </project>

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java Wed Sep 20 17:12:28 2006
@@ -212,7 +212,6 @@
         throw new ContinuumException( "invalid group id" );
     }
 
-
     public ProjectGroup getProjectGroupByProjectId( int projectId )
         throws ContinuumException
     {
@@ -436,7 +435,6 @@
         buildProjects( ContinuumProjectState.TRIGGER_FORCED );
     }
 
-
     /**
      * fire of the builds of all projects across all project groups using their default build definitions
      *
@@ -471,16 +469,11 @@
             {
                 buildDefId = new Integer( store.getDefaultBuildDefinition( project.getId() ).getId() );
             }
-            catch (ContinuumStoreException e)
+            catch ( ContinuumStoreException e )
             {
                 throw new ContinuumException(
                     "Project (id=" + project.getId() + " doens't have a default build definition, this should be impossible, parent should have default definition set." );
             }
-            if ( buildDefId == null )
-            {
-                throw new ContinuumException(
-                    "Project (id=" + project.getId() + " doens't have a default build definition, this should be even more impossible since store should have throw exception" );
-            }
 
             buildProject( project, buildDefId.intValue(), trigger );
         }
@@ -499,7 +492,7 @@
 
         try
         {
-            projectsList = getProjectsInBuildOrder( store.getProjectsWithDependenciesByGroupId( projectGroupId ));
+            projectsList = getProjectsInBuildOrder( store.getProjectsWithDependenciesByGroupId( projectGroupId ) );
         }
         catch ( CycleDetectedException e )
         {
@@ -520,16 +513,11 @@
             {
                 buildDefId = new Integer( store.getDefaultBuildDefinition( project.getId() ).getId() );
             }
-            catch (ContinuumStoreException e)
+            catch ( ContinuumStoreException e )
             {
                 throw new ContinuumException(
                     "Project (id=" + project.getId() + " doens't have a default build definition, this should be impossible, parent should have default definition set." );
             }
-            if ( buildDefId == null )
-            {
-                throw new ContinuumException(
-                    "Project (id=" + project.getId() + " doens't have a default build definition, this should be even more impossible since store should have throw exception" );
-            }
 
             buildProject( project, buildDefId.intValue(), ContinuumProjectState.TRIGGER_FORCED );
         }
@@ -563,8 +551,6 @@
                 getLogger().info( "No projects to build for schedule " + schedule );
                 return;
             }
-
-
         }
         catch ( ContinuumStoreException e )
         {
@@ -598,45 +584,14 @@
                 Project project = (Project) j.next();
 
                 // iterate through the project group build definitions and build
-                if ( groupBuildDefinitionIds != null && !groupBuildDefinitionIds.isEmpty() )
-                {
-                    getLogger().info(
-                        "Processing " + groupBuildDefinitionIds.size() + " build definitions for project " + project );
-                    for ( Iterator buildDefinitionIterator = groupBuildDefinitionIds.iterator();
-                          buildDefinitionIterator.hasNext(); )
-                    {
-                        Integer buildDefId = (Integer) buildDefinitionIterator.next();
-
-                        if ( buildDefId != null && !isInBuildingQueue( project.getId(), buildDefId.intValue() ) &&
-                            !isInCheckoutQueue( project.getId() ) )
-                        {
-                            buildProject( project, buildDefId.intValue(), ContinuumProjectState.TRIGGER_SCHEDULED,
-                                          false );
-                        }
-                    }
-                }
+                buildFromDefinitionIds( groupBuildDefinitionIds, project );
 
                 // iterate through the project build definitions and build
-                List buildDefIds = (List) projectsMap.get( new Integer( project.getId() ) );
+                List buildDefIds = projectsMap == null ? null : (List) projectsMap.get( new Integer( project.getId() ) );
 
-                if ( buildDefIds != null && !buildDefIds.isEmpty() )
-                {
-                    getLogger().info(
-                        "Processing " + buildDefIds.size() + " build definitions for project " + project );
-                    for ( Iterator buildDefinitionIterator = buildDefIds.iterator();
-                          buildDefinitionIterator.hasNext(); )
-                    {
-                        Integer buildDefId = (Integer) buildDefinitionIterator.next();
+                buildFromDefinitionIds( buildDefIds, project );
 
-                        if ( buildDefId != null && !isInBuildingQueue( project.getId(), buildDefId.intValue() ) &&
-                            !isInCheckoutQueue( project.getId() ) )
-                        {
-                            buildProject( project, buildDefId.intValue(), ContinuumProjectState.TRIGGER_SCHEDULED,
-                                          false );
-                        }
-                    }
-                }
-                else
+                if ( buildDefIds == null || buildDefIds.isEmpty() )
                 {
                     getLogger().info( "No build definitions, not building for project " + project );
                 }
@@ -644,6 +599,25 @@
         }
     }
 
+    private void buildFromDefinitionIds( Collection buildDefinitionIds, Project project )
+        throws ContinuumException
+    {
+        if ( buildDefinitionIds != null && !buildDefinitionIds.isEmpty() )
+        {
+            getLogger().info( "Processing " + buildDefinitionIds.size() + " build definitions for project " + project );
+            for ( Iterator buildDefinitionIterator = buildDefinitionIds.iterator(); buildDefinitionIterator.hasNext(); )
+            {
+                Integer buildDefId = (Integer) buildDefinitionIterator.next();
+
+                if ( buildDefId != null && !isInBuildingQueue( project.getId(), buildDefId.intValue() )
+                    && !isInCheckoutQueue( project.getId() ) )
+                {
+                    buildProject( project, buildDefId.intValue(), ContinuumProjectState.TRIGGER_SCHEDULED, false );
+                }
+            }
+        }
+    }
+
     public void buildProject( int projectId )
         throws ContinuumException
     {
@@ -726,7 +700,7 @@
                 if ( executor.isBuilding( project ) )
                 {
                     // project is building
-                    getLogger().info( "Project '" + project.getName() + "' always running." );
+                    getLogger().info( "Project '" + project.getName() + "' already being built." );
 
                     return;
                 }
@@ -743,7 +717,12 @@
             getLogger().info(
                 "Enqueuing '" + project.getName() + "' (Build definition id=" + buildDefinitionId + ")." );
 
-            buildQueue.put( new BuildProjectTask( project.getId(), buildDefinitionId, trigger ) );
+            BuildProjectTask task = new BuildProjectTask( project.getId(), buildDefinitionId, trigger );
+
+            task.setMaxExecutionTime( store.getBuildDefinition( buildDefinitionId ).getSchedule()
+                .getMaxJobExecutionTime() * 1000 );
+
+            buildQueue.put( task );
         }
         catch ( ContinuumStoreException e )
         {
@@ -1357,7 +1336,6 @@
         }
     }
 
-
     public List getBuildDefinitionsForProject( int projectId )
         throws ContinuumException
     {
@@ -2268,7 +2246,7 @@
     {
         try
         {
-            Action action = getActionManager().lookup( actionName );
+            Action action = actionManager.lookup( actionName );
 
             action.execute( context );
         }

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java Wed Sep 20 17:12:28 2006
@@ -74,8 +74,10 @@
     // ----------------------------------------------------------------------
 
     /**
+     * @param projectId
+     * @param buildDefinitionId
+     * @param trigger
      * @throws TaskExecutionException
-     * @todo structure of this method is a bit of a mess (too much exception/finally code)
      */
     public void build( int projectId, int buildDefinitionId, int trigger )
         throws TaskExecutionException
@@ -150,8 +152,7 @@
     }
 
     /**
-     * Checks if the build should be marked as ERROR and notifies
-     * the end of the build.
+     * Checks if the build should be marked as ERROR and notifies the end of the build.
      *
      * @param context
      * @throws TaskExecutionException
@@ -161,25 +162,28 @@
     {
         Project project = context.getProject();
 
-        if ( project.getState() != ContinuumProjectState.NEW && project.getState() != ContinuumProjectState.CHECKEDOUT
-            && project.getState() != ContinuumProjectState.OK && project.getState() != ContinuumProjectState.FAILED
-            && project.getState() != ContinuumProjectState.ERROR )
+        try
         {
-            try
+            if ( project.getState() != ContinuumProjectState.NEW && project.getState() != ContinuumProjectState.CHECKEDOUT
+                && project.getState() != ContinuumProjectState.OK && project.getState() != ContinuumProjectState.FAILED
+                && project.getState() != ContinuumProjectState.ERROR )
             {
-                project.setState( ContinuumProjectState.ERROR );
+                try
+                {
+                    project.setState( ContinuumProjectState.ERROR );
 
-                store.updateProject( project );
-            }
-            catch ( ContinuumStoreException e )
-            {
-                throw new TaskExecutionException( "Error storing the project", e );
-            }
-            finally
-            {
-                notifierDispatcher.buildComplete( project, context.getBuildResult() );
+                    store.updateProject( project );
+                }
+                catch ( ContinuumStoreException e )
+                {
+                    throw new TaskExecutionException( "Error storing the project", e );
+                }
             }
         }
+        finally
+        {
+            notifierDispatcher.buildComplete( project, context.getBuildResult() );
+        }
     }
 
     private void updateBuildResult( BuildContext context, String error )
@@ -187,17 +191,25 @@
     {
         BuildResult build = context.getBuildResult();
 
-        build.setError( error );
-
-        try
+        if ( build == null )
         {
-            store.updateBuildResult( build );
-
-            build = store.getBuildResult( build.getId() );
+            build = makeAndStoreBuildResult( context, error );
         }
-        catch ( ContinuumStoreException e )
+        else
         {
-            throw new TaskExecutionException( "Error updating build result", e );
+
+            build.setError( error );
+
+            try
+            {
+                store.updateBuildResult( build );
+
+                build = store.getBuildResult( build.getId() );
+            }
+            catch ( ContinuumStoreException e )
+            {
+                throw new TaskExecutionException( "Error updating build result", e );
+            }
         }
 
         context.getProject().setState( build.getState() );
@@ -292,8 +304,7 @@
 
         actionContext.put( AbstractContinuumAction.KEY_TRIGGER, new Integer( trigger ) );
 
-        actionContext
-            .put( AbstractContinuumAction.KEY_FIRST_RUN, Boolean.valueOf( context.getOldBuildResult() == null ) );
+        actionContext.put( AbstractContinuumAction.KEY_FIRST_RUN, Boolean.valueOf( context.getOldBuildResult() == null ) );
 
         return context;
     }
@@ -305,8 +316,8 @@
 
         performAction( "check-working-directory", buildContext );
 
-        boolean workingDirectoryExists = AbstractContinuumAction
-            .getBoolean( actionContext, AbstractContinuumAction.KEY_WORKING_DIRECTORY_EXISTS );
+        boolean workingDirectoryExists = AbstractContinuumAction.getBoolean( actionContext,
+                                                                             AbstractContinuumAction.KEY_WORKING_DIRECTORY_EXISTS );
 
         ScmResult scmResult;
 
@@ -320,8 +331,8 @@
         {
             Project project = (Project) actionContext.get( AbstractContinuumAction.KEY_PROJECT );
 
-            actionContext.put( AbstractContinuumAction.KEY_WORKING_DIRECTORY, workingDirectoryService
-                .getWorkingDirectory( project ).getAbsolutePath() );
+            actionContext.put( AbstractContinuumAction.KEY_WORKING_DIRECTORY,
+                               workingDirectoryService.getWorkingDirectory( project ).getAbsolutePath() );
 
             performAction( "checkout-project", buildContext );
 
@@ -391,9 +402,9 @@
     private boolean shouldBuild( BuildContext context )
         throws TaskExecutionException
     {
-        //oldBuildResult != null &&
-        //        List changes, Project project, int trigger )
-        //        scmResult.getChanges(), project, trigger ) )
+        // oldBuildResult != null &&
+        // List changes, Project project, int trigger )
+        // scmResult.getChanges(), project, trigger ) )
 
         boolean allChangesUnknown = checkAllChangesUnknown( context.getScmResult().getChanges() );
 
@@ -506,8 +517,8 @@
     private BuildResult makeAndStoreBuildResult( BuildContext context, String error )
         throws TaskExecutionException
     {
-        //        Project project, ScmResult scmResult, long startTime, int trigger )
-        //        project, scmResult, startTime, trigger );
+        // Project project, ScmResult scmResult, long startTime, int trigger )
+        // project, scmResult, startTime, trigger );
 
         BuildResult build = new BuildResult();
 
@@ -585,7 +596,7 @@
     }
 
     /**
-     *  Merges scm results so we'll have all changes since last execution of current build definition
+     * Merges scm results so we'll have all changes since last execution of current build definition
      */
     private void mergeScmResults( BuildContext context )
     {

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/BuildProjectTask.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/BuildProjectTask.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/BuildProjectTask.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/BuildProjectTask.java Wed Sep 20 17:12:28 2006
@@ -33,6 +33,8 @@
 
     private int trigger;
 
+    private long maxExecutionTime;
+
     public BuildProjectTask( int projectId, int buildDefinitionId, int trigger )
     {
         this.projectId = projectId;
@@ -62,5 +64,15 @@
     public int getTrigger()
     {
         return trigger;
+    }
+
+    public void setMaxExecutionTime( long maxExecutionTime )
+    {
+        this.maxExecutionTime = maxExecutionTime;
+    }
+
+    public long getMaxExecutionTime()
+    {
+        return maxExecutionTime;
     }
 }

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/evaluator/BuildProjectTaskViabilityEvaluator.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/evaluator/BuildProjectTaskViabilityEvaluator.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/evaluator/BuildProjectTaskViabilityEvaluator.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/buildqueue/evaluator/BuildProjectTaskViabilityEvaluator.java Wed Sep 20 17:12:28 2006
@@ -19,10 +19,10 @@
 import org.apache.maven.continuum.buildqueue.BuildProjectTask;
 import org.apache.maven.continuum.project.ContinuumProjectState;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
-import org.codehaus.plexus.taskqueue.TaskQueueException;
 import org.codehaus.plexus.taskqueue.TaskViabilityEvaluator;
 
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
@@ -45,8 +45,19 @@
     // TaskViabilityEvaluator Implementation
     // ----------------------------------------------------------------------
 
-    public List evaluate( List tasks )
-        throws TaskQueueException
+    /**
+     * Removes duplicate tasks from the list. A duplicate task is one with the same
+     * build definition and that's scheduled within the required build interval.
+     *
+     * <p>
+     * &forall; <sub>t1, t2 &isin; tasks</sub> [ t1 &ne; t2 &and; t2.buildDefinition = t2.buildDefinition]:
+     *  if ( t2.timestamp - t1.timestamp < requiredBuildInterval ) remove( t2 ).
+     * </p>
+     *
+     * @param tasks A list of queued tasks to evaluate
+     * @return a list of tasks with duplicates removed
+     */
+    public Collection evaluate( Collection tasks )
     {
         // ----------------------------------------------------------------------
         // This code makes a Map with Lists with one list per project. For each

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java Wed Sep 20 17:12:28 2006
@@ -27,7 +27,9 @@
 import org.codehaus.plexus.logging.AbstractLogEnabled;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException;
+import org.codehaus.plexus.util.FileUtils;
 import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.util.cli.CommandLineException;
 
 import java.io.File;
 import java.util.Iterator;
@@ -190,7 +192,21 @@
 
             getLogger().info( "Exit code: " + result.getExitCode() );
 
-            return new ContinuumBuildExecutionResult( "", result.getExitCode() );
+            return new ContinuumBuildExecutionResult( FileUtils.fileRead( output ), result.getExitCode() );
+        }
+        catch ( CommandLineException e )
+        {
+            if ( e.getCause() instanceof InterruptedException )
+            {
+                throw new ContinuumBuildCancelledException( "The build was cancelled", e );
+            }
+            else
+            {
+                throw new ContinuumBuildExecutorException(
+                    "Error while executing shell command. The most common error is that '" + executable + "' "
+                        + "is not in your path.",
+                    e );
+            }
         }
         catch ( Exception e )
         {

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java Wed Sep 20 17:12:28 2006
@@ -535,7 +535,7 @@
         }
         catch ( IOException e )
         {
-            getLogger().warn( "Cannot serialize POM to XML.", e );
+            getLogger().warn( "Cannot serialize Settings to XML.", e );
         }
     }
 

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java Wed Sep 20 17:12:28 2006
@@ -411,7 +411,10 @@
 
                 change.setComment( scmChangeSet.getComment() );
 
-                change.setDate( scmChangeSet.getDate().getTime() );
+                if ( scmChangeSet.getDate() != null )
+                {
+                    change.setDate( scmChangeSet.getDate().getTime() );
+                }
 
                 if ( scmChangeSet.getFiles() != null )
                 {

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/queue/CheckOutTask.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/queue/CheckOutTask.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/queue/CheckOutTask.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/main/java/org/apache/maven/continuum/scm/queue/CheckOutTask.java Wed Sep 20 17:12:28 2006
@@ -47,4 +47,9 @@
     {
         return workingDirectory;
     }
+
+    public long getMaxExecutionTime()
+    {
+        return 0;
+    }
 }

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/main/resources/META-INF/plexus/components.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/main/resources/META-INF/plexus/components.xml?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/main/resources/META-INF/plexus/components.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/main/resources/META-INF/plexus/components.xml Wed Sep 20 17:12:28 2006
@@ -177,7 +177,7 @@
           </property>
         </updateProperties>
       </configuration>
-      
+
     </component>
 
     <component>
@@ -433,6 +433,7 @@
       <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role>
       <role-hint>build-project</role-hint>
       <implementation>org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor</implementation>
+      <instantiation-strategy>singleton</instantiation-strategy>
       <requirements>
         <requirement>
           <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role>
@@ -478,6 +479,7 @@
       <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role>
       <role-hint>check-out-project</role-hint>
       <implementation>org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor</implementation>
+      <instantiation-strategy>singleton</instantiation-strategy>
       <requirements>
         <requirement>
           <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role>
@@ -554,31 +556,6 @@
           </configuration>
         </component>
     -->
-    <!--
-     |
-     | Velocity
-     |
-     |-->
-    <component>
-      <role>org.codehaus.plexus.velocity.VelocityComponent</role>
-      <implementation>org.codehaus.plexus.velocity.DefaultVelocityComponent</implementation>
-      <configuration>
-        <properties>
-          <property>
-            <name>resource.loader</name>
-            <value>threadContext</value>
-          </property>
-          <property>
-            <name>threadContext.resource.loader.class</name>
-            <value>org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader</value>
-          </property>
-          <property>
-            <name>velocimacro.library</name>
-            <value>/org/apache/maven/continuum/notification/mail/templates/common.vm</value>
-          </property>
-        </properties>
-      </configuration>
-    </component>
 
     <!--
      |

Propchange: maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Sep 20 17:12:28 2006
@@ -0,0 +1 @@
+target

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/pom.xml?view=diff&rev=448412&r1=448139&r2=448412
==============================================================================
    (empty)

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/continuum/testprojects/timeout/TimeoutTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test-projects/timeout/src/test/java/org/apache/maven/continuum/testprojects/timeout/TimeoutTest.java?view=diff&rev=448412&r1=448139&r2=448412
==============================================================================
    (empty)

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java Wed Sep 20 17:12:28 2006
@@ -239,4 +239,25 @@
 
         assertTrue ( "remove project group failed", projectGroupList.size() == 0 );
     }
+
+    public void testExecuteAction()
+        throws Exception
+    {
+        DefaultContinuum continuum = (DefaultContinuum) lookup( Continuum.ROLE );
+
+        String exceptionName = ContinuumException.class.getName();
+        try
+        {
+            continuum.executeAction( "testAction", new HashMap() );
+        }
+        catch ( ContinuumException e )
+        {
+            //expected, check for twice wrapped exception
+            if ( e.getCause() != null )
+            {
+                assertFalse( exceptionName + " is wrapped in " + exceptionName, e.getCause().getClass()
+                    .equals( ContinuumException.class ) );
+            }
+        }
+    }
 }

Added: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/TestAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/TestAction.java?view=auto&rev=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/TestAction.java (added)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/TestAction.java Wed Sep 20 17:12:28 2006
@@ -0,0 +1,35 @@
+package org.apache.maven.continuum;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import org.codehaus.plexus.action.AbstractAction;
+
+import java.util.Map;
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id: TestAction.java 441197 2006-09-07 20:06:40Z evenisse $
+ */
+public class TestAction
+    extends AbstractAction
+{
+    public void execute( Map context )
+        throws Exception
+    {
+        throw new ContinuumException( "TestAction exception." );
+    }
+}

Propchange: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/TestAction.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/buildcontroller/BuildProjectTaskExecutorTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/buildcontroller/BuildProjectTaskExecutorTest.java?view=diff&rev=448412&r1=448139&r2=448412
==============================================================================
    (empty)

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.java Wed Sep 20 17:12:28 2006
@@ -81,7 +81,10 @@
 
     private void dumpContent( MailMessage mailMessage )
     {
-        if ( false )
+        assertTrue( "The template isn't loaded correctly.", mailMessage.getContent().indexOf( "#shellBuildResult()" ) < 0 );
+        assertTrue( "The template isn't loaded correctly.", mailMessage.getContent().indexOf( "Build statistics" ) > 0 );
+
+        if ( true )
         {
             System.err.println( mailMessage.getContent() );
         }

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java Wed Sep 20 17:12:28 2006
@@ -233,6 +233,56 @@
 
     }
 
+    public void testCreateProjectWithoutModules()
+        throws Exception
+    {
+        ContinuumProjectBuilder projectBuilder = (ContinuumProjectBuilder) lookup( ContinuumProjectBuilder.ROLE,
+                                                                                   MavenTwoContinuumProjectBuilder.ID );
+
+        URL url = getClass().getClassLoader().getResource( "projects/continuum/continuum-core/pom.xml" );
+
+        // Eat System.out
+        PrintStream ps = System.out;
+
+        ContinuumProjectBuildingResult result;
+
+        try
+        {
+            System.setOut( new PrintStream( new ByteArrayOutputStream() ) );
+
+            result = projectBuilder.buildProjectsFromMetadata( url, null, null );
+        }
+        finally
+        {
+            System.setOut( ps );
+        }
+
+        assertNotNull( result );
+
+        assertNotNull( result.getErrors() );
+
+        assertEquals( 0, result.getErrors().size() );
+
+        assertNotNull( result.getProjectGroups() );
+
+        assertEquals( 1, result.getProjectGroups().size() );
+
+        ProjectGroup projectGroup = (ProjectGroup) result.getProjectGroups().get( 0 );
+
+        assertEquals( "projectGroup.groupId", "org.apache.maven.continuum", projectGroup.getGroupId() );
+
+        assertEquals( "projectGroup.name", "Continuum Core", projectGroup.getName() );
+
+        assertNotNull( result.getProjects() );
+
+        assertEquals( 1, result.getProjects().size() );
+
+        assertNotNull( projectGroup.getProjects() );
+
+        assertEquals( 0, projectGroup.getProjects().size() );
+    }
+
+
     private void assertDependency( String dep, String proj, Map projects )
     {
         Project p = (Project) projects.get( proj );
@@ -272,7 +322,7 @@
 
         assertEquals( name, project.getName() );
 
-        String scmUrl = "scm:svn:http://svn.apache.org/repos/asf/maven/continuum/tags";
+        String scmUrl = "scm:svn:http://svn.apache.org/repos/asf/maven/continuum/";
 
         assertTrue( project.getScmUrl().startsWith( scmUrl ) );
     }

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/DefaultContinuumTest.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/DefaultContinuumTest.xml?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/DefaultContinuumTest.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/DefaultContinuumTest.xml Wed Sep 20 17:12:28 2006
@@ -7,6 +7,11 @@
         <toOverride>nobody@localhost</toOverride>
       </configuration>
     </component>
+    <component>
+      <role>org.codehaus.plexus.action.Action</role>
+      <role-hint>testAction</role-hint>
+      <implementation>org.apache.maven.continuum.TestAction</implementation>
+    </component>
     <!--
      |
      | These point to the flows that we use as part of the runtime.

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/buildcontroller/BuildProjectTaskExecutorTest.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/buildcontroller/BuildProjectTaskExecutorTest.xml?view=diff&rev=448412&r1=448139&r2=448412
==============================================================================
    (empty)

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.xml?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/org/apache/maven/continuum/notification/mail/MailContinuumNotifierTest.xml Wed Sep 20 17:12:28 2006
@@ -39,5 +39,26 @@
         <includeBuildResult>true</includeBuildResult>
       </configuration>
     </component>
+
+    <component>
+      <role>org.codehaus.plexus.velocity.VelocityComponent</role>
+      <implementation>org.codehaus.plexus.velocity.DefaultVelocityComponent</implementation>
+      <configuration>
+        <properties>
+          <property>
+            <name>resource.loader</name>
+            <value>threadContext</value>
+          </property>
+          <property>
+            <name>threadContext.resource.loader.class</name>
+            <value>org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader</value>
+          </property>
+          <property>
+            <name>velocimacro.library</name>
+            <value>org/apache/maven/continuum/notification/mail/templates/common.vm</value>
+          </property>
+        </properties>
+      </configuration>
+    </component>
   </components>
 </plexus>

Modified: maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/projects/continuum/continuum-core/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/projects/continuum/continuum-core/pom.xml?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/projects/continuum/continuum-core/pom.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-core/src/test/resources/projects/continuum/continuum-core/pom.xml Wed Sep 20 17:12:28 2006
@@ -3,7 +3,7 @@
   <parent>
     <artifactId>continuum-parent</artifactId>
     <groupId>org.apache.maven.continuum</groupId>
-    <version>1.0.3</version>
+    <version>1.1-SNAPSHOT</version>
   </parent>
   <artifactId>continuum-core</artifactId>
   <name>Continuum Core</name>

Modified: maven/continuum/branches/release-integration/continuum/continuum-model/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/release-integration/continuum/continuum-model/pom.xml?view=diff&rev=448412&r1=448411&r2=448412
==============================================================================
--- maven/continuum/branches/release-integration/continuum/continuum-model/pom.xml (original)
+++ maven/continuum/branches/release-integration/continuum/continuum-model/pom.xml Wed Sep 20 17:12:28 2006
@@ -7,7 +7,6 @@
   <modelVersion>4.0.0</modelVersion>
   <artifactId>continuum-model</artifactId>
   <name>Continuum Model</name>
-  <version>1.1-SNAPSHOT</version>
   <build>
     <plugins>
       <plugin>
@@ -25,13 +24,13 @@
         <configuration>
           <version>1.0.0</version>
           <packageWithVersion>false</packageWithVersion>
-          <model>src/main/mdo/continuum.mdo</model>
+          <model>src/main/mdo/continuum.xml</model>
         </configuration>
       </plugin>
       <plugin>
         <groupId>org.codehaus.mojo</groupId>
         <artifactId>jpox-maven-plugin</artifactId>
-        <version>1.0.2</version>
+        <version>1.0.3-SNAPSHOT</version>
         <executions>
           <execution>
             <goals>