continuum-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From br...@apache.org
Subject svn commit: r227315 [1/2] - in /maven/continuum/trunk: ./ continuum-api/src/main/java/org/apache/maven/continuum/configuration/ continuum-api/src/main/java/org/apache/maven/continuum/utils/ continuum-api/src/test/ continuum-api/src/test/java/ continuum...
Date Thu, 04 Aug 2005 07:06:20 GMT
Author: brett
Date: Thu Aug  4 00:04:54 2005
New Revision: 227315

URL: http://svn.apache.org/viewcvs?rev=227315&view=rev
Log:
merge the test branch to the trunk

Added:
    maven/continuum/trunk/continuum-api/src/test/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-api/src/test/
    maven/continuum/trunk/continuum-api/src/test/java/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-api/src/test/java/
    maven/continuum/trunk/continuum-api/src/test/java/org/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-api/src/test/java/org/
    maven/continuum/trunk/continuum-api/src/test/java/org/apache/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-api/src/test/java/org/apache/
    maven/continuum/trunk/continuum-api/src/test/java/org/apache/maven/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-api/src/test/java/org/apache/maven/
    maven/continuum/trunk/continuum-api/src/test/java/org/apache/maven/continuum/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-api/src/test/java/org/apache/maven/continuum/
    maven/continuum/trunk/continuum-api/src/test/java/org/apache/maven/continuum/utils/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-api/src/test/java/org/apache/maven/continuum/utils/
    maven/continuum/trunk/continuum-api/src/test/java/org/apache/maven/continuum/utils/ContinuumUtilsTest.java
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-api/src/test/java/org/apache/maven/continuum/utils/ContinuumUtilsTest.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/utils/DefaultWorkingDirectoryService.java
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-core/src/main/java/org/apache/maven/continuum/utils/DefaultWorkingDirectoryService.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/utils/WorkingDirectoryService.java
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-core/src/main/java/org/apache/maven/continuum/utils/WorkingDirectoryService.java
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/utils/WorkingDirectoryServiceTest.java
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-core/src/test/java/org/apache/maven/continuum/utils/WorkingDirectoryServiceTest.java
    maven/continuum/trunk/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/
    maven/continuum/trunk/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/continuum-notifier-irc/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/continuum-notifier-irc/
    maven/continuum/trunk/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/continuum-notifier-irc/pom.xml
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/continuum-notifier-irc/pom.xml
    maven/continuum/trunk/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/continuum-notifier-jabber/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/continuum-notifier-jabber/
    maven/continuum/trunk/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/continuum-notifier-jabber/pom.xml
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/continuum-notifier-jabber/pom.xml
    maven/continuum/trunk/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/pom.xml
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-core/src/test/resources/projects/continuum/continuum-notifiers/pom.xml
    maven/continuum/trunk/continuum-model/create-schema.sh
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-model/create-schema.sh
    maven/continuum/trunk/continuum-model/db-settings
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-model/db-settings
    maven/continuum/trunk/continuum-model/dump-ddl.sh
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-model/dump-ddl.sh
    maven/continuum/trunk/continuum-model/run-derby.sh
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-model/run-derby.sh
    maven/continuum/trunk/continuum-plexus-application/debug-derby.sh
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-plexus-application/debug-derby.sh
    maven/continuum/trunk/continuum-test/src/main/resources/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-test/src/main/resources/
    maven/continuum/trunk/continuum-test/src/main/resources/META-INF/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-test/src/main/resources/META-INF/
    maven/continuum/trunk/continuum-test/src/main/resources/META-INF/plexus/
      - copied from r227314, maven/continuum/branches/trygvis-test/continuum-test/src/main/resources/META-INF/plexus/
    maven/continuum/trunk/continuum-test/src/main/resources/META-INF/plexus/components.xml
      - copied unchanged from r227314, maven/continuum/branches/trygvis-test/continuum-test/src/main/resources/META-INF/plexus/components.xml
Removed:
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/core/
Modified:
    maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java
    maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/utils/ContinuumUtils.java
    maven/continuum/trunk/continuum-core-it/pom.xml
    maven/continuum/trunk/continuum-core-it/src/test/java/org/apache/maven/continuum/it/AbstractIntegrationTest.java
    maven/continuum/trunk/continuum-core/pom.xml
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/build/settings/DefaultBuildSettingsActivator.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractContinuumAction.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CheckWorkingDirectoryAction.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectGroupAction.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromWorkingDirectoryContinuumAction.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/ant/AntBuildExecutor.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/MavenOneBuildExecutor.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/MavenTwoBuildExecutor.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/shell/ShellBuildExecutor.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/ContinuumInitializer.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilder.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilder.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/ContinuumSchedulerException.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/DefaultContinuumScheduler.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/trigger/quartz/ContinuumBuildTrigger.java
    maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/utils/shell/DefaultShellCommandHelper.java
    maven/continuum/trunk/continuum-core/src/main/resources/META-INF/plexus/components.xml
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/configuration/ConfigurationServiceTest.java
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/execution/manager/DefaultBuildExecutorManagerTest.java
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/execution/maven/m1/MavenOneBuildExecutorTest.java
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/scm/ContinuumScmTest.java
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/store/AbstractContinuumStoreTest.java
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/store/ContinuumTypicalUsageTest.java
    maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/store/NewModelTest.java
    maven/continuum/trunk/continuum-core/src/test/resources/configuration.xml
    maven/continuum/trunk/continuum-core/src/test/resources/log4j.properties
    maven/continuum/trunk/continuum-model/pom.xml
    maven/continuum/trunk/continuum-model/src/main/resources/META-INF/package.jdo
    maven/continuum/trunk/continuum-model/src/main/resources/continuum.mdo
    maven/continuum/trunk/continuum-plexus-application/plexus-jamvm.sh
    maven/continuum/trunk/continuum-plexus-application/plexus-kaffe.sh
    maven/continuum/trunk/continuum-plexus-application/plexus-sablevm.sh
    maven/continuum/trunk/continuum-plexus-application/pom.xml
    maven/continuum/trunk/continuum-plexus-application/src/conf/application.xml
    maven/continuum/trunk/continuum-plexus-application/src/conf/configuration.xml
    maven/continuum/trunk/continuum-site/src/site/apt/configuration.apt
    maven/continuum/trunk/continuum-test/pom.xml
    maven/continuum/trunk/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java
    maven/continuum/trunk/continuum-web/src/main/java/org/apache/maven/continuum/web/action/AddMavenTwoProject.java
    maven/continuum/trunk/continuum-web/src/main/resources/templates/screens/Summary.vm
    maven/continuum/trunk/pom.xml

Modified: maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java (original)
+++ maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/configuration/ConfigurationService.java Thu Aug  4 00:04:54 2005
@@ -33,21 +33,23 @@
     //
     // ----------------------------------------------------------------------
 
-    public static final String CONFIGURATION = "configuration";
+    String CONFIGURATION = "configuration";
 
-    public static final String CONFIGURATION_INITIALIZED = "initialized";
+    String CONFIGURATION_INITIALIZED = "initialized";
 
-    public static final String CONFIGURATION_URL = "url";
+    String CONFIGURATION_URL = "url";
 
-    public static final String CONFIGURATION_BUILD_OUTPUT_DIRECTORY = "build-output-directory";
+    String CONFIGURATION_BUILD_OUTPUT_DIRECTORY = "build-output-directory";
 
-    public static final String CONFIGURATION_JDKS = "jdks";
+    String CONFIGURATION_WORKING_DIRECTORY = "working-directory";
 
-    public static final String CONFIGURATION_JDK = "jdk";
+    String CONFIGURATION_JDKS = "jdks";
 
-    public static final String CONFIGURATION_JDK_VERSION = "jdk-version";
+    String CONFIGURATION_JDK = "jdk";
 
-    public static final String CONFIGURATION_JDK_HOME = "jdk-home";
+    String CONFIGURATION_JDK_VERSION = "jdk-version";
+
+    String CONFIGURATION_JDK_HOME = "jdk-home";
 
     // ----------------------------------------------------------------------
     //
@@ -64,6 +66,10 @@
     File getBuildOutputDirectory();
 
     void setBuildOutputDirectory( File buildOutputDirectory );
+
+    File getWorkingDirectory();
+
+    void setWorkingDirectory( File workingDirectory );
 
     Map getJdks();
 

Modified: maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/utils/ContinuumUtils.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/utils/ContinuumUtils.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/utils/ContinuumUtils.java (original)
+++ maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/utils/ContinuumUtils.java Thu Aug  4 00:04:54 2005
@@ -1,7 +1,7 @@
 package org.apache.maven.continuum.utils;
 
 /*
- * Copyright 2004-2005 The Apache Software Foundation.
+ * Copyright 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.
@@ -25,6 +25,8 @@
  */
 public class ContinuumUtils
 {
+    public static final String EOL = System.getProperty( "line.separator" );
+
     public static String throwableToString( Throwable error )
     {
         if ( error == null )
@@ -41,5 +43,30 @@
         printer.flush();
 
         return writer.getBuffer().toString();
+    }
+
+    public static String throwableMessagesToString( Throwable error )
+    {
+        if ( error == null )
+        {
+            return "";
+        }
+
+        StringBuffer buffer = new StringBuffer();
+
+        buffer.append( error.getMessage() );
+
+        error = error.getCause();
+
+        while ( error != null )
+        {
+            buffer.append( EOL );
+
+            buffer.append( error.getMessage() );
+
+            error = error.getCause();
+        }
+
+        return buffer.toString();
     }
 }

Modified: maven/continuum/trunk/continuum-core-it/pom.xml
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core-it/pom.xml?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core-it/pom.xml (original)
+++ maven/continuum/trunk/continuum-core-it/pom.xml Thu Aug  4 00:04:54 2005
@@ -28,9 +28,9 @@
       <version>1.2</version>
     </dependency>
     <dependency>
-      <groupId>hsqldb</groupId>
-      <artifactId>hsqldb</artifactId>
-      <version>1.7.3.3</version>
+      <groupId>incubator-derby</groupId>
+      <artifactId>derby</artifactId>
+      <version>10.0.2.1</version>
     </dependency>
   </dependencies>
 </project>

Modified: maven/continuum/trunk/continuum-core-it/src/test/java/org/apache/maven/continuum/it/AbstractIntegrationTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core-it/src/test/java/org/apache/maven/continuum/it/AbstractIntegrationTest.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core-it/src/test/java/org/apache/maven/continuum/it/AbstractIntegrationTest.java (original)
+++ maven/continuum/trunk/continuum-core-it/src/test/java/org/apache/maven/continuum/it/AbstractIntegrationTest.java Thu Aug  4 00:04:54 2005
@@ -20,6 +20,11 @@
 import org.apache.maven.continuum.Continuum;
 import org.apache.maven.continuum.ContinuumException;
 import org.apache.maven.continuum.configuration.ConfigurationService;
+import org.apache.maven.continuum.store.ContinuumStore;
+import org.apache.maven.continuum.store.ContinuumObjectNotFoundException;
+import org.apache.maven.continuum.scm.ScmResult;
+import org.apache.maven.continuum.scm.ScmFile;
+import org.apache.maven.continuum.project.ContinuumProject;
 import org.apache.maven.continuum.project.ContinuumBuild;
 import org.apache.maven.continuum.project.ContinuumProject;
 import org.apache.maven.continuum.project.ContinuumProjectState;
@@ -109,7 +114,7 @@
         // in situ like forms, templates and localization resources.
         // ----------------------------------------------------------------------
 
-        File plexusHome = getTestFile( "target/leve1/level2/plexus-home" );
+        File plexusHome = getTestFile( "target/level1/level2/plexus-home" );
 
         if ( !plexusHome.isDirectory() )
         {
@@ -436,11 +441,11 @@
         {
             getContinuum().getProject( projectId );
 
-            fail( "Expected exception after removing project '" + projectId + "'." );
+            fail( "Expected ContinuumObjectNotFoundException after removing project '" + projectId + "'." );
         }
-        catch ( ContinuumException e )
+        catch ( ContinuumException t )
         {
-            // expected
+            assertTrue( t.getCause() instanceof ContinuumObjectNotFoundException );
         }
     }
 

Modified: maven/continuum/trunk/continuum-core/pom.xml
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/pom.xml?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/pom.xml (original)
+++ maven/continuum/trunk/continuum-core/pom.xml Thu Aug  4 00:04:54 2005
@@ -8,6 +8,15 @@
   <artifactId>continuum-core</artifactId>
   <version>1.0-beta-1-SNAPSHOT</version>
   <name>Continuum Core</name>
+
+  <repositories>
+    <repository>
+      <id>apache.snapshots</id>
+      <url>http://cvs.apache.org/repository</url>
+      <layout>legacy</layout>
+    </repository>
+  </repositories>
+
   <dependencies>
     <!--
      |
@@ -42,7 +51,6 @@
     <dependency>
       <groupId>plexus</groupId>
       <artifactId>plexus-jdo2</artifactId>
-      <version>1.0-alpha-1</version>
     </dependency>    
     <dependency>
       <groupId>plexus</groupId>
@@ -156,6 +164,19 @@
       <groupId>hsqldb</groupId>
       <artifactId>hsqldb</artifactId>
       <version>1.7.3.0</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>postgresql</groupId>
+      <artifactId>postgresql</artifactId>
+      <version>7.4</version>
+      <classifier>jdbc3</classifier>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>incubator-derby</groupId>
+      <artifactId>derby</artifactId>
+      <version>10.0.2.1</version>
       <scope>test</scope>
     </dependency>
     <dependency>

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java Thu Aug  4 00:04:54 2005
@@ -75,6 +75,7 @@
 import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
+import javax.jdo.JDOHelper;
 
 /**
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
@@ -88,11 +89,6 @@
     /**
      * @plexus.requirement
      */
-    //private ContinuumCore core;
-
-    /**
-     * @plexus.requirement
-     */
     private ActionManager actionManager;
 
     /**
@@ -358,7 +354,8 @@
             }
             catch ( ContinuumException ex )
             {
-                getLogger().error( "Could not enqueue project: " + project.getId() + " ('" + project.getName() + "').", ex );
+                getLogger().error( "Could not enqueue project: " + project.getId() + " " +
+                                   "('" + project.getName() + "').", ex );
             }
         }
     }
@@ -582,6 +579,10 @@
         ContinuumProjectBuildingResult result = (ContinuumProjectBuildingResult)
             context.get( CreateProjectsFromMetadata.KEY_PROJECT_BUILDING_RESULT );
 
+        getLogger().info( "Created " + result.getProjects().size() + " projects." );
+        getLogger().info( "Created " + result.getProjectGroups().size() + " project groups." );
+        getLogger().info( result.getWarnings().size() + " warnings." );
+
         // ----------------------------------------------------------------------
         // Look for any warnings.
         // ----------------------------------------------------------------------
@@ -596,36 +597,57 @@
         // will go into the first project group in the list.
         // ----------------------------------------------------------------------
 
-        ContinuumProjectGroup projectGroup = null;
-
-        for ( Iterator it = result.getProjectGroups().iterator(); it.hasNext(); )
+        if ( result.getProjectGroups().size() != 1 )
         {
-            projectGroup = (ContinuumProjectGroup) it.next();
+            throw new ContinuumException( "The project building result has to contain exactly one project group." );
+        }
+
+        ContinuumProjectGroup projectGroup = (ContinuumProjectGroup) result.getProjectGroups().iterator().next();
 
+        try
+        {
             try
             {
-                try
-                {
-                    projectGroup = store.getProjectGroupByGroupId( projectGroup.getGroupId() );
-                }
-                catch ( ContinuumObjectNotFoundException e )
-                {
-                    Map pgContext = new HashMap();
+                projectGroup = store.getProjectGroupByGroupId( projectGroup.getGroupId() );
+
+                getLogger().info( "Using existing project group with the group id: '" + projectGroup.getGroupId() + "'." );
+            }
+            catch ( ContinuumObjectNotFoundException e )
+            {
+                getLogger().info("Creating project group with the group id: '" + projectGroup.getGroupId() + "'." );
 
-                    pgContext.put( CreateProjectsFromMetadata.KEY_WORKING_DIRECTORY, getWorkingDirectory() );                    
+                Map pgContext = new HashMap();
 
-                    pgContext.put( AbstractContinuumAction.KEY_UNVALIDATED_PROJECT_GROUP, projectGroup );
+                pgContext.put( CreateProjectsFromMetadata.KEY_WORKING_DIRECTORY, getWorkingDirectory() );
 
-                    executeAction( "validate-project-group", pgContext );
+                pgContext.put( AbstractContinuumAction.KEY_UNVALIDATED_PROJECT_GROUP, projectGroup );
 
-                    executeAction( "store-project-group", pgContext );
-                }
-            }
-            catch ( ContinuumStoreException e )
-            {
-                throw new ContinuumException( "Error while querying for project group.", e );
+                executeAction( "validate-project-group", pgContext );
+
+                executeAction( "store-project-group", pgContext );
+
+                String projectGroupId = AbstractContinuumAction.getProjectGroupId( pgContext );
+
+                projectGroup = store.getProjectGroup( projectGroupId );
             }
         }
+        catch ( ContinuumStoreException e )
+        {
+            throw new ContinuumException( "Error while querying for project group.", e );
+        }
+
+        try
+        {
+            System.err.println( "----------------------" );
+            System.err.println( "PRE:" );
+            System.err.println( "projectGroup count: " + store.getProjectGroups().size() );
+            System.err.println( "project count: " + store.getAllProjects().size() );
+            System.err.println( "----------------------" );
+        }
+        catch ( ContinuumStoreException e )
+        {
+            throw new ContinuumException( "Error while querying for project group.", e );
+        }
 
         // ----------------------------------------------------------------------
         // Save all the projects
@@ -638,24 +660,104 @@
         {
             ContinuumProject project = (ContinuumProject) i.next();
 
-            project.setExecutorId( buildExecutorId );
-
-            project.setProjectGroup( projectGroup );
+//            for ( Iterator it = result.getProjects().iterator(); it.hasNext(); )
+//            {
+//                ContinuumProject p2 = (ContinuumProject) it.next();
+//
+//                getLogger().info( "Adding project " + p2.getName() + ", project.hashCode(): " + p2.hashCode() );
+//            }
 
-            context.put( AbstractContinuumAction.KEY_UNVALIDATED_PROJECT, project );
+            project.setExecutorId( buildExecutorId );
 
-            executeAction( "validate-project", context );
+            try
+            {
+//                System.err.println( "=======================" );
+//                System.err.println( "before store" );
+//                System.err.println( "projectGroup.projects.size: " + store.getProjectGroup( projectGroup.getId() ).getProjects().size() );
+//                System.err.println( "projectGroup count: " + store.getProjectGroups().size() );
+//                System.err.println( "project count: " + store.getAllProjects().size() );
+//                for ( Iterator j = store.getAllProjects().iterator(); j.hasNext(); )
+//                {
+//                    project = (ContinuumProject) j.next();
+//                    System.err.println( project.getId() );
+//                }
+//                System.err.println( "=======================" );
+
+                project.setCommandLineArguments( StringUtils.clean( project.getCommandLineArguments() ) );
+                System.err.println( "persisting " + project.getName() + ", id: " + project.getId() );
+                project = store.addProject( project );
+                System.err.println( "persisting " + project.getName() + ", id: " + project.getId() );
+
+//                dumpJdoObject( projectGroup, "project group before adding project" );
+//                dumpJdoObject( project, "project before setting project group" );
+                projectGroup.addProject( project );
+//                dumpJdoObject( projectGroup, "project group after adding project" );
+//                dumpJdoObject( project, "project after setting project group" );
+
+                projectGroup = store.updateProjectGroup( projectGroup );
+
+//                System.err.println( "=======================" );
+//                System.err.println( "after store" );
+//                System.err.println( "projectGroup.projects.size: " + store.getProjectGroup( projectGroup.getId() ).getProjects().size() );
+//                System.err.println( "projectGroup count: " + store.getProjectGroups().size() );
+//                System.err.println( "project count: " + store.getAllProjects().size() );
+//                for ( Iterator j = store.getAllProjects().iterator(); j.hasNext(); )
+//                {
+//                    project = (ContinuumProject) j.next();
+//                    System.err.println( "project: id: " + project.getId() + ", name: " + project.getName() );
+//                }
+//                System.err.println( "=======================" );
+            }
+            catch ( ContinuumStoreException e )
+            {
+                throw new ContinuumException( "crap", e );
+            }
 
-            executeAction( "store-project", context );
+//            project.setProjectGroup( projectGroup );
+//
+            context = new HashMap();
 
-            project.setId( (String) context.get( StoreProjectAction.KEY_PROJECT_ID ) );
+            context.put( AbstractContinuumAction.KEY_UNVALIDATED_PROJECT, project );
+//
+//            executeAction( "validate-project", context );
+//
+//            executeAction( "store-project", context );
+//
+            context.put( AbstractContinuumAction.KEY_PROJECT_ID, project.getId() );
 
             executeAction( "add-project-to-checkout-queue", context );
         }
 
+//        try
+//        {
+//            System.err.println( "----------------------" );
+//            System.err.println( "POST:" );
+//            System.err.println( "projectGroup count: " + store.getProjectGroups().size() );
+//            System.err.println( "project count: " + store.getAllProjects().size() );
+//            System.err.println( "----------------------" );
+//        }
+//        catch ( ContinuumStoreException e )
+//        {
+//            throw new ContinuumException( "Error while querying for the project group.", e );
+//        }
+
         return result;
     }
 
+    private void dumpJdoObject( Object object, String message )
+    {
+        System.err.println( "---------- Dumping JDO Object: " + message );
+        System.err.println( "object.hashCode: " + object.hashCode() );
+        System.err.println( "persistent: " + JDOHelper.isPersistent( object ) );
+        System.err.println( "transactional: " + JDOHelper.isTransactional( object ) );
+        System.err.println( "dirty: " + JDOHelper.isDirty( object ) );
+        System.err.println( "new: " + JDOHelper.isNew( object ) );
+        System.err.println( "deleted: " + JDOHelper.isDeleted( object ) );
+        System.err.println( "detached: " + JDOHelper.isDetached( object ) );
+        System.err.println( "object id: " + JDOHelper.getObjectId( object ) );
+        System.err.println( "----------" );
+    }
+
     // ----------------------------------------------------------------------
     // Notification
     // ----------------------------------------------------------------------
@@ -986,6 +1088,11 @@
 
     private ContinuumException logAndCreateException( String message, Throwable cause )
     {
+        if ( cause instanceof ContinuumObjectNotFoundException )
+        {
+            return new ContinuumException( "No such object.", cause );
+        }
+
         getLogger().error( message, cause );
 
         return new ContinuumException( message, cause );
@@ -1044,7 +1151,6 @@
     }
 
     private void startMessage()
-        throws StartingException
     {
         getLogger().info( "Starting Continuum." );
 

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/build/settings/DefaultBuildSettingsActivator.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/build/settings/DefaultBuildSettingsActivator.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/build/settings/DefaultBuildSettingsActivator.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/build/settings/DefaultBuildSettingsActivator.java Thu Aug  4 00:04:54 2005
@@ -1,16 +1,33 @@
 package org.apache.maven.continuum.build.settings;
 
+/*
+ * Copyright 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.apache.maven.continuum.Continuum;
 import org.apache.maven.continuum.project.ContinuumBuildSettings;
 import org.apache.maven.continuum.scheduler.ContinuumBuildJob;
 import org.apache.maven.continuum.scheduler.ContinuumScheduler;
+import org.apache.maven.continuum.scheduler.ContinuumSchedulerException;
 import org.apache.maven.continuum.store.ContinuumStore;
 import org.apache.maven.continuum.store.ContinuumStoreException;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
+import org.codehaus.plexus.util.StringUtils;
 import org.quartz.CronTrigger;
 import org.quartz.JobDataMap;
 import org.quartz.JobDetail;
-import org.quartz.Job;
 import org.quartz.Scheduler;
 
 import java.text.ParseException;
@@ -52,6 +69,15 @@
             {
                 ContinuumBuildSettings buildSettings = (ContinuumBuildSettings) i.next();
 
+                if ( StringUtils.isEmpty( buildSettings.getCronExpression() ) )
+                {
+                    // TODO: this can possibly be removed but it's here now to
+                    // weed out any bugs
+                    getLogger().info( "Not scheduling " + buildSettings.getName() );
+
+                    continue;
+                }
+
                 scheduleBuildSettings( buildSettings, continuum );
             }
         }
@@ -82,7 +108,7 @@
 
         trigger.setGroup( Scheduler.DEFAULT_GROUP );
 
-        Date startTime = new Date( System.currentTimeMillis() + ( delay * 1000 ) );
+        Date startTime = new Date( System.currentTimeMillis() + delay * 1000 );
 
         trigger.setStartTime( startTime );
 
@@ -103,7 +129,7 @@
 
             getLogger().info( trigger.getNextFireTime() + "" );
         }
-        catch ( Exception e )
+        catch ( ContinuumSchedulerException e )
         {
             throw new BuildSettingsActivationException( "Cannot schedule build job.", e );
         }

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/buildcontroller/DefaultBuildController.java Thu Aug  4 00:04:54 2005
@@ -26,6 +26,7 @@
 import org.apache.maven.continuum.store.ContinuumStore;
 import org.apache.maven.continuum.store.ContinuumStoreException;
 import org.apache.maven.continuum.utils.ContinuumUtils;
+import org.apache.maven.continuum.utils.WorkingDirectoryService;
 import org.codehaus.plexus.action.ActionManager;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
 import org.codehaus.plexus.util.StringUtils;
@@ -51,6 +52,9 @@
     /** @plexus.requirement */
     private ActionManager actionManager;
 
+    /** @plexus.requirement */
+    private WorkingDirectoryService workingDirectoryService;
+
     // ----------------------------------------------------------------------
     // BuildController Implementation
     // ----------------------------------------------------------------------
@@ -87,10 +91,6 @@
         // methods, even in a case of failure.
         // ----------------------------------------------------------------------
 
-        // ----------------------------------------------------------------------
-        //
-        // ----------------------------------------------------------------------
-
         try
         {
             notifierDispatcher.buildStarted( project );
@@ -117,7 +117,8 @@
                 }
                 else
                 {
-                    actionContext.put( AbstractContinuumAction.KEY_WORKING_DIRECTORY, project.getWorkingDirectory() );
+                    actionContext.put( AbstractContinuumAction.KEY_WORKING_DIRECTORY,
+                                       workingDirectoryService.getWorkingDirectory( project ) );
 
                     actionManager.lookup( "checkout-project" ).execute( actionContext );
 

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/configuration/DefaultConfigurationService.java Thu Aug  4 00:04:54 2005
@@ -56,6 +56,8 @@
 
     private File buildOutputDirectory;
 
+    private File workingDirectory;
+
     private Map jdks;
 
     private static final String LS = System.getProperty( "line.separator" );
@@ -96,6 +98,16 @@
         this.buildOutputDirectory = buildOutputDirectory;
     }
 
+    public File getWorkingDirectory()
+    {
+        return workingDirectory;
+    }
+
+    public void setWorkingDirectory( File workingDirectory )
+    {
+        this.workingDirectory = workingDirectory;
+    }
+
     public Map getJdks()
     {
         return jdks;
@@ -139,14 +151,7 @@
         {
             String booleanString = initializedDom.getValue();
 
-            if ( booleanString.equals( "true" ) || booleanString.equals( "1" ) )
-            {
-                initialized = true;
-            }
-            else
-            {
-                initialized = false;
-            }
+            initialized = booleanString.equals( "true" ) || booleanString.equals( "1" );
         }
 
         Xpp3Dom urlDom = configuration.getChild( CONFIGURATION_URL );
@@ -163,6 +168,8 @@
             buildOutputDirectory = getFile( configuration, CONFIGURATION_BUILD_OUTPUT_DIRECTORY );
         }
 
+        workingDirectory = getFile( configuration, CONFIGURATION_WORKING_DIRECTORY );
+
         Xpp3Dom jdksElement = configuration.getChild( CONFIGURATION_JDKS );
 
         if ( jdksElement != null )
@@ -196,7 +203,14 @@
     private File getFile( Xpp3Dom configuration, String elementName )
         throws ConfigurationLoadingException
     {
-        String value = configuration.getChild( elementName ).getValue();
+        Xpp3Dom element = configuration.getChild( elementName );
+
+        if ( element == null )
+        {
+            throw new ConfigurationLoadingException( "Missing required element '" + elementName + "'." );
+        }
+
+        String value = element.getValue();
 
         if ( StringUtils.isEmpty( value ) )
         {
@@ -217,10 +231,6 @@
     {
         configuration = new Xpp3Dom( CONFIGURATION );
 
-        System.out.println( "initialized = " + initialized );
-
-        System.out.println( ">>>>>>>>>>>>>>>>>>> Boolean.toString( initialized ) = " + Boolean.toString( initialized ) );
-
         configuration.addChild( createDom( CONFIGURATION_INITIALIZED, Boolean.toString( initialized ) ) );
 
         if ( url != null )
@@ -231,6 +241,11 @@
         if ( buildOutputDirectory != null )
         {
             configuration.addChild( createFileDom( CONFIGURATION_BUILD_OUTPUT_DIRECTORY, buildOutputDirectory ) );
+        }
+
+        if ( workingDirectory != null )
+        {
+            configuration.addChild( createFileDom( CONFIGURATION_WORKING_DIRECTORY, workingDirectory ) );
         }
 
         if ( jdks != null )

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractContinuumAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractContinuumAction.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractContinuumAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractContinuumAction.java Thu Aug  4 00:04:54 2005
@@ -83,6 +83,11 @@
         return getString( context, KEY_PROJECT_ID );
     }
 
+    public static String getProjectGroupId( Map context )
+    {
+        return getString( context, KEY_PROJECT_GROUP_ID );
+    }
+
     public static String getBuildId( Map context )
     {
         return getString( context, KEY_BUILD_ID );

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java Thu Aug  4 00:04:54 2005
@@ -18,10 +18,10 @@
 
 import org.apache.maven.continuum.project.ContinuumProject;
 import org.apache.maven.continuum.scm.queue.CheckOutTask;
+import org.apache.maven.continuum.utils.WorkingDirectoryService;
 import org.apache.maven.continuum.store.ContinuumStore;
 import org.codehaus.plexus.taskqueue.TaskQueue;
 
-import java.io.File;
 import java.util.Map;
 
 /**
@@ -31,6 +31,9 @@
 public class AddProjectToCheckOutQueueAction
     extends AbstractContinuumAction
 {
+    /** @plexus.requirement */
+    private WorkingDirectoryService workingDirectoryService;
+
     private TaskQueue checkOutQueue;
 
     private ContinuumStore store;
@@ -40,7 +43,8 @@
     {
         ContinuumProject project = store.getProject( getProjectId( context ) );
 
-        CheckOutTask checkOutTask = new CheckOutTask( project.getId(), new File( project.getWorkingDirectory() ) );
+        CheckOutTask checkOutTask = new CheckOutTask( project.getId(),
+                                                      workingDirectoryService.getWorkingDirectory( project ) );
 
         checkOutQueue.put( checkOutTask );
     }

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CheckWorkingDirectoryAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CheckWorkingDirectoryAction.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CheckWorkingDirectoryAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CheckWorkingDirectoryAction.java Thu Aug  4 00:04:54 2005
@@ -17,6 +17,7 @@
  */
 
 import org.apache.maven.continuum.project.ContinuumProject;
+import org.apache.maven.continuum.utils.WorkingDirectoryService;
 import org.apache.maven.continuum.store.ContinuumStore;
 
 import java.io.File;
@@ -29,6 +30,14 @@
 public class CheckWorkingDirectoryAction
     extends AbstractContinuumAction
 {
+    /**
+     * @plexus.requirement *
+     */
+    private WorkingDirectoryService workingDirectoryService;
+
+    /**
+     * @plexus.requirement *
+     */
     private ContinuumStore store;
 
     public void execute( Map context )
@@ -36,7 +45,7 @@
     {
         ContinuumProject project = store.getProject( getProjectId( context ) );
 
-        File workingDirectory = new File( project.getWorkingDirectory() );
+        File workingDirectory = workingDirectoryService.getWorkingDirectory( project );
 
         if ( !workingDirectory.exists() )
         {

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java Thu Aug  4 00:04:54 2005
@@ -22,7 +22,6 @@
 import org.apache.maven.continuum.store.ContinuumStore;
 import org.codehaus.plexus.util.StringUtils;
 
-import java.io.File;
 import java.util.Map;
 
 /**
@@ -50,7 +49,7 @@
         // ----------------------------------------------------------------------
         // Set the working directory
         // ----------------------------------------------------------------------
-
+/*
         File projectWorkingDirectory = new File( getWorkingDirectory( context ), project.getId() );
 
         if ( !projectWorkingDirectory.exists() && !projectWorkingDirectory.mkdirs() )
@@ -63,9 +62,9 @@
         // figure out what it is.
 
         project.setWorkingDirectory( projectWorkingDirectory.getAbsolutePath() );
-
+*/
         project.setCommandLineArguments( StringUtils.clean( project.getCommandLineArguments() ) );
 
-        project = store.updateProject( project );
+        store.updateProject( project );
     }
 }

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectGroupAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectGroupAction.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectGroupAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectGroupAction.java Thu Aug  4 00:04:54 2005
@@ -47,8 +47,6 @@
 
         projectGroup.setWorkingDirectory( projectWorkingDirectory.getAbsolutePath() );
 
-        projectGroup = store.updateProjectGroup( projectGroup );
-
-        context.put( KEY_UNVALIDATED_PROJECT_GROUP, projectGroup );
+        store.updateProjectGroup( projectGroup );
     }
 }

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromWorkingDirectoryContinuumAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromWorkingDirectoryContinuumAction.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromWorkingDirectoryContinuumAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromWorkingDirectoryContinuumAction.java Thu Aug  4 00:04:54 2005
@@ -22,9 +22,9 @@
 import org.apache.maven.continuum.execution.manager.BuildExecutorManager;
 import org.apache.maven.continuum.project.ContinuumProject;
 import org.apache.maven.continuum.store.ContinuumStoreException;
+import org.apache.maven.continuum.utils.WorkingDirectoryService;
 import org.apache.maven.continuum.store.ContinuumStore;
 
-import java.io.File;
 import java.util.Map;
 
 /**
@@ -34,6 +34,9 @@
 public class UpdateProjectFromWorkingDirectoryContinuumAction
     extends AbstractContinuumAction
 {
+    /** @plexus.requirement */
+    private WorkingDirectoryService workingDirectoryService;
+
     private BuildExecutorManager buildExecutorManager;
 
     private ContinuumStore store;
@@ -51,7 +54,8 @@
 
         ContinuumBuildExecutor builder = buildExecutorManager.getBuildExecutor( project.getExecutorId() );
 
-        builder.updateProjectFromCheckOut( new File( project.getWorkingDirectory() ), project );
+        builder.updateProjectFromCheckOut( workingDirectoryService.getWorkingDirectory( project ),
+                                           project );
 
         // ----------------------------------------------------------------------
         // Store the new descriptor

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java Thu Aug  4 00:04:54 2005
@@ -64,7 +64,11 @@
 //        assertStringNotEmpty( project.getPath(), "path" );
 //        assertStringNotEmpty( project.getGroupId(), "group id" );
 //        assertStringNotEmpty( project.getArtifactId(), "artifact id" );
-        // TODO: check for project group
+
+//        if ( project.getProjectGroup() == null )
+//        {
+//            throw new ContinuumException( "A project has to belong to a project group." );
+//        }
 
         // TODO: validate that the SCM provider id
 

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/AbstractBuildExecutor.java Thu Aug  4 00:04:54 2005
@@ -18,6 +18,8 @@
 
 import org.apache.maven.continuum.utils.shell.ExecutionResult;
 import org.apache.maven.continuum.utils.shell.ShellCommandHelper;
+import org.apache.maven.continuum.utils.WorkingDirectoryService;
+import org.apache.maven.continuum.project.ContinuumProject;
 import org.codehaus.plexus.commandline.ExecutableResolver;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
@@ -51,6 +53,11 @@
     private ExecutableResolver executableResolver;
 
     /**
+     * @plexus.requirement
+     * */
+    private WorkingDirectoryService workingDirectoryService;
+
+    /**
      * @plexus.configuration
      */
     private String defaultExecutable;
@@ -112,7 +119,7 @@
     //
     // ----------------------------------------------------------------------
 
-    protected ContinuumBuildExecutionResult executeShellCommand( File workingDirectory,
+    protected ContinuumBuildExecutionResult executeShellCommand( ContinuumProject project,
                                                                  String executable,
                                                                  String arguments,
                                                                  File output )
@@ -125,6 +132,8 @@
         // ----------------------------------------------------------------------
 
         String actualExecutable;
+
+        File workingDirectory = workingDirectoryService.getWorkingDirectory( project );
 
         if ( !resolveExecutable )
         {

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/ant/AntBuildExecutor.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/ant/AntBuildExecutor.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/ant/AntBuildExecutor.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/ant/AntBuildExecutor.java Thu Aug  4 00:04:54 2005
@@ -62,14 +62,12 @@
     {
         AntProject project = (AntProject) p;
 
-        File workingDirectory = new File( project.getWorkingDirectory() );
-
         String executable = project.getExecutable();
 
         String arguments = StringUtils.clean( project.getCommandLineArguments() ) + " " +
                            StringUtils.clean( project.getTargets() );
 
-        return executeShellCommand( workingDirectory,
+        return executeShellCommand( project,
                                     executable,
                                     arguments,
                                     buildOutput );

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/MavenOneBuildExecutor.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/MavenOneBuildExecutor.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/MavenOneBuildExecutor.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m1/MavenOneBuildExecutor.java Thu Aug  4 00:04:54 2005
@@ -59,12 +59,10 @@
     {
         MavenOneProject project = (MavenOneProject) p;
 
-        File workingDirectory = new File( project.getWorkingDirectory() );
-
         String commandLine = StringUtils.clean( project.getCommandLineArguments() ) + " " +
                              StringUtils.clean( project.getGoals() );
 
-        return executeShellCommand( workingDirectory, 
+        return executeShellCommand( project,
                                     null,
                                     commandLine,
                                     buildOutput );

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java Thu Aug  4 00:04:54 2005
@@ -180,8 +180,6 @@
 
                 cd.setVersion( dependency.getVersion() );
 
-                System.out.println( "adding cd = " + cd );
-
                 dependencies.add( cd );
             }
 

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/MavenTwoBuildExecutor.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/MavenTwoBuildExecutor.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/MavenTwoBuildExecutor.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/MavenTwoBuildExecutor.java Thu Aug  4 00:04:54 2005
@@ -38,9 +38,9 @@
     //
     // ----------------------------------------------------------------------
 
-    public final static String CONFIGURATION_GOALS = "goals";
+    public static final String CONFIGURATION_GOALS = "goals";
 
-    public final static String ID = "maven2";
+    public static final String ID = "maven2";
 
     // ----------------------------------------------------------------------
     //
@@ -67,12 +67,10 @@
     {
         MavenTwoProject project = (MavenTwoProject) p;
 
-        File workingDirectory = new File( project.getWorkingDirectory() );
-
         String arguments = StringUtils.clean( project.getCommandLineArguments() ) + " " +
                            StringUtils.clean( project.getGoals() );
 
-        return executeShellCommand( workingDirectory,
+        return executeShellCommand( project,
                                     null,
                                     arguments,
                                     buildOutput );

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/shell/ShellBuildExecutor.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/shell/ShellBuildExecutor.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/shell/ShellBuildExecutor.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/shell/ShellBuildExecutor.java Thu Aug  4 00:04:54 2005
@@ -39,7 +39,7 @@
 
     public static final String CONFIGURATION_EXECUTABLE = "executable";
 
-    public final static String ID = "shell";
+    public static final String ID = "shell";
 
     // ----------------------------------------------------------------------
     //
@@ -59,11 +59,9 @@
     {
         ShellProject project = (ShellProject) p;
 
-        File workingDirectory = new File( project.getWorkingDirectory() );
-
         String executable = project.getExecutable();
 
-        return executeShellCommand( workingDirectory,
+        return executeShellCommand( project,
                                     executable,
                                     project.getCommandLineArguments(),
                                     buildOutput );

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/ContinuumInitializer.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/ContinuumInitializer.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/ContinuumInitializer.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/ContinuumInitializer.java Thu Aug  4 00:04:54 2005
@@ -1,8 +1,5 @@
 package org.apache.maven.continuum.initialization;
 
-import org.apache.maven.continuum.project.ContinuumBuildSettings;
-import org.apache.maven.continuum.project.ContinuumProjectGroup;
-
 /*
  * Copyright 2004-2005 The Apache Software Foundation.
  *
@@ -19,6 +16,8 @@
  * limitations under the License.
  */
 
+import org.apache.maven.continuum.project.ContinuumBuildSettings;
+
 /**
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
  * @version $Id:$
@@ -29,8 +28,6 @@
 
     void initialize()
         throws ContinuumInitializationException;
-
-    ContinuumProjectGroup getDefaultProjectGroup();
 
     ContinuumBuildSettings getDefaultBuildSettings();
 }

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java Thu Aug  4 00:04:54 2005
@@ -1,12 +1,5 @@
 package org.apache.maven.continuum.initialization;
 
-import org.apache.maven.continuum.build.settings.BuildSettingsConstants;
-import org.apache.maven.continuum.project.ContinuumBuildSettings;
-import org.apache.maven.continuum.project.ContinuumProjectGroup;
-import org.apache.maven.continuum.store.ContinuumStore;
-import org.apache.maven.continuum.store.ContinuumStoreException;
-import org.codehaus.plexus.logging.AbstractLogEnabled;
-
 /*
  * Copyright 2004-2005 The Apache Software Foundation.
  *
@@ -23,6 +16,12 @@
  * limitations under the License.
  */
 
+import org.apache.maven.continuum.build.settings.BuildSettingsConstants;
+import org.apache.maven.continuum.project.ContinuumBuildSettings;
+import org.apache.maven.continuum.store.ContinuumStore;
+import org.apache.maven.continuum.store.ContinuumStoreException;
+import org.codehaus.plexus.logging.AbstractLogEnabled;
+
 /**
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
  * @version $Id:$
@@ -55,8 +54,6 @@
     // Default project group and build settings
     // ----------------------------------------------------------------------
 
-    private ContinuumProjectGroup defaultProjectGroup;
-
     private ContinuumBuildSettings defaultBuildSettings;
 
     // ----------------------------------------------------------------------
@@ -85,33 +82,6 @@
         {
             throw new ContinuumInitializationException( "Error storing default Continuum build settings.", e );
         }
-
-        defaultProjectGroup = createDefaultProjectGroup();
-
-        try
-        {
-            defaultProjectGroup = store.addProjectGroup( defaultProjectGroup );
-        }
-        catch ( ContinuumStoreException e )
-        {
-            throw new ContinuumInitializationException( "Error storing default Continuum project group.", e );
-        }
-
-        defaultProjectGroup.addBuildSetting( defaultBuildSettings );
-
-        try
-        {
-            defaultProjectGroup = store.updateProjectGroup( defaultProjectGroup );
-        }
-        catch ( ContinuumStoreException e )
-        {
-            throw new ContinuumInitializationException( "Error updating default Continuum project group.", e );
-        }
-    }
-
-    public ContinuumProjectGroup getDefaultProjectGroup()
-    {
-        return defaultProjectGroup;
     }
 
     public ContinuumBuildSettings getDefaultBuildSettings()
@@ -122,20 +92,6 @@
     // ----------------------------------------------------------------------
     //
     // ----------------------------------------------------------------------
-
-    public ContinuumProjectGroup createDefaultProjectGroup()
-        throws ContinuumInitializationException
-    {
-        ContinuumProjectGroup projectGroup = new ContinuumProjectGroup();
-
-        projectGroup.setName( DEFAULT_PROJECT_GROUP_NAME );
-
-        projectGroup.setGroupId( DEFAULT_PROJECT_GROUP_ID );
-
-        projectGroup.setDescription( DEFAULT_PROJECT_GROUP_DESCRIPTION );
-
-        return projectGroup;
-    }
 
     public ContinuumBuildSettings createDefaultBuildSettings()
         throws ContinuumInitializationException

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilder.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilder.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilder.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilder.java Thu Aug  4 00:04:54 2005
@@ -20,6 +20,7 @@
 import org.apache.maven.continuum.execution.maven.m1.MavenOneMetadataHelper;
 import org.apache.maven.continuum.execution.maven.m1.MavenOneMetadataHelperException;
 import org.apache.maven.continuum.project.MavenOneProject;
+import org.apache.maven.continuum.project.ContinuumProjectGroup;
 import org.apache.maven.continuum.project.builder.AbstractContinuumProjectBuilder;
 import org.apache.maven.continuum.project.builder.ContinuumProjectBuilder;
 import org.apache.maven.continuum.project.builder.ContinuumProjectBuildingResult;
@@ -64,9 +65,11 @@
             return result;
         }
 
+        MavenOneProject project;
+
         try
         {
-            MavenOneProject project = new MavenOneProject();
+            project = new MavenOneProject();
 
             metadataHelper.mapMetadata( pomFile, project );
 
@@ -76,6 +79,18 @@
         {
             result.addWarning( e.getMessage() );
         }
+
+        // ----------------------------------------------------------------------
+        // This is a hack.
+        // ----------------------------------------------------------------------
+
+        ContinuumProjectGroup projectGroup = new ContinuumProjectGroup();
+
+        projectGroup.setName( "Maven 1 group" );
+
+        projectGroup.setGroupId( "dummy" );
+
+        result.addProjectGroup( projectGroup );
 
         return result;
     }

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilder.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilder.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilder.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilder.java Thu Aug  4 00:04:54 2005
@@ -98,9 +98,7 @@
         }
         catch ( IOException e )
         {
-            getLogger().warn( "Could not download the URL", e );
-
-            result.addWarning( "Could not download " + url );
+            result.addWarning( "Could not download " + url + ": " + e.getMessage() );
 
             return;
         }

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/ContinuumSchedulerException.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/ContinuumSchedulerException.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/ContinuumSchedulerException.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/ContinuumSchedulerException.java Thu Aug  4 00:04:54 2005
@@ -2,7 +2,7 @@
 
 /**
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
- * @version $Id:$
+ * @version $Id$
  */
 public class ContinuumSchedulerException
     extends Exception

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/DefaultContinuumScheduler.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/DefaultContinuumScheduler.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/DefaultContinuumScheduler.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scheduler/DefaultContinuumScheduler.java Thu Aug  4 00:04:54 2005
@@ -48,7 +48,7 @@
     public boolean jobExists( String jobName, String jobGroup )
         throws ContinuumSchedulerException
     {
-        String[] jobNames = null;
+        String[] jobNames;
 
         try
         {
@@ -63,9 +63,10 @@
         {
             String name = jobNames[i];
 
-            if ( jobName.equals( name ) );
-
-            return true;
+            if ( jobName.equals( name ) )
+            {
+                return true;
+            }
         }
 
         return false;
@@ -74,9 +75,6 @@
     /**
      * Create job detail for a build job. The detail contains a map of objects that can be utilized
      * by the executing job.
-     *
-     * @param schedule
-     * @return
      */
     protected JobDetail createJobDetail( ContinuumSchedule schedule )
     {
@@ -90,9 +88,6 @@
     /**
      * Create Job data map for a build job. The map of objects created can be utilized by
      * the executing job.
-     *
-     * @param schedule
-     * @return
      */
     protected JobDataMap createJobDataMap( ContinuumSchedule schedule )
     {
@@ -123,7 +118,7 @@
 
         trigger.setGroup( Scheduler.DEFAULT_GROUP );
 
-        Date startTime = new Date( System.currentTimeMillis() + ( schedule.getDelay() * 1000 ) );
+        Date startTime = new Date( System.currentTimeMillis() + schedule.getDelay() * 1000 );
 
         trigger.setStartTime( startTime );
 

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java Thu Aug  4 00:04:54 2005
@@ -17,6 +17,7 @@
  */
 
 import org.apache.maven.continuum.project.ContinuumProject;
+import org.apache.maven.continuum.utils.WorkingDirectoryService;
 import org.apache.maven.scm.ScmException;
 import org.apache.maven.scm.ScmFileSet;
 import org.apache.maven.scm.command.checkout.CheckOutScmResult;
@@ -39,9 +40,16 @@
     extends AbstractLogEnabled
     implements ContinuumScm
 {
-    /** @plexus.requirement */
+    /**
+     * @plexus.requirement
+     */
     private ScmManager scmManager;
 
+    /**
+     * @plexus.requirement
+     */
+    private WorkingDirectoryService workingDirectoryService;
+
     // ----------------------------------------------------------------------
     // ContinuumScm implementation
     // ----------------------------------------------------------------------
@@ -121,14 +129,14 @@
     public ScmResult checkOutProject( ContinuumProject project )
         throws ContinuumScmException
     {
-        String workingDirectory = project.getWorkingDirectory();
+        File workingDirectory = workingDirectoryService.getWorkingDirectory( project );
 
         if ( workingDirectory == null )
         {
             throw new ContinuumScmException( "The working directory for the project has to be set. Project: '" + project.getName() + "', id: '" + project.getId() + "'.");
         }
 
-        return checkOut( project, new File( workingDirectory ) );
+        return checkOut( project, workingDirectory );
     }
 
     public ScmResult updateProject( ContinuumProject project )
@@ -138,11 +146,12 @@
         {
             getLogger().info( "Updating project: id: '" + project.getId() + "', name '" + project.getName() + "'." );
 
-            File workingDirectory = new File( project.getWorkingDirectory() );
+            File workingDirectory = workingDirectoryService.getWorkingDirectory( project );
 
             if ( !workingDirectory.exists() )
             {
-                throw new ContinuumScmException( "The working directory for the project doesn't exist (" + project.getWorkingDirectory() + ")." );
+                throw new ContinuumScmException( "The working directory for the project doesn't exist " +
+                                                 "(" + workingDirectory.getAbsolutePath() + ")." );
             }
 
             ScmRepository repository = scmManager.makeScmRepository( project.getScmUrl() );

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java Thu Aug  4 00:04:54 2005
@@ -29,6 +29,10 @@
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException;
 
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
 import javax.jdo.Extent;
 import javax.jdo.JDOObjectNotFoundException;
 import javax.jdo.JDOUserException;
@@ -36,10 +40,6 @@
 import javax.jdo.PersistenceManagerFactory;
 import javax.jdo.Query;
 import javax.jdo.Transaction;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
 
 /**
  * @author <a href="mailto:trygvis@inamo.no">Trygve Laugst&oslash;l</a>
@@ -165,6 +165,24 @@
     public ContinuumProject updateProject( ContinuumProject project )
         throws ContinuumStoreException
     {
+        String checkoutErrorMessage = project.getCheckOutErrorMessage();
+
+        String checkoutErrorException = project.getCheckOutErrorException();
+
+        if ( checkoutErrorMessage != null && checkoutErrorMessage.length() > 255 )
+        {
+            project.setCheckOutErrorMessage( checkoutErrorMessage.substring( 0, 255 ) );
+        }
+
+        if ( checkoutErrorException != null && checkoutErrorException.length() > 255 )
+        {
+            project.setCheckOutErrorException( checkoutErrorException.substring( 0, 255 ) );
+        }
+
+        // ----------------------------------------------------------------------
+        //
+        // ----------------------------------------------------------------------
+
         PersistenceManager pm = pmf.getPersistenceManager();
 
         Transaction tx = pm.currentTransaction();
@@ -178,15 +196,25 @@
             // of schedules or they don't get saved.
             // ----------------------------------------------------------------------
 
-            if ( project.getSchedules() != null && project.getSchedules().size() > 0 )
-            {
-                pm.attachCopyAll( project.getSchedules(), true );
-            }
-
-            if ( project.getBuildGroups() != null && project.getBuildGroups().size() > 0 )
-            {
-                pm.attachCopyAll( project.getBuildGroups(), true );
-            }
+//            if ( project.getSchedules() != null && project.getSchedules().size() > 0 )
+//            {
+//                pm.attachCopyAll( project.getSchedules(), true );
+//            }
+
+//            if ( project.getBuildGroups() != null && project.getBuildGroups().size() > 0 )
+//            {
+//                pm.attachCopyAll( project.getBuildGroups(), true );
+//            }
+
+//            if ( project.getProjectGroup() != null )
+//            {
+//                pm.attachCopy( project.getProjectGroup(), true );
+//            }
+//
+//            if ( project.getScmResult() != null )
+//            {
+//                pm.attachCopy( project.getScmResult(), true );
+//            }
 
             pm.attachCopy( project, true );
 
@@ -253,6 +281,8 @@
 
             Query query = pm.newQuery( extent );
 
+            query.declareImports( "import java.lang.String" );
+
             query.declareParameters( "String name" );
 
             query.setFilter( "this.name == name" );
@@ -295,6 +325,8 @@
 
             Query query = pm.newQuery( extent );
 
+            query.declareImports( "import java.lang.String" );
+
             query.declareParameters( "String scmUrl" );
 
             query.setFilter( "this.scmUrl == scmUrl" );
@@ -637,6 +669,8 @@
 
             query.setFilter( "this.project.id == id" );
 
+            query.declareImports( "import java.lang.String" );
+
             query.declareParameters( "String id" );
 
             query.setOrdering( "startTime descending" );
@@ -1104,10 +1138,18 @@
         {
             tx.begin();
 
+            // ----------------------------------------------------------------------
+            // Store the object
+            // ----------------------------------------------------------------------
+
             pm.makePersistent( object );
 
             Object id = pm.getObjectId( object );
 
+            // ----------------------------------------------------------------------
+            // Fetch the object again and return it
+            // ----------------------------------------------------------------------
+
             pm.getFetchPlan().addGroup( detailedFetchGroup );
 
             Object addedObject = pm.getObjectById( id );
@@ -1191,12 +1233,12 @@
 
             Query query = pm.newQuery( extent );
 
+            query.declareImports( "import java.lang.String" );
+
             query.declareParameters( "String " + idField );
 
             query.setFilter( "this." + idField + " == " + idField );
 
-            query.getFetchPlan().addGroup( fetchGroup );
-
             Collection result = (Collection) query.execute( id );
 
             if ( result.size() == 0 )
@@ -1210,6 +1252,8 @@
                                                    "type " + clazz.getName() + " on the " +
                                                    "field '" + idField + "' returned more than one object." );
             }
+
+            pm.getFetchPlan().addGroup( fetchGroup );
 
             Object object = pm.detachCopy( result.iterator().next() );
 

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/trigger/quartz/ContinuumBuildTrigger.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/trigger/quartz/ContinuumBuildTrigger.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/trigger/quartz/ContinuumBuildTrigger.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/trigger/quartz/ContinuumBuildTrigger.java Thu Aug  4 00:04:54 2005
@@ -4,7 +4,7 @@
 
 /**
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
- * @version $Id:$
+ * @version $Id$
  */
 public class ContinuumBuildTrigger
     extends SimpleTrigger

Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/utils/shell/DefaultShellCommandHelper.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/utils/shell/DefaultShellCommandHelper.java?rev=227315&r1=227314&r2=227315&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/utils/shell/DefaultShellCommandHelper.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/utils/shell/DefaultShellCommandHelper.java Thu Aug  4 00:04:54 2005
@@ -21,7 +21,6 @@
 import org.codehaus.plexus.util.cli.Commandline;
 import org.codehaus.plexus.util.cli.StreamConsumer;
 import org.codehaus.plexus.util.cli.WriterStreamConsumer;
-import org.codehaus.plexus.util.FileUtils;
 
 import java.io.File;
 import java.io.FileWriter;



Mime
View raw message