You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by tr...@apache.org on 2005/06/02 21:04:22 UTC
svn commit: r179627 - in /maven/continuum/trunk/continuum-core/src:
main/java/org/apache/maven/continuum/core/
main/java/org/apache/maven/continuum/core/action/
main/java/org/apache/maven/continuum/project/builder/manager/
main/java/org/apache/maven/continuum/project/builder/maven/
test/java/org/apache/maven/continuum/project/builder/maven/
Author: trygvis
Date: Thu Jun 2 12:04:21 2005
New Revision: 179627
URL: http://svn.apache.org/viewcvs?rev=179627&view=rev
Log:
o Adding some actions.
Added:
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java (with props)
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/BuildProjectsFromMetadataAction.java (with props)
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java (with props)
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java (with props)
Modified:
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/DefaultContinuumCore.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/CheckOutProjectContinuumAction.java
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ExecuteBuilderContinuumAction.java
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromScmContinuumAction.java
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectMetadataContinuumAction.java
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/ContinuumProjectBuilderManager.java
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/DefaultContinuumProjectBuilderManager.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/test/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilderTest.java
maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/DefaultContinuumCore.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/DefaultContinuumCore.java?rev=179627&r1=179626&r2=179627&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/DefaultContinuumCore.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/DefaultContinuumCore.java Thu Jun 2 12:04:21 2005
@@ -176,7 +176,7 @@
try
{
- result = projectBuilder.createProjectsFromMetadata( url );
+ result = projectBuilder.buildProjectsFromMetadata( url );
}
catch ( ContinuumProjectBuilderException e )
{
@@ -487,7 +487,7 @@
{
try
{
- return projectBuilderManager.getProjectCreator( projectBuilderId );
+ return projectBuilderManager.getProjectBuilder( projectBuilderId );
}
catch ( ContinuumProjectBuilderManagerException e )
{
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=179627&r1=179626&r2=179627&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 Jun 2 12:04:21 2005
@@ -83,17 +83,11 @@
//
// ----------------------------------------------------------------------
- private static ThreadLocal threadContext = new ThreadLocal();
-
- // ----------------------------------------------------------------------
- //
- // ----------------------------------------------------------------------
-
- protected abstract void doExecute()
+ protected abstract void doExecute( Map context )
throws Exception;
- protected abstract void handleException( Throwable throwable )
- throws ContinuumStoreException;
+// protected abstract void handleException( Throwable throwable )
+// throws ContinuumStoreException;
protected void handleContinuumStoreException( ContinuumStoreException exception )
{
@@ -133,94 +127,54 @@
//
// ----------------------------------------------------------------------
- protected void putContext( String key, Object value )
- {
- getContext().put( key, value );
- }
-
- protected String getProjectId()
+ protected String getProjectId( Map context )
throws ContinuumStoreException
{
- return getString( KEY_PROJECT_ID );
+ return getString( context, KEY_PROJECT_ID );
}
- protected String getBuildId()
+ protected String getBuildId( Map context )
throws ContinuumStoreException
{
- return getString( KEY_BUILD_ID );
+ return getString( context, KEY_BUILD_ID );
}
- protected boolean isForced()
+ protected boolean isForced( Map context )
throws ContinuumStoreException
{
- return ((Boolean) getObject( KEY_FORCED )).booleanValue();
+ return ((Boolean) getObject( context, KEY_FORCED )).booleanValue();
}
- protected ContinuumProject getProject()
+ protected ContinuumProject getProject( Map context )
throws ContinuumStoreException
{
- return getStore().getProject( getProjectId() );
+ return getStore().getProject( getProjectId( context ) );
}
- protected ContinuumBuild getBuild()
+ protected ContinuumBuild getBuild( Map context )
throws ContinuumStoreException
{
- return getStore().getBuild( getBuildId() );
+ return getStore().getBuild( getBuildId( context ) );
}
- protected File getWorkingDirectory()
+ protected File getWorkingDirectory( Map context )
{
- return new File( getString( KEY_WORKING_DIRECTORY ) );
+ return new File( getString( context, KEY_WORKING_DIRECTORY ) );
}
- protected CheckOutScmResult getCheckOutResult()
+ protected CheckOutScmResult getCheckOutResult( Map context )
{
- return (CheckOutScmResult) getObject( KEY_CHECKOUT_SCM_RESULT );
+ return (CheckOutScmResult) getObject( context, KEY_CHECKOUT_SCM_RESULT );
}
- protected UpdateScmResult getUpdateScmResult()
+ protected UpdateScmResult getUpdateScmResult( Map context )
{
- return (UpdateScmResult) getObject( KEY_UPDATE_SCM_RESULT );
+ return (UpdateScmResult) getObject( context, KEY_UPDATE_SCM_RESULT );
}
- protected UpdateScmResult getUpdateScmResult( UpdateScmResult defaultValue )
+ protected UpdateScmResult getUpdateScmResult( Map context, UpdateScmResult defaultValue )
{
- return (UpdateScmResult) getObject( KEY_UPDATE_SCM_RESULT, defaultValue );
- }
-
-// protected void buildCompleted()
-// {
-// }
-//
-// protected void buildError( Throwable throwable )
-// throws ContinuumStoreException
-// {
-// UpdateScmResult updateScmResult = getUpdateScmResult( null );
-//
-// String buildId = getString( KEY_BUILD_ID, null );
-//
-// if ( buildId == null )
-// {
-// createBuild().getId();
-// }
-//
-// getStore().setBuildResult( getProjectId(),
-// ContinuumProjectState.ERROR,
-// null,
-// updateScmResult,
-// throwable );
-// }
-
- private String getString( String key, String defaultValue )
- {
- String value = (String) getContext().get( key );
-
- if ( value == null )
- {
- return defaultValue;
- }
-
- return value;
+ return (UpdateScmResult) getObject( context, KEY_UPDATE_SCM_RESULT, defaultValue );
}
// ----------------------------------------------------------------------
@@ -229,11 +183,9 @@
public void execute( Map context )
{
- threadContext.set( context );
-
try
{
- doExecute();
+ doExecute( context );
}
catch ( ContinuumStoreException e )
{
@@ -241,14 +193,15 @@
}
catch ( Exception e )
{
- try
- {
- handleException( e );
- }
- catch ( ContinuumStoreException e2 )
- {
- handleContinuumStoreException( e2 );
- }
+ throw new RuntimeException( "Error while executing action.", e );
+// try
+// {
+// handleException( e );
+// }
+// catch ( ContinuumStoreException e2 )
+// {
+// handleContinuumStoreException( e2 );
+// }
}
finally
{
@@ -260,8 +213,6 @@
{
handleContinuumStoreException( e );
}
-
- threadContext.set( null );
}
}
@@ -269,19 +220,14 @@
//
// ----------------------------------------------------------------------
- private Map getContext()
- {
- return (Map) threadContext.get();
- }
-
- private String getString( String key )
+ protected String getString( Map context, String key )
{
- return (String) getObject( key );
+ return (String) context.get( key );
}
- private Object getObject( String key )
+ private Object getObject( Map context, String key )
{
- Object value = getContext().get( key );
+ Object value = context.get( key );
if ( value == null )
{
@@ -291,9 +237,9 @@
return value;
}
- private Object getObject( String key, Object defaultValue )
+ private Object getObject( Map context, String key, Object defaultValue )
{
- Object value = getContext().get( key );
+ Object value = context.get( key );
if ( value == null )
{
Added: 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=179627&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java (added)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java Thu Jun 2 12:04:21 2005
@@ -0,0 +1,50 @@
+package org.apache.maven.continuum.core.action;
+
+/*
+ * 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 java.util.Map;
+import java.io.File;
+
+import org.apache.maven.continuum.scm.queue.CheckOutTask;
+import org.apache.maven.continuum.project.ContinuumProject;
+
+import org.codehaus.plexus.taskqueue.TaskQueueException;
+import org.codehaus.plexus.taskqueue.TaskQueue;
+
+/**
+ * @author <a href="mailto:trygvis@inamo.no">Trygve Laugstøl</a>
+ * @version $Id$
+ */
+public class AddProjectToCheckOutQueueAction
+ extends AbstractContinuumAction
+{
+ /**
+ * @plexus.requirement
+ */
+ private TaskQueue checkOutQueue;
+
+ protected void doExecute( Map context )
+ throws Exception
+ {
+ ContinuumProject project = getProject( context );
+
+ CheckOutTask checkOutTask = new CheckOutTask( project.getId(),
+ new File( project.getWorkingDirectory() ) );
+
+ checkOutQueue.put( checkOutTask );
+ }
+}
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddProjectToCheckOutQueueAction.java
------------------------------------------------------------------------------
svn:keywords = Id
Added: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/BuildProjectsFromMetadataAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/BuildProjectsFromMetadataAction.java?rev=179627&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/BuildProjectsFromMetadataAction.java (added)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/BuildProjectsFromMetadataAction.java Thu Jun 2 12:04:21 2005
@@ -0,0 +1,63 @@
+package org.apache.maven.continuum.core.action;
+
+/*
+ * 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 java.net.URL;
+import java.util.Map;
+
+import org.apache.maven.continuum.project.builder.ContinuumProjectBuilder;
+import org.apache.maven.continuum.project.builder.ContinuumProjectBuildingResult;
+import org.apache.maven.continuum.project.builder.manager.ContinuumProjectBuilderManager;
+import org.apache.maven.continuum.store.ContinuumStoreException;
+
+/**
+ * @author <a href="mailto:trygvis@inamo.no">Trygve Laugstøl</a>
+ * @version $Id$
+ */
+public class BuildProjectsFromMetadataAction
+ extends AbstractContinuumAction
+{
+ public static final String KEY_URL = "url";
+
+ public static final String KEY_PROJECT_BUILDER_ID = "builderId";
+
+ public static final String KEY_PROJECT_BUILDING_RESULT = "projectBuildingResult";
+
+ /**
+ * @plexus.requirement
+ */
+ private ContinuumProjectBuilderManager projectBuilderManager;
+
+ protected void doExecute( Map context )
+ throws Exception
+ {
+ String projectBuilderId = getString( context, KEY_PROJECT_BUILDER_ID );
+
+ URL url = new URL( getString( context, KEY_URL ) );
+
+ ContinuumProjectBuilder projectBuilder = projectBuilderManager.getProjectBuilder( projectBuilderId );
+
+ ContinuumProjectBuildingResult result = projectBuilder.buildProjectsFromMetadata( url );
+
+ context.put( KEY_PROJECT_BUILDING_RESULT, result );
+ }
+
+ protected void handleException( Throwable throwable )
+ throws ContinuumStoreException
+ {
+ }
+}
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/BuildProjectsFromMetadataAction.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/BuildProjectsFromMetadataAction.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CheckOutProjectContinuumAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CheckOutProjectContinuumAction.java?rev=179627&r1=179626&r2=179627&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CheckOutProjectContinuumAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/CheckOutProjectContinuumAction.java Thu Jun 2 12:04:21 2005
@@ -17,6 +17,7 @@
*/
import java.io.File;
+import java.util.Map;
import org.apache.maven.continuum.project.ContinuumProject;
import org.apache.maven.continuum.scm.CheckOutScmResult;
@@ -30,7 +31,7 @@
public class CheckOutProjectContinuumAction
extends AbstractContinuumAction
{
- protected void doExecute()
+ protected void doExecute( Map context )
throws Exception
{
String projectId = getProjectId();
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ExecuteBuilderContinuumAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ExecuteBuilderContinuumAction.java?rev=179627&r1=179626&r2=179627&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ExecuteBuilderContinuumAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ExecuteBuilderContinuumAction.java Thu Jun 2 12:04:21 2005
@@ -17,6 +17,7 @@
*/
import java.util.Collection;
+import java.util.Map;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.execution.ContinuumBuildExecutor;
@@ -34,7 +35,7 @@
public class ExecuteBuilderContinuumAction
extends AbstractContinuumAction
{
- protected void doExecute()
+ protected void doExecute( Map context )
throws Exception
{
// ----------------------------------------------------------------------
Added: 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=179627&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java (added)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java Thu Jun 2 12:04:21 2005
@@ -0,0 +1,72 @@
+package org.apache.maven.continuum.core.action;
+
+/*
+ * 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 java.util.Map;
+import java.io.File;
+
+import org.apache.maven.continuum.store.ContinuumStore;
+import org.apache.maven.continuum.project.ContinuumProject;
+import org.apache.maven.continuum.ContinuumException;
+
+/**
+ * @author <a href="mailto:trygvis@inamo.no">Trygve Laugstøl</a>
+ * @version $Id$
+ */
+public class StoreProjectAction
+ extends AbstractContinuumAction
+{
+ /**
+ * @plexus.requirement
+ */
+ private ContinuumStore store;
+
+ /**
+ * @plexus.configuration
+ * default-value="${plexus.home}/temp"
+ */
+ private String workingDirectory;
+
+ protected void doExecute( Map context )
+ throws Exception
+ {
+ ContinuumProject project = getProject( context );
+
+ String projectId = store.addProject( project.getName(),
+ project.getScmUrl(),
+ project.getNagEmailAddress(),
+ project.getVersion(),
+ project.getCommandLineArguments(),
+ project.getExecutorId(),
+ null,
+ project.getConfiguration() );
+
+ // ----------------------------------------------------------------------
+ // Set the working directory
+ // ----------------------------------------------------------------------
+
+ File projectWorkingDirectory = new File( workingDirectory, projectId );
+
+ if ( !projectWorkingDirectory.exists() && !projectWorkingDirectory.mkdirs() )
+ {
+ throw new ContinuumException( "Could not make the working directory for the project " +
+ "'" + projectWorkingDirectory.getAbsolutePath() + "'." );
+ }
+
+ project.setWorkingDirectory( projectWorkingDirectory.getAbsolutePath() );
+ }
+}
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/StoreProjectAction.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromScmContinuumAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromScmContinuumAction.java?rev=179627&r1=179626&r2=179627&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromScmContinuumAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectFromScmContinuumAction.java Thu Jun 2 12:04:21 2005
@@ -16,6 +16,8 @@
* limitations under the License.
*/
+import java.util.Map;
+
import org.apache.maven.continuum.project.ContinuumProject;
import org.apache.maven.continuum.project.ContinuumProjectState;
import org.apache.maven.continuum.scm.UpdateScmResult;
@@ -28,7 +30,7 @@
public class UpdateProjectFromScmContinuumAction
extends AbstractContinuumAction
{
- protected void doExecute()
+ protected void doExecute( Map context )
throws Exception
{
ContinuumProject project = getProject();
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectMetadataContinuumAction.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectMetadataContinuumAction.java?rev=179627&r1=179626&r2=179627&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectMetadataContinuumAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateProjectMetadataContinuumAction.java Thu Jun 2 12:04:21 2005
@@ -16,6 +16,8 @@
* limitations under the License.
*/
+import java.util.Map;
+
import org.apache.maven.continuum.project.ContinuumProjectState;
import org.apache.maven.continuum.store.ContinuumStoreException;
@@ -26,7 +28,7 @@
public class UpdateProjectMetadataContinuumAction
extends AbstractContinuumAction
{
- protected void doExecute()
+ protected void doExecute( Map context )
throws Exception
{
getCore().updateProjectFromScm( getProjectId() );
Added: 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=179627&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java (added)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java Thu Jun 2 12:04:21 2005
@@ -0,0 +1,88 @@
+package org.apache.maven.continuum.core.action;
+
+/*
+ * 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 java.util.Map;
+
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.core.ContinuumCore;
+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.store.ContinuumStore;
+
+import org.codehaus.plexus.util.StringUtils;
+
+/**
+ * @author <a href="mailto:trygvis@inamo.no">Trygve Laugstøl</a>
+ * @version $Id$
+ */
+public class ValidateProject
+ extends AbstractContinuumAction
+{
+ /**
+ * @plexus.requirement
+ */
+ private BuildExecutorManager buildExecutorManager;
+
+ /**
+ * @plexus.requirement
+ */
+ private ContinuumCore core;
+
+ /**
+ * @plexus.requirement
+ */
+ private ContinuumStore store;
+
+ protected void doExecute( Map context )
+ throws Exception
+ {
+ ContinuumProject project = getProject( context );
+
+ // ----------------------------------------------------------------------
+ // Make sure that the builder id is correct before starting to check
+ // stuff out
+ // ----------------------------------------------------------------------
+
+ if ( !buildExecutorManager.hasBuildExecutor( project.getExecutorId() ) )
+ {
+ throw new ContinuumException( "No such executor with id '" + project.getExecutorId() + "'." );
+ }
+
+ if ( store.getProjectByName( project.getName() ) != null )
+ {
+ throw new ContinuumException( "A project with the name '" + project.getName() + "' already exist." );
+ }
+
+// if ( getProjectByScmUrl( scmUrl ) != null )
+// {
+// throw new ContinuumStoreException( "A project with the scm url '" + scmUrl + "' already exist." );
+// }
+
+ // ----------------------------------------------------------------------
+ // Validate each field
+ // ----------------------------------------------------------------------
+
+ project.setCommandLineArguments( StringUtils.clean( project.getCommandLineArguments() ) );
+ }
+
+ protected void handleException( Throwable throwable )
+ throws ContinuumStoreException
+ {
+ }
+}
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/ValidateProject.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/ContinuumProjectBuilderManager.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/ContinuumProjectBuilderManager.java?rev=179627&r1=179626&r2=179627&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/ContinuumProjectBuilderManager.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/ContinuumProjectBuilderManager.java Thu Jun 2 12:04:21 2005
@@ -20,12 +20,12 @@
/**
* @author <a href="mailto:trygvis@inamo.no">Trygve Laugstøl</a>
- * @version $Id:$
+ * @version $Id$
*/
public interface ContinuumProjectBuilderManager
{
String ROLE = ContinuumProjectBuilderManager.class.getName();
- ContinuumProjectBuilder getProjectCreator( String id )
+ ContinuumProjectBuilder getProjectBuilder( String id )
throws ContinuumProjectBuilderManagerException;
}
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/DefaultContinuumProjectBuilderManager.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/DefaultContinuumProjectBuilderManager.java?rev=179627&r1=179626&r2=179627&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/DefaultContinuumProjectBuilderManager.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/manager/DefaultContinuumProjectBuilderManager.java Thu Jun 2 12:04:21 2005
@@ -24,7 +24,7 @@
/**
* @author <a href="mailto:trygvis@inamo.no">Trygve Laugstøl</a>
- * @version $Id:$
+ * @version $Id$
*/
public class DefaultContinuumProjectBuilderManager
extends AbstractLogEnabled
@@ -37,7 +37,7 @@
// ProjectCreatorManager Implementation
// ----------------------------------------------------------------------
- public ContinuumProjectBuilder getProjectCreator( String id )
+ public ContinuumProjectBuilder getProjectBuilder( String id )
throws ContinuumProjectBuilderManagerException
{
ContinuumProjectBuilder projectBuilder = ( ContinuumProjectBuilder ) projectBuilders.get( id );
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=179627&r1=179626&r2=179627&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 Jun 2 12:04:21 2005
@@ -30,7 +30,7 @@
/**
* @author <a href="mailto:trygvis@inamo.no">Trygve Laugstøl</a>
- * @version $Id:$
+ * @version $Id$
*/
public class MavenOneContinuumProjectBuilder
extends AbstractContinuumProjectBuilder
@@ -45,7 +45,7 @@
// ProjectCreator Implementation
// ----------------------------------------------------------------------
- public ContinuumProjectBuildingResult createProjectsFromMetadata( URL url )
+ public ContinuumProjectBuildingResult buildProjectsFromMetadata( URL url )
throws ContinuumProjectBuilderException
{
ContinuumProjectBuildingResult result = new ContinuumProjectBuildingResult();
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=179627&r1=179626&r2=179627&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 Jun 2 12:04:21 2005
@@ -53,7 +53,7 @@
// ProjectCreator Implementation
// ----------------------------------------------------------------------
- public ContinuumProjectBuildingResult createProjectsFromMetadata( URL url )
+ public ContinuumProjectBuildingResult buildProjectsFromMetadata( URL url )
throws ContinuumProjectBuilderException
{
// ----------------------------------------------------------------------
Modified: maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilderTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilderTest.java?rev=179627&r1=179626&r2=179627&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilderTest.java (original)
+++ maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenOneContinuumProjectBuilderTest.java Thu Jun 2 12:04:21 2005
@@ -37,7 +37,7 @@
{
ContinuumProjectBuilder projectBuilder = (ContinuumProjectBuilder) lookup( ContinuumProjectBuilder.ROLE, MavenOneContinuumProjectBuilder.ID );
- ContinuumProjectBuildingResult result = projectBuilder.createProjectsFromMetadata( getTestFile( "src/test/resources/projects/maven-1.pom.xml" ).toURL() );
+ ContinuumProjectBuildingResult result = projectBuilder.buildProjectsFromMetadata( getTestFile( "src/test/resources/projects/maven-1.pom.xml" ).toURL() );
assertNotNull( result.getProjects() );
Modified: maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java?rev=179627&r1=179626&r2=179627&view=diff
==============================================================================
--- maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java (original)
+++ maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java Thu Jun 2 12:04:21 2005
@@ -44,7 +44,7 @@
File pom = getTestFile( "src/test/repository/maven-builder-helper-1.xml" );
- ContinuumProjectBuildingResult result = projectBuilder.createProjectsFromMetadata( pom.toURL() );
+ ContinuumProjectBuildingResult result = projectBuilder.buildProjectsFromMetadata( pom.toURL() );
assertNotNull( result.getProjects() );
@@ -63,7 +63,7 @@
File pom = getTestFile( "src/test/repository/maven-builder-helper-2.xml" );
- ContinuumProjectBuildingResult result = projectBuilder.createProjectsFromMetadata( pom.toURL() );
+ ContinuumProjectBuildingResult result = projectBuilder.buildProjectsFromMetadata( pom.toURL() );
assertNotNull( result.getProjects() );
@@ -82,7 +82,7 @@
String url = getTestFile( "src/test/resources/projects/continuum/pom.xml" ).toURL().toExternalForm();
- ContinuumProjectBuildingResult result = projectBuilder.createProjectsFromMetadata( new URL( url ) );
+ ContinuumProjectBuildingResult result = projectBuilder.buildProjectsFromMetadata( new URL( url ) );
assertNotNull( result );