You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ca...@apache.org on 2006/09/25 02:40:27 UTC
svn commit: r449533 [1/3] - in /maven/continuum/trunk: ./
continuum-api/src/main/java/org/apache/maven/continuum/
continuum-api/src/main/java/org/apache/maven/continuum/project/builder/
continuum-api/src/main/java/org/apache/maven/continuum/store/ cont...
Author: carlos
Date: Sun Sep 24 17:40:23 2006
New Revision: 449533
URL: http://svn.apache.org/viewvc?view=rev&rev=449533
Log:
Merged bug fixes and improvements up to rev# 449148 from continuum-acegi branch
Added:
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/filter/
- copied from r448283, maven/continuum/branches/continuum-acegi/continuum-webapp/src/main/java/org/apache/maven/continuum/web/filter/
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/filter/FilterToComponentProxy.java
- copied unchanged from r448283, maven/continuum/branches/continuum-acegi/continuum-webapp/src/main/java/org/apache/maven/continuum/web/filter/FilterToComponentProxy.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/BuildStatusCell.java
- copied unchanged from r448283, maven/continuum/branches/continuum-acegi/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/BuildStatusCell.java
maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildNowCell.jsp
- copied unchanged from r448283, maven/continuum/branches/continuum-acegi/continuum-webapp/src/main/webapp/components/buildNowCell.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/deleteBuildDefinition.jsp
- copied unchanged from r448283, maven/continuum/branches/continuum-acegi/continuum-webapp/src/main/webapp/deleteBuildDefinition.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/navigations/ProjectGroupMenu.jsp
- copied, changed from r448283, maven/continuum/branches/continuum-acegi/continuum-webapp/src/main/webapp/navigations/ProjectGroupMenu.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/navigations/ProjectMenu.jsp
- copied unchanged from r448283, maven/continuum/branches/continuum-acegi/continuum-webapp/src/main/webapp/navigations/ProjectMenu.jsp
Removed:
maven/continuum/trunk/continuum-webapp/src/main/resources/log4j.xml
maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/extremecomponents.tld
maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/sitemesh-decorator.tld
maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/sitemesh-page.tld
maven/continuum/trunk/continuum-webapp/src/main/webapp/error.jsp
Modified:
maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/Continuum.java
maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/ContinuumProjectBuildingResult.java
maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java
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/core/action/AbstractBuildDefinitionContinuumAction.java (contents, props changed)
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectAction.java (contents, props changed)
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectGroupAction.java (contents, props changed)
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectAction.java (contents, props changed)
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectGroupAction.java (contents, props changed)
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectAction.java (contents, props changed)
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectGroupAction.java (contents, props changed)
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/MavenBuilderHelper.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/MavenTwoContinuumProjectBuilder.java
maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java
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/notification/mail/FormatterToolTest.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/resources/log4j.properties
maven/continuum/trunk/continuum-rpc-client/pom.xml
maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java
maven/continuum/trunk/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java
maven/continuum/trunk/continuum-updater/pom.xml
maven/continuum/trunk/continuum-webapp/pom.xml
maven/continuum/trunk/continuum-webapp/src/main/filters/filter.properties
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/AddProjectAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ConfigurationAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ContinuumActionSupport.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PrepareReleaseAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectViewAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ScheduleAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SummaryAction.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/component/BuildDefinitionSummaryAction.java (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/exception/ContinuumActionException.java (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/BuildCell.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/BuildNowCell.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/StateCell.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/buildresults/StateCell.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/commons/DateCell.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/projectview/NotifierEventCell.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/projectview/NotifierFromCell.java
maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/projectview/NotifierRecipientCell.java
maven/continuum/trunk/continuum-webapp/src/main/resources/META-INF/plexus/application.xml
maven/continuum/trunk/continuum-webapp/src/main/resources/localization/Continuum.properties
maven/continuum/trunk/continuum-webapp/src/main/resources/xwork.xml
maven/continuum/trunk/continuum-webapp/src/main/webapp/ (props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/ (props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/WEB-INF/web.xml
maven/continuum/trunk/continuum-webapp/src/main/webapp/addProject.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/buildDefinitionEdit.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/buildResult.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/buildResults.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/components/buildDefinitionSummaryComponent.jsp (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/components/companyLogo.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/components/projectSummaryComponent.jsp (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/confirmBuildDefinitionRemoval.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/decorators/default.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/decorators/none.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/editSchedule.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/groupSummary.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/index.jsp (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/navigations/Menu.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/notifierSelectType.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/performRelease.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/prepareRelease.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupBuildDefinition.jsp (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupMembers.jsp (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupNotifier.jsp (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/projectGroupSummary.jsp (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/projectView.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/schedules.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/summary.jsp
maven/continuum/trunk/continuum-webapp/src/main/webapp/surefireReport.jsp (contents, props changed)
maven/continuum/trunk/continuum-webapp/src/main/webapp/workingCopy.jsp
maven/continuum/trunk/pom.xml
Modified: maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/Continuum.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/Continuum.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/Continuum.java (original)
+++ maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/Continuum.java Sun Sep 24 17:40:23 2006
@@ -16,13 +16,19 @@
* limitations under the License.
*/
+import java.io.File;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+
import org.apache.maven.continuum.configuration.ConfigurationService;
+import org.apache.maven.continuum.execution.ContinuumBuildExecutor;
import org.apache.maven.continuum.model.project.BuildDefinition;
import org.apache.maven.continuum.model.project.BuildResult;
import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.model.project.ProjectGroup;
import org.apache.maven.continuum.model.project.ProjectNotifier;
import org.apache.maven.continuum.model.project.Schedule;
-import org.apache.maven.continuum.model.project.ProjectGroup;
import org.apache.maven.continuum.model.system.ContinuumUser;
import org.apache.maven.continuum.model.system.UserGroup;
import org.apache.maven.continuum.project.builder.ContinuumProjectBuildingResult;
@@ -30,11 +36,6 @@
import org.apache.maven.continuum.release.ContinuumReleaseManager;
import org.codehaus.plexus.util.dag.CycleDetectedException;
-import java.io.File;
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
-
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
* @author <a href="mailto:trygvis@inamo.no">Trygve Laugstøl</a>
@@ -48,9 +49,16 @@
// Project Groups
// ----------------------------------------------------------------------
+ public static final String DEFAULT_PROJECT_GROUP_GROUP_ID = "default";
+
public ProjectGroup getProjectGroup( int projectGroupId )
throws ContinuumException;
+ /**
+ * Get all {@link ProjectGroup}s and their {@link Project}s
+ *
+ * @return {@link Collection} <{@link ProjectGroup}>
+ */
public Collection getAllProjectGroupsWithProjects();
public ProjectGroup getProjectGroupByProjectId( int projectId )
@@ -155,6 +163,14 @@
// Projects
// ----------------------------------------------------------------------
+ /**
+ * Add a project to the list of building projects (ant, shell,...)
+ *
+ * @param project the project to add
+ * @param executorId the id of an {@link ContinuumBuildExecutor}, eg. <code>ant</code> or <code>shell</code>
+ * @return id of the project
+ * @throws ContinuumException
+ */
int addProject( Project project, String executorId )
throws ContinuumException;
@@ -188,16 +204,16 @@
ProjectNotifier getNotifier( int projectId, int notifierId )
throws ContinuumException;
- void updateNotifier( int projectId, int notifierId, Map configuration )
+ ProjectNotifier updateNotifier( int projectId, int notifierId, Map configuration )
throws ContinuumException;
- void updateNotifier( int projectId, ProjectNotifier notifier )
+ ProjectNotifier updateNotifier( int projectId, ProjectNotifier notifier )
throws ContinuumException;
- void addNotifier( int projectId, ProjectNotifier notifier )
+ ProjectNotifier addNotifier( int projectId, ProjectNotifier notifier )
throws ContinuumException;
- void addNotifier( int projectId, String notifierType, Map configuration )
+ ProjectNotifier addNotifier( int projectId, String notifierType, Map configuration )
throws ContinuumException;
void removeNotifier( int projectId, int notifierId )
@@ -256,10 +272,10 @@
BuildDefinition getDefaultBuildDefinition( int projectId )
throws ContinuumException;
- void addBuildDefinitionToProject( int projectId, BuildDefinition buildDefinition )
+ BuildDefinition addBuildDefinitionToProject( int projectId, BuildDefinition buildDefinition )
throws ContinuumException;
- void addBuildDefinitionToProjectGroup( int projectGroupId, BuildDefinition buildDefinition )
+ BuildDefinition addBuildDefinitionToProjectGroup( int projectGroupId, BuildDefinition buildDefinition )
throws ContinuumException;
List getBuildDefinitionsForProject( int projectId )
@@ -274,10 +290,10 @@
void removeBuildDefinitionFromProjectGroup( int projectGroupId, int buildDefinitionId )
throws ContinuumException;
- void updateBuildDefinitionForProject( int projectId, BuildDefinition buildDefinition )
+ BuildDefinition updateBuildDefinitionForProject( int projectId, BuildDefinition buildDefinition )
throws ContinuumException;
- void updateBuildDefinitionForProjectGroup( int projectGroupId, BuildDefinition buildDefinition )
+ BuildDefinition updateBuildDefinitionForProjectGroup( int projectGroupId, BuildDefinition buildDefinition )
throws ContinuumException;
Modified: maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/ContinuumProjectBuildingResult.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/ContinuumProjectBuildingResult.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/ContinuumProjectBuildingResult.java (original)
+++ maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/project/builder/ContinuumProjectBuildingResult.java Sun Sep 24 17:40:23 2006
@@ -35,7 +35,9 @@
public static final String ERROR_MALFORMED_URL = "add.project.malformed.url.error";
public static final String ERROR_UNKNOWN_HOST = "add.project.unknown.host.error";
-
+
+ public static final String ERROR_CONNECT = "add.project.connect.error";
+
public static final String ERROR_XML_PARSE = "add.project.xml.parse.error";
public static final String ERROR_EXTEND = "add.project.extend.error";
@@ -45,7 +47,7 @@
public static final String ERROR_MISSING_ARTIFACTID = "add.project.missing.artifactid.error";
public static final String ERROR_POM_NOT_FOUND = "add.project.missing.pom.error";
-
+
public static final String ERROR_MISSING_VERSION = "add.project.missing.version.error";
public static final String ERROR_MISSING_NAME = "add.project.missing.name.error";
@@ -53,17 +55,23 @@
public static final String ERROR_MISSING_REPOSITORY = "add.project.missing.repository.error";
public static final String ERROR_MISSING_SCM = "add.project.missing.scm.error";
-
+
public static final String ERROR_MISSING_SCM_CONNECTION = "add.project.missing.scm.connection.error";
public static final String ERROR_MISSING_NOTIFIER_TYPE = "add.project.missing.notifier.type.error";
public static final String ERROR_MISSING_NOTIFIER_CONFIGURATION = "add.project.missing.notifier.configuration.error";
-
+
public static final String ERROR_METADATA_TRANSFER = "add.project.metadata.transfer.error";
-
+
public static final String ERROR_VALIDATION = "add.project.validation.error";
-
+
+ public static final String ERROR_UNAUTHORIZED = "add.project.unauthorized.error";
+
+ public static final String ERROR_ARTIFACT_NOT_FOUND = "add.project.artifact.not.found.error";
+
+ public static final String ERROR_PROJECT_BUILDING = "add.project.project.building.error";
+
public static final String ERROR_UNKNOWN = "add.project.unknown.error";
private List projects = new ArrayList();
@@ -119,7 +127,7 @@
{
errors.add( errorKey );
}
-
+
/**
* Add an error that happened during adding the project to Continuum.
*
@@ -130,7 +138,7 @@
// TODO: store the parameters.
errors.add( errorKey );
}
-
+
/**
* Add an error that happened during adding the project to Continuum.
*
@@ -141,7 +149,7 @@
// TODO: store the parameters.
errors.add( errorKey );
}
-
+
/**
* Get the warnings that happened during adding the project to Continuum.
* There is an entry with the warning key (so it can be internationalized later) for each warning.
Modified: maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java (original)
+++ maven/continuum/trunk/continuum-api/src/main/java/org/apache/maven/continuum/store/ContinuumStore.java Sun Sep 24 17:40:23 2006
@@ -218,9 +218,6 @@
Project getProjectWithBuildDetails( int projectId )
throws ContinuumObjectNotFoundException, ContinuumStoreException;
- ProjectGroup getDefaultProjectGroup()
- throws ContinuumStoreException;
-
SystemConfiguration addSystemConfiguration( SystemConfiguration systemConf );
void updateSystemConfiguration( SystemConfiguration systemConf )
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- 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 Sun Sep 24 17:40:23 2006
@@ -36,6 +36,7 @@
import org.apache.maven.continuum.model.project.ProjectGroup;
import org.apache.maven.continuum.model.project.ProjectNotifier;
import org.apache.maven.continuum.model.project.Schedule;
+import org.apache.maven.continuum.model.scm.ScmResult;
import org.apache.maven.continuum.model.system.ContinuumUser;
import org.apache.maven.continuum.model.system.UserGroup;
import org.apache.maven.continuum.project.ContinuumProjectState;
@@ -765,18 +766,7 @@
{
ArrayList buildResults;
- try
- {
- buildResults = new ArrayList( store.getProjectWithBuilds( projectId ).getBuildResults() );
- }
- catch ( ContinuumObjectNotFoundException e )
- {
- return Collections.EMPTY_LIST;
- }
- catch ( ContinuumStoreException e )
- {
- throw logAndCreateException( "Exception while getting build results for project.", e );
- }
+ buildResults = new ArrayList( store.getBuildResultsForProject( projectId, 0 ) );
Collections.reverse( buildResults );
@@ -817,7 +807,12 @@
changes = new ArrayList();
}
- changes.addAll( buildResult.getScmResult().getChanges() );
+ ScmResult scmResult = buildResult.getScmResult();
+
+ if ( scmResult != null )
+ {
+ changes.addAll( scmResult.getChanges() );
+ }
if ( !buildResultsIterator.hasNext() )
{
@@ -931,14 +926,7 @@
context.put( AbstractContinuumAction.KEY_UNVALIDATED_PROJECT, project );
- try
- {
- context.put( AbstractContinuumAction.KEY_UNVALIDATED_PROJECT_GROUP, store.getDefaultProjectGroup() );
- }
- catch ( ContinuumStoreException e )
- {
- throw new ContinuumException( "Error getting the default project group to work with" );
- }
+ context.put( AbstractContinuumAction.KEY_UNVALIDATED_PROJECT_GROUP, getDefaultProjectGroup() );
executeAction( "validate-project", context );
@@ -1047,6 +1035,10 @@
projectGroup = store.getProjectGroupWithProjects( projectGroupId );
}
+
+ /* add the project group loaded from database, which has more info, like id */
+ result.getProjectGroups().remove( 0 );
+ result.getProjectGroups().add( projectGroup );
}
catch ( ContinuumStoreException e )
{
@@ -1125,7 +1117,7 @@
return notifier;
}
- public void updateNotifier( int projectId, ProjectNotifier notifier )
+ public ProjectNotifier updateNotifier( int projectId, ProjectNotifier notifier )
throws ContinuumException
{
Project project = getProjectWithAllDetails( projectId );
@@ -1137,10 +1129,10 @@
updateProject( project );
- addNotifier( projectId, notifier );
+ return addNotifier( projectId, notifier );
}
- public void updateNotifier( int projectId, int notifierId, Map configuration )
+ public ProjectNotifier updateNotifier( int projectId, int notifierId, Map configuration )
throws ContinuumException
{
Project project = getProjectWithAllDetails( projectId );
@@ -1154,7 +1146,7 @@
updateProject( project );
- addNotifier( projectId, notifierType, configuration );
+ return addNotifier( projectId, notifierType, configuration );
}
private Properties createNotifierProperties( Map configuration )
@@ -1184,7 +1176,7 @@
return notifierProperties;
}
- public void addNotifier( int projectId, ProjectNotifier notifier )
+ public ProjectNotifier addNotifier( int projectId, ProjectNotifier notifier )
throws ContinuumException
{
ProjectNotifier notif = new ProjectNotifier();
@@ -1208,9 +1200,11 @@
project.addNotifier( notif );
updateProject( project );
+
+ return notif;
}
- public void addNotifier( int projectId, String notifierType, Map configuration )
+ public ProjectNotifier addNotifier( int projectId, String notifierType, Map configuration )
throws ContinuumException
{
ProjectNotifier notifier = new ProjectNotifier();
@@ -1241,7 +1235,7 @@
notifier.setConfiguration( notifierProperties );
- addNotifier( projectId, notifier );
+ return addNotifier( projectId, notifier );
}
public void removeNotifier( int projectId, int notifierId )
@@ -1353,7 +1347,7 @@
return projectGroup.getBuildDefinitions();
}
- public void addBuildDefinitionToProject( int projectId, BuildDefinition buildDefinition )
+ public BuildDefinition addBuildDefinitionToProject( int projectId, BuildDefinition buildDefinition )
throws ContinuumException
{
HashMap context = new HashMap();
@@ -1362,6 +1356,8 @@
context.put( AbstractContinuumAction.KEY_PROJECT_ID, new Integer( projectId ) );
executeAction( "add-build-definition-to-project", context );
+
+ return (BuildDefinition) context.get( AbstractContinuumAction.KEY_BUILD_DEFINITION );
}
public void removeBuildDefinitionFromProject( int projectId, int buildDefinitionId )
@@ -1375,7 +1371,7 @@
executeAction( "remove-build-definition-from-project", context );
}
- public void updateBuildDefinitionForProject( int projectId, BuildDefinition buildDefinition )
+ public BuildDefinition updateBuildDefinitionForProject( int projectId, BuildDefinition buildDefinition )
throws ContinuumException
{
HashMap context = new HashMap();
@@ -1384,9 +1380,11 @@
context.put( AbstractContinuumAction.KEY_PROJECT_ID, new Integer( projectId ) );
executeAction( "update-build-definition-from-project", context );
+
+ return (BuildDefinition) context.get( AbstractContinuumAction.KEY_BUILD_DEFINITION );
}
- public void addBuildDefinitionToProjectGroup( int projectGroupId, BuildDefinition buildDefinition )
+ public BuildDefinition addBuildDefinitionToProjectGroup( int projectGroupId, BuildDefinition buildDefinition )
throws ContinuumException
{
HashMap context = new HashMap();
@@ -1395,6 +1393,8 @@
context.put( AbstractContinuumAction.KEY_PROJECT_GROUP_ID, new Integer( projectGroupId ) );
executeAction( "add-build-definition-to-project-group", context );
+
+ return (BuildDefinition) context.get( AbstractContinuumAction.KEY_BUILD_DEFINITION );
}
public void removeBuildDefinitionFromProjectGroup( int projectGroupId, int buildDefinitionId )
@@ -1408,7 +1408,7 @@
executeAction( "remove-build-definition-from-project-group", context );
}
- public void updateBuildDefinitionForProjectGroup( int projectGroupId, BuildDefinition buildDefinition )
+ public BuildDefinition updateBuildDefinitionForProjectGroup( int projectGroupId, BuildDefinition buildDefinition )
throws ContinuumException
{
HashMap context = new HashMap();
@@ -1417,6 +1417,8 @@
context.put( AbstractContinuumAction.KEY_PROJECT_GROUP_ID, new Integer( projectGroupId ) );
executeAction( "update-build-definition-from-project-group", context );
+
+ return (BuildDefinition) context.get( AbstractContinuumAction.KEY_BUILD_DEFINITION );
}
public void removeBuildDefinition( int projectId, int buildDefinitionId )
@@ -2187,7 +2189,10 @@
private void closeStore()
{
- store.closeStore();
+ if ( store != null )
+ {
+ store.closeStore();
+ }
}
public void stop()
@@ -2206,7 +2211,10 @@
try
{
- configurationService.store();
+ if ( configurationService != null )
+ {
+ configurationService.store();
+ }
}
catch ( ConfigurationStoringException e )
{
@@ -2500,9 +2508,13 @@
private void stopMessage()
{
- getLogger().info( "Stopping Continuum." );
+ // Yes dorothy, this can happen!
+ if ( getLogger() != null )
+ {
+ getLogger().info( "Stopping Continuum." );
- getLogger().info( "Continuum stopped." );
+ getLogger().info( "Continuum stopped." );
+ }
}
private String getVersion()
@@ -2529,4 +2541,24 @@
return "unknown";
}
}
+
+ private ProjectGroup getDefaultProjectGroup()
+ throws ContinuumException
+ {
+ try
+ {
+ return store.getProjectGroupByGroupIdWithProjects( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
+ }
+ catch ( ContinuumObjectNotFoundException e )
+ {
+ throw new ContinuumException(
+ "Continuum is not properly initialized, default project group does not exist",
+ e );
+ }
+ catch ( ContinuumStoreException ex )
+ {
+ throw logAndCreateException( "Exception while getting default project group.", ex );
+ }
+ }
+
}
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractBuildDefinitionContinuumAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractBuildDefinitionContinuumAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractBuildDefinitionContinuumAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractBuildDefinitionContinuumAction.java Sun Sep 24 17:40:23 2006
@@ -1,17 +1,5 @@
package org.apache.maven.continuum.core.action;
-import org.apache.maven.continuum.ContinuumException;
-import org.apache.maven.continuum.initialization.DefaultContinuumInitializer;
-import org.apache.maven.continuum.model.project.BuildDefinition;
-import org.apache.maven.continuum.model.project.ProjectGroup;
-import org.apache.maven.continuum.model.project.Schedule;
-import org.apache.maven.continuum.model.project.Project;
-import org.apache.maven.continuum.store.ContinuumStore;
-import org.apache.maven.continuum.store.ContinuumStoreException;
-import org.apache.maven.continuum.store.ContinuumObjectNotFoundException;
-
-import java.util.Iterator;
-import java.util.List;
/*
* Copyright 2005 The Apache Software Foundation.
*
@@ -28,11 +16,24 @@
* limitations under the License.
*/
+import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.initialization.DefaultContinuumInitializer;
+import org.apache.maven.continuum.model.project.BuildDefinition;
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.model.project.Schedule;
+import org.apache.maven.continuum.model.project.Project;
+import org.apache.maven.continuum.store.ContinuumStore;
+import org.apache.maven.continuum.store.ContinuumStoreException;
+import org.apache.maven.continuum.store.ContinuumObjectNotFoundException;
+
+import java.util.Iterator;
+import java.util.List;
+
/**
* AbstractBuildDefinitionContinuumAction:
*
- * @author: Jesse McConnell <jm...@apache.org>
- * @version: $ID:$
+ * @author Jesse McConnell <jm...@apache.org>
+ * @version $Id$
*/
public abstract class AbstractBuildDefinitionContinuumAction
extends AbstractContinuumAction
@@ -127,7 +128,7 @@
* @param buildDefinition
* @throws ContinuumException
*/
- protected void updateBuildDefinitionInList( List buildDefinitions, BuildDefinition buildDefinition )
+ protected BuildDefinition updateBuildDefinitionInList( List buildDefinitions, BuildDefinition buildDefinition )
throws ContinuumException
{
try
@@ -173,6 +174,8 @@
storedDefinition.setSchedule( schedule );
store.storeBuildDefinition( storedDefinition );
+
+ return storedDefinition;
}
else
{
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AbstractBuildDefinitionContinuumAction.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectAction.java Sun Sep 24 17:40:23 2006
@@ -1,11 +1,7 @@
package org.apache.maven.continuum.core.action;
-import org.apache.maven.continuum.model.project.BuildDefinition;
-import org.apache.maven.continuum.model.project.Project;
-
-import java.util.Map;
/*
- * Copyright 2005 The Apache Software Foundation.
+ * Copyright 2005-2006 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.
@@ -20,11 +16,16 @@
* limitations under the License.
*/
+import org.apache.maven.continuum.model.project.BuildDefinition;
+import org.apache.maven.continuum.model.project.Project;
+
+import java.util.Map;
+
/**
* AddBuildDefinitionToProjectAction:
*
- * @author: Jesse McConnell <jm...@apache.org>
- * @version: $ID:$
+ * @author Jesse McConnell <jm...@apache.org>
+ * @version $Id$
*
* @plexus.component
* role="org.codehaus.plexus.action.Action"
@@ -33,12 +34,12 @@
public class AddBuildDefinitionToProjectAction
extends AbstractBuildDefinitionContinuumAction
{
-
+
public void execute( Map map )
throws Exception
{
BuildDefinition buildDefinition = getBuildDefinition( map );
- int projectId = getProjectId( map );
+ int projectId = getProjectId( map );
Project project = store.getProjectWithAllDetails( projectId );
@@ -47,5 +48,7 @@
project.addBuildDefinition( buildDefinition );
store.updateProject( project );
+
+ map.put( AbstractContinuumAction.KEY_BUILD_DEFINITION, buildDefinition );
}
}
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectAction.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectGroupAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectGroupAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectGroupAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectGroupAction.java Sun Sep 24 17:40:23 2006
@@ -1,11 +1,7 @@
package org.apache.maven.continuum.core.action;
-import org.apache.maven.continuum.model.project.BuildDefinition;
-import org.apache.maven.continuum.model.project.ProjectGroup;
-
-import java.util.Map;
/*
- * Copyright 2005 The Apache Software Foundation.
+ * Copyright 2005-2006 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.
@@ -20,11 +16,16 @@
* limitations under the License.
*/
+import org.apache.maven.continuum.model.project.BuildDefinition;
+import org.apache.maven.continuum.model.project.ProjectGroup;
+
+import java.util.Map;
+
/**
* AddBuildDefinitionToProjectAction:
*
- * @author: Jesse McConnell <jm...@apache.org>
- * @version: $ID:$
+ * @author Jesse McConnell <jm...@apache.org>
+ * @version $Id$
*
* @plexus.component
* role="org.codehaus.plexus.action.Action"
@@ -47,5 +48,7 @@
projectGroup.addBuildDefinition( buildDefinition );
store.updateProjectGroup( projectGroup );
+
+ map.put( AbstractContinuumAction.KEY_BUILD_DEFINITION, buildDefinition );
}
}
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/AddBuildDefinitionToProjectGroupAction.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectAction.java Sun Sep 24 17:40:23 2006
@@ -24,7 +24,7 @@
* AddBuildDefinitionToProjectAction:
*
* @author: Jesse McConnell <jm...@apache.org>
- * @version: $ID:$
+ * @version: $Id$
*
* @plexus.component
* role="org.codehaus.plexus.action.Action"
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectAction.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectGroupAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectGroupAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectGroupAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectGroupAction.java Sun Sep 24 17:40:23 2006
@@ -25,7 +25,7 @@
* AddBuildDefinitionToProjectAction:
*
* @author: Jesse McConnell <jm...@apache.org>
- * @version: $ID:$
+ * @version: $Id$
*
* @plexus.component
* role="org.codehaus.plexus.action.Action"
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/RemoveBuildDefinitionFromProjectGroupAction.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectAction.java Sun Sep 24 17:40:23 2006
@@ -1,9 +1,5 @@
package org.apache.maven.continuum.core.action;
-import org.apache.maven.continuum.model.project.BuildDefinition;
-import org.apache.maven.continuum.model.project.Project;
-
-import java.util.Map;
/*
* Copyright 2005 The Apache Software Foundation.
*
@@ -20,11 +16,16 @@
* limitations under the License.
*/
+import org.apache.maven.continuum.model.project.BuildDefinition;
+import org.apache.maven.continuum.model.project.Project;
+
+import java.util.Map;
+
/**
* AddBuildDefinitionToProjectAction:
*
- * @author: Jesse McConnell <jm...@apache.org>
- * @version: $ID:$
+ * @author Jesse McConnell <jm...@apache.org>
+ * @version $Id$
* @plexus.component role="org.codehaus.plexus.action.Action"
* role-hint="update-build-definition-from-project"
*/
@@ -41,8 +42,10 @@
Project project = store.getProjectWithAllDetails( projectId );
resolveDefaultBuildDefinitionsForProject( buildDefinition, project );
-
+
updateBuildDefinitionInList( project.getBuildDefinitions(), buildDefinition );
+
+ map.put( AbstractContinuumAction.KEY_BUILD_DEFINITION, buildDefinition );
}
}
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectAction.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectGroupAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectGroupAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectGroupAction.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectGroupAction.java Sun Sep 24 17:40:23 2006
@@ -1,11 +1,7 @@
package org.apache.maven.continuum.core.action;
-import org.apache.maven.continuum.model.project.BuildDefinition;
-import org.apache.maven.continuum.model.project.ProjectGroup;
-
-import java.util.Map;
/*
- * Copyright 2005 The Apache Software Foundation.
+ * Copyright 2005-2006 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.
@@ -20,11 +16,16 @@
* limitations under the License.
*/
+import org.apache.maven.continuum.model.project.BuildDefinition;
+import org.apache.maven.continuum.model.project.ProjectGroup;
+
+import java.util.Map;
+
/**
* AddBuildDefinitionToProjectAction:
*
- * @author: Jesse McConnell <jm...@apache.org>
- * @version: $ID:$
+ * @author Jesse McConnell <jm...@apache.org>
+ * @version $Id$
*
* @plexus.component
* role="org.codehaus.plexus.action.Action"
@@ -38,12 +39,14 @@
throws Exception
{
BuildDefinition buildDefinition = getBuildDefinition( map );
- int projectGroupId = getProjectGroupId( map );
+ int projectGroupId = getProjectGroupId( map );
ProjectGroup projectGroup = store.getProjectGroupWithBuildDetails( projectGroupId );
resolveDefaultBuildDefinitionsForProjectGroup( buildDefinition, projectGroup );
updateBuildDefinitionInList( projectGroup.getBuildDefinitions(), buildDefinition );
+
+ map.put( AbstractContinuumAction.KEY_BUILD_DEFINITION, buildDefinition );
}
}
Propchange: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/core/action/UpdateBuildDefinitionFromProjectGroupAction.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/DefaultMavenBuilderHelper.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- 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 Sun Sep 24 17:40:23 2006
@@ -20,6 +20,7 @@
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
+import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.continuum.model.project.Project;
import org.apache.maven.continuum.model.project.ProjectDependency;
import org.apache.maven.continuum.model.project.ProjectDeveloper;
@@ -37,6 +38,7 @@
import org.apache.maven.project.InvalidProjectModelException;
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.MavenProjectBuilder;
+import org.apache.maven.project.ProjectBuildingException;
import org.apache.maven.project.validation.ModelValidationResult;
import org.apache.maven.settings.MavenSettingsBuilder;
import org.apache.maven.settings.Mirror;
@@ -336,10 +338,20 @@
}
}
- catch ( Exception e )
+ catch ( ProjectBuildingException e )
{
StringBuffer messages = new StringBuffer();
+ Throwable cause = e.getCause();
+
+ if( cause != null )
+ {
+ while ( ( cause.getCause() != null ) && ( cause instanceof ProjectBuildingException ) )
+ {
+ cause = cause.getCause();
+ }
+ }
+
if ( e instanceof InvalidProjectModelException )
{
InvalidProjectModelException ex = (InvalidProjectModelException) e;
@@ -358,9 +370,31 @@
}
}
+ if ( cause instanceof ArtifactNotFoundException )
+ {
+ result.addError( ContinuumProjectBuildingResult.ERROR_ARTIFACT_NOT_FOUND,
+ ( (ArtifactNotFoundException) cause ).toString() );
+ return null;
+ }
+
+ result.addError( ContinuumProjectBuildingResult.ERROR_PROJECT_BUILDING, e.getMessage() );
+
String msg = "Cannot build maven project from " + file + " (" + e.getMessage() + ").\n" + messages;
+
+ file.delete();
+
+ getLogger().error( msg );
+
+ return null;
+ }
+ // TODO catch all exceptions is bad
+ catch ( Exception e )
+ {
+ String msg = "Cannot build maven project from " + file + " (" + e.getMessage() + ").";
- getLogger().error( msg, e );
+ file.delete();
+
+ getLogger().error( msg );
return null;
}
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/MavenBuilderHelper.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/MavenBuilderHelper.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/MavenBuilderHelper.java (original)
+++ maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/execution/maven/m2/MavenBuilderHelper.java Sun Sep 24 17:40:23 2006
@@ -33,12 +33,12 @@
void mapMetadataToProject( File metadata, Project project )
throws MavenBuilderHelperException;
-
+
/**
* @deprecated use {@link #getMavenProject(ContinuumProjectBuildingResult, File)} instead.
*/
MavenProject getMavenProject( File file )
- throws MavenBuilderHelperException;
+ throws MavenBuilderHelperException;
MavenProject getMavenProject( ContinuumProjectBuildingResult result, File file );
@@ -47,8 +47,9 @@
*/
void mapMavenProjectToContinuumProject( MavenProject mavenProject, Project continuumProject )
throws MavenBuilderHelperException;
-
- void mapMavenProjectToContinuumProject( ContinuumProjectBuildingResult result, MavenProject mavenProject, Project continuumProject );
+
+ void mapMavenProjectToContinuumProject( ContinuumProjectBuildingResult result, MavenProject mavenProject,
+ Project continuumProject );
ArtifactRepository getLocalRepository();
}
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- 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 Sun Sep 24 17:40:23 2006
@@ -16,18 +16,22 @@
* limitations under the License.
*/
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.maven.continuum.Continuum;
+import org.apache.maven.continuum.model.project.ProjectGroup;
import org.apache.maven.continuum.model.project.Schedule;
import org.apache.maven.continuum.model.system.ContinuumUser;
import org.apache.maven.continuum.model.system.Permission;
import org.apache.maven.continuum.model.system.SystemConfiguration;
import org.apache.maven.continuum.model.system.UserGroup;
import org.apache.maven.continuum.security.ContinuumSecurity;
+import org.apache.maven.continuum.store.ContinuumObjectNotFoundException;
import org.apache.maven.continuum.store.ContinuumStore;
import org.apache.maven.continuum.store.ContinuumStoreException;
import org.codehaus.plexus.logging.AbstractLogEnabled;
-
-import java.util.ArrayList;
-import java.util.List;
+import org.jpox.SchemaTool;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
@@ -39,16 +43,6 @@
implements ContinuumInitializer
{
// ----------------------------------------------------------------------
- // Default values for the default project group
- // ----------------------------------------------------------------------
-
- public static final String DEFAULT_PROJECT_GROUP_NAME = "DEFAULT_PROJECT_GROUP";
-
- public static final String DEFAULT_PROJECT_GROUP_ID = "DEFAULT";
-
- public static final String DEFAULT_PROJECT_GROUP_DESCRIPTION = "Default Project Group";
-
- // ----------------------------------------------------------------------
// Default values for the default schedule
// ----------------------------------------------------------------------
@@ -74,6 +68,20 @@
throws ContinuumInitializationException
{
getLogger().info( "Continuum initializer running ..." );
+
+ if ( getLogger().isDebugEnabled() )
+ {
+ getLogger().debug( "Dumping JPOX/JDO Schema Details ..." );
+ try
+ {
+ SchemaTool.outputDBInfo( null, true );
+ SchemaTool.outputSchemaInfo( null, true );
+ }
+ catch ( Exception e )
+ {
+ getLogger().debug( "Error while dumping the database schema", e );
+ }
+ }
try
{
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilder.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilder.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- 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 Sun Sep 24 17:40:23 2006
@@ -32,7 +32,9 @@
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.util.StringUtils;
+import java.io.FileNotFoundException;
import java.io.IOException;
+import java.net.ConnectException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
@@ -108,9 +110,30 @@
result.addError( ContinuumProjectBuildingResult.ERROR_MALFORMED_URL );
return;
}
+ catch ( FileNotFoundException e )
+ {
+ getLogger().debug( "Error adding project: File not found " + url, e );
+ result.addError( ContinuumProjectBuildingResult.ERROR_POM_NOT_FOUND );
+ return;
+ }
+ catch ( ConnectException e )
+ {
+ getLogger().debug( "Error adding project: Unable to connect " + url, e );
+ result.addError( ContinuumProjectBuildingResult.ERROR_CONNECT );
+ return;
+ }
catch ( IOException e )
{
- getLogger().debug( "Error adding project: Unknown error downloading from " + url, e );
+ if ( e.getMessage() != null )
+ {
+ if ( e.getMessage().indexOf( "Server returned HTTP response code: 401" ) >= 0 )
+ {
+ getLogger().debug( "Error adding project: Unauthorized " + url, e );
+ result.addError( ContinuumProjectBuildingResult.ERROR_UNAUTHORIZED );
+ return;
+ }
+ }
+ getLogger().info( "Error adding project: Unknown error downloading from " + url, e );
result.addError( ContinuumProjectBuildingResult.ERROR_UNKNOWN );
return;
}
Modified: maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/main/java/org/apache/maven/continuum/scm/DefaultContinuumScm.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- 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 Sun Sep 24 17:40:23 2006
@@ -355,7 +355,10 @@
// TODO: is this valid? Does it ever return a changeset itself?
ChangeSet changeSet = convertScmFileSetToChangeSet( scmResult.getCheckedOutFiles() );
- result.addChange( changeSet );
+ if ( changeSet != null )
+ {
+ result.addChange( changeSet );
+ }
return result;
}
Modified: maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java (original)
+++ maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java Sun Sep 24 17:40:23 2006
@@ -219,17 +219,30 @@
{
Continuum continuum = (Continuum) lookup( Continuum.ROLE );
+ Collection projectGroupList = continuum.getAllProjectGroupsWithProjects();
+
+ int projectGroupsBefore = projectGroupList.size();
+
+ assertEquals( 1, projectGroupsBefore );
+
String url = getTestFile( "src/test-projects/project1/pom.xml" ).toURL().toExternalForm();
ContinuumProjectBuildingResult result = continuum.addMavenTwoProject( url );
assertNotNull( result );
- Collection projectGroupList = continuum.getAllProjectGroupsWithProjects();
+ assertEquals( 1, result.getProjectGroups().size() );
+
+ ProjectGroup projectGroup = (ProjectGroup) result.getProjectGroups().get( 0 );
+
+ assertEquals( "plexus", projectGroup.getGroupId() );
+
+ projectGroupList = continuum.getAllProjectGroupsWithProjects();
- assertTrue ( "project group missing, should be one project group for now", projectGroupList.size() == 1 );
+ assertEquals( "Project group missing, should have " + ( projectGroupsBefore + 1 ) + " project groups",
+ projectGroupsBefore + 1, projectGroupList.size() );
- ProjectGroup projectGroup = (ProjectGroup) projectGroupList.iterator().next();
+ projectGroup = (ProjectGroup) projectGroupList.iterator().next();
assertNotNull( projectGroup );
@@ -237,7 +250,7 @@
projectGroupList = continuum.getAllProjectGroupsWithProjects();
- assertTrue ( "remove project group failed", projectGroupList.size() == 0 );
+ assertEquals( "Remove project group failed", projectGroupsBefore, projectGroupList.size() );
}
public void testExecuteAction()
Modified: maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/notification/mail/FormatterToolTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/notification/mail/FormatterToolTest.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/notification/mail/FormatterToolTest.java (original)
+++ maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/notification/mail/FormatterToolTest.java Sun Sep 24 17:40:23 2006
@@ -1,5 +1,21 @@
package org.apache.maven.continuum.notification.mail;
+/*
+ * Copyright 2006 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 junit.framework.TestCase;
/**
Modified: maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/test/java/org/apache/maven/continuum/project/builder/maven/MavenTwoContinuumProjectBuilderTest.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- 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 Sun Sep 24 17:40:23 2006
@@ -175,7 +175,7 @@
assertEquals( 1, result.getErrors().size() );
- assertEquals( ContinuumProjectBuildingResult.ERROR_UNKNOWN, result.getErrors().get( 0 ).toString() );
+ assertEquals( ContinuumProjectBuildingResult.ERROR_POM_NOT_FOUND, result.getErrors().get( 0 ).toString() );
// ----------------------------------------------------------------------
// Assert the project group built
Modified: maven/continuum/trunk/continuum-core/src/test/resources/log4j.properties
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-core/src/test/resources/log4j.properties?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-core/src/test/resources/log4j.properties (original)
+++ maven/continuum/trunk/continuum-core/src/test/resources/log4j.properties Sun Sep 24 17:40:23 2006
@@ -1,25 +1,27 @@
# Define the destination and format of our logging
-log4j.appender.root=org.apache.log4j.ConsoleAppender
-log4j.appender.root.layout=org.apache.log4j.PatternLayout
-log4j.appender.root.layout.ConversionPattern=%d{HH:mm:ss,SSS} %-5p [%c] - %m%n
+log4j.appender.console=org.apache.log4j.ConsoleAppender
+log4j.appender.console.layout=org.apache.log4j.PatternLayout
+log4j.appender.console.layout.ConversionPattern=%d{HH:mm:ss,SSS} %-5p [%c] - %m%n
+
+log4j.rootCategory=DEBUG, console
# JPOX Categories
-#log4j.category.JPOX=WARN, root
-log4j.category.JPOX.RDBMS=ERROR, root
-#log4j.category.JPOX.RDBMS.Schema=WARN, root
-#log4j.category.JPOX.RDBMS.DDL=DEBUG, root
-#log4j.category.JPOX.RDBMS.SQL=WARN, root
+log4j.category.JPOX=WARN, console
+log4j.category.JPOX.RDBMS=ERROR, console
+#log4j.category.JPOX.RDBMS.Schema=WARN, console
+#log4j.category.JPOX.RDBMS.DDL=DEBUG, console
+#log4j.category.JPOX.RDBMS.SQL=WARN, console
-#log4j.category.JPOX.JDO=DEBUG, root
-#log4j.category.JPOX.Cache=DEBUG, root
-#log4j.category.JPOX.MetaData=DEBUG, root
-#log4j.category.JPOX.General=DEBUG, root
-#log4j.category.JPOX.Utility=DEBUG, root
-#log4j.category.JPOX.Transaction=DEBUG, root
-#log4j.category.JPOX.RDBMS=DEBUG, root
-#log4j.category.JPOX.RDBMS.Schema=DEBUG, root
-#log4j.category.JPOX.RDBMS.DDL=DEBUG, root
-#log4j.category.JPOX.RDBMS.SQL=DEBUG, root
-#log4j.category.JPOX.Enhancer.Parser=DEBUG, root
-#log4j.category.JPOX.Enhancer=DEBUG, root
-#log4j.category.JPOX.SchemaTool=DEBUG, root
+#log4j.category.JPOX.JDO=DEBUG, console
+#log4j.category.JPOX.Cache=DEBUG, console
+#log4j.category.JPOX.MetaData=DEBUG, console
+#log4j.category.JPOX.General=DEBUG, console
+#log4j.category.JPOX.Utility=DEBUG, console
+#log4j.category.JPOX.Transaction=DEBUG, console
+#log4j.category.JPOX.RDBMS=DEBUG, console
+#log4j.category.JPOX.RDBMS.Schema=DEBUG, console
+#log4j.category.JPOX.RDBMS.DDL=DEBUG, console
+#log4j.category.JPOX.RDBMS.SQL=DEBUG, console
+#log4j.category.JPOX.Enhancer.Parser=DEBUG, console
+#log4j.category.JPOX.Enhancer=DEBUG, console
+#log4j.category.JPOX.SchemaTool=DEBUG, console
Modified: maven/continuum/trunk/continuum-rpc-client/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-rpc-client/pom.xml?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-rpc-client/pom.xml (original)
+++ maven/continuum/trunk/continuum-rpc-client/pom.xml Sun Sep 24 17:40:23 2006
@@ -16,7 +16,6 @@
<plugin>
<groupId>org.codehaus.modello</groupId>
<artifactId>modello-maven-plugin</artifactId>
- <version>1.0-alpha-9</version>
<executions>
<execution>
<goals>
Modified: maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java (original)
+++ maven/continuum/trunk/continuum-store/src/main/java/org/apache/maven/continuum/store/JdoContinuumStore.java Sun Sep 24 17:40:23 2006
@@ -88,8 +88,6 @@
private static final String PROJECTGROUP_PROJECTS_FETCH_GROUP = "projectgroup-projects";
- private static final String DEFAULT_GROUP_ID = "default";
-
// ----------------------------------------------------------------------
// Component Lifecycle
// ----------------------------------------------------------------------
@@ -1122,27 +1120,6 @@
throw new ContinuumObjectNotFoundException( "unable to find project group containing project with id: " + projectId );
}
-
- public ProjectGroup getDefaultProjectGroup()
- throws ContinuumStoreException
- {
- ProjectGroup group;
-
- try
- {
- group = (ProjectGroup) getObjectFromQuery( ProjectGroup.class, "groupId", DEFAULT_GROUP_ID,
- PROJECTGROUP_PROJECTS_FETCH_GROUP );
- }
- catch ( ContinuumObjectNotFoundException e )
- {
- group = new ProjectGroup();
- group.setName( "Default Project Group" );
- group.setGroupId( DEFAULT_GROUP_ID );
- group.setDescription( "Contains all projects that do not have a group of their own" );
- group = addProjectGroup( group );
- }
- return group;
- }
public SystemConfiguration addSystemConfiguration( SystemConfiguration systemConf )
{
Modified: maven/continuum/trunk/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java (original)
+++ maven/continuum/trunk/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java Sun Sep 24 17:40:23 2006
@@ -23,6 +23,7 @@
import org.apache.maven.continuum.model.project.ProjectGroup;
import org.apache.maven.continuum.model.project.ProjectNotifier;
import org.apache.maven.continuum.model.scm.ScmResult;
+import org.apache.maven.continuum.store.ContinuumObjectNotFoundException;
import org.apache.maven.continuum.store.ContinuumStore;
import org.apache.maven.continuum.store.ContinuumStoreException;
import org.codehaus.plexus.PlexusTestCase;
@@ -36,6 +37,7 @@
import java.net.URL;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -62,6 +64,38 @@
getStore();
setUpConfigurationService( (ConfigurationService) lookup( ConfigurationService.ROLE ) );
+
+ Collection projectGroups = store.getAllProjectGroupsWithProjects();
+
+ assertEquals( 0, projectGroups.size() );
+
+ createDefaultProjectGroup();
+
+ projectGroups = store.getAllProjectGroupsWithProjects();
+
+ assertEquals( 1, projectGroups.size() );
+ }
+
+ protected void createDefaultProjectGroup()
+ throws Exception
+ {
+ ProjectGroup group;
+ try
+ {
+ group = getDefaultProjectGroup();
+ }
+ catch ( ContinuumObjectNotFoundException e )
+ {
+ group = new ProjectGroup();
+
+ group.setName( "Default Project Group" );
+
+ group.setGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
+
+ group.setDescription( "Contains all projects that do not have a group of their own" );
+
+ group = store.addProjectGroup( group );
+ }
}
public static void setUpConfigurationService( ConfigurationService configurationService )
@@ -79,7 +113,7 @@
protected ProjectGroup getDefaultProjectGroup()
throws ContinuumStoreException
{
- return store.getDefaultProjectGroup();
+ return store.getProjectGroupByGroupIdWithProjects( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
}
// ----------------------------------------------------------------------
Modified: maven/continuum/trunk/continuum-updater/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-updater/pom.xml?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-updater/pom.xml (original)
+++ maven/continuum/trunk/continuum-updater/pom.xml Sun Sep 24 17:40:23 2006
@@ -53,7 +53,6 @@
<plugin>
<groupId>org.codehaus.modello</groupId>
<artifactId>modello-maven-plugin</artifactId>
- <version>1.0-alpha-4</version>
<configuration>
<version>1.0.0</version>
<packageWithVersion>false</packageWithVersion>
Modified: maven/continuum/trunk/continuum-webapp/pom.xml
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/pom.xml?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-webapp/pom.xml (original)
+++ maven/continuum/trunk/continuum-webapp/pom.xml Sun Sep 24 17:40:23 2006
@@ -21,7 +21,7 @@
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
- <include>**/META-INF/plexus/components.xml</include>
+ <include>**/META-INF/plexus/application.xml</include>
</includes>
</resource>
<resource>
@@ -55,7 +55,6 @@
<plugin>
<groupId>org.codehaus.modello</groupId>
<artifactId>modello-maven-plugin</artifactId>
- <version>1.0-alpha-8</version>
<executions>
<execution>
<id>web summary model classes</id>
@@ -64,8 +63,8 @@
<version>1.0.0</version>
</configuration>
<goals>
- <goal>java</goal>
- </goals>
+ <goal>java</goal>
+ </goals>
</execution>
<execution>
<id>session model classes</id>
@@ -80,8 +79,33 @@
</executions>
</plugin>
<plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jspc-maven-plugin</artifactId>
+ <version>1.4.4</version>
+ <executions>
+ <execution>
+ <phase>package</phase>
+ <goals>
+ <goal>compile</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <warSourceDirectory>${project.build.directory}/${project.build.finalName}/</warSourceDirectory>
+ <injectString><![CDATA[<!-- [jspc-maven-plugin:post-compiled-jsps-as-servlets] -->]]></injectString>
+ <!--
+ Uncomment outputWebXml if you want the generated web.xml to
+ be placed in the working directory that the war:war mojo uses.
+ -->
+ <!--
+ <outputWebXml>${project.build.directory}/${project.build.finalName}/WEB-INF/web.xml</outputWebXml>
+ -->
+ </configuration>
+ </plugin>
+ <plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
+ <version>6.0.0</version>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<contextPath>/</contextPath>
@@ -165,6 +189,12 @@
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
</dependency>
+ <!--
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ </dependency>
+ -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
@@ -255,4 +285,3 @@
</dependency>
</dependencies>
</project>
-
Modified: maven/continuum/trunk/continuum-webapp/src/main/filters/filter.properties
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/filters/filter.properties?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/filters/filter.properties (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/filters/filter.properties Sun Sep 24 17:40:23 2006
@@ -2,3 +2,37 @@
# emails to the specified address
# nobody@localhost
mail.override.to.address=
+
+#
+# Database configuration
+#
+
+# Derby
+db.driverName=org.apache.derby.jdbc.EmbeddedDriver
+db.url=jdbc:derby:${plexus.home}/database;create=true
+db.userName=sa
+db.password=
+acl.sql=org/apache/maven/user/acegi/acl/acegi-acl-derby.sql
+
+# PostgreSQL
+#db.driverName=org.postgresql.Driver
+#db.url=jdbc:postgresql://localhost/continuum
+#db.userName=
+#db.password=
+#acl.sql=not done yet
+
+# MySQL
+#db.driverName=com.mysql.jdbc.Driver
+#db.url=jdbc:mysql://localhost/test
+#db.userName=
+#db.password=
+#acl.sql=org/apache/maven/user/acegi/acl/acegi-acl-mysql.sql
+
+# HSQLDB
+# NOTE: NO NOT USE THIS CONFIGURATION FOR A PRODUCTION SYSTEM.
+# HSQLDB keeps all data in memory at all times.
+#db.driverName=org.hsqldb.jdbcDriver
+#db.url=jdbc:hsqldb:${plexus.home}/database
+#db.userName=sa
+#db.password=
+#acl.sql=not done yet
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/AddProjectAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/AddProjectAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/AddProjectAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/AddProjectAction.java Sun Sep 24 17:40:23 2006
@@ -16,9 +16,13 @@
* limitations under the License.
*/
+import java.util.Iterator;
+
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.Project;
+import com.opensymphony.xwork.Validateable;
+
/**
* @author Nick Gonzalez
* @version $Id$
@@ -29,6 +33,7 @@
*/
public class AddProjectAction
extends ContinuumActionSupport
+ implements Validateable
{
private String projectName;
@@ -45,7 +50,38 @@
private String projectType;
- public String add()
+ public void validate()
+ {
+ boolean projectNameAlreadyExist = false;
+ Iterator iterator;
+ Project project;
+
+ clearErrorsAndMessages();
+ try
+ {
+ iterator = getContinuum().getProjects().iterator();
+ while ( iterator.hasNext() )
+ {
+ project = (Project) iterator.next();
+ if ( project.getName().equalsIgnoreCase( projectName ) )
+ {
+ projectNameAlreadyExist = true;
+ break;
+ }
+ }
+ if ( projectNameAlreadyExist == true )
+ {
+ addActionError( "projectName.already.exist.error" );
+ }
+ }
+ catch ( ContinuumException e )
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ public String execute()
throws ContinuumException
{
Project project = new Project();
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java Sun Sep 24 17:40:23 2006
@@ -31,7 +31,7 @@
* BuildDefinitionAction:
*
* @author Jesse McConnell <jm...@apache.org>
- * @version $ID:$
+ * @version $Id$
* @plexus.component role="com.opensymphony.xwork.Action"
* role-hint="buildDefinition"
*/
@@ -118,6 +118,7 @@
goals = buildDefinition.getGoals();
arguments = buildDefinition.getArguments();
buildFile = buildDefinition.getBuildFile();
+ scheduleId = buildDefinition.getSchedule().getId();
defaultBuildDefinition = buildDefinition.isDefaultForProject();
}
@@ -191,7 +192,7 @@
{
if ( confirmed )
{
- getContinuum().removeBuildDefinitionFromProject( projectGroupId, buildDefinitionId );
+ getContinuum().removeBuildDefinitionFromProjectGroup( projectGroupId, buildDefinitionId );
return SUCCESS;
}
Propchange: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildDefinitionAction.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/BuildResultAction.java Sun Sep 24 17:40:23 2006
@@ -16,13 +16,16 @@
* limitations under the License.
*/
+import java.io.File;
+import java.io.IOException;
+import java.util.List;
+
import org.apache.maven.continuum.ContinuumException;
+import org.apache.maven.continuum.configuration.ConfigurationException;
import org.apache.maven.continuum.model.project.BuildResult;
import org.apache.maven.continuum.model.project.Project;
import org.codehaus.plexus.util.FileUtils;
-import java.util.List;
-
/**
* @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
* @version $Id$
@@ -34,8 +37,6 @@
public class BuildResultAction
extends ContinuumActionSupport
{
-
-
private BuildResult buildResult;
private int buildId;
@@ -48,19 +49,26 @@
private boolean hasSurefireResults;
+ private String buildOutput;
+
public String execute()
- throws ContinuumException
+ throws ContinuumException, ConfigurationException, IOException
{
//todo get this working for other types of test case rendering other then just surefire
// check if there are surefire results to display
- Project project = getContinuum().getProject( projectId );
+ Project project = getContinuum().getProject( getProjectId() );
hasSurefireResults = FileUtils.fileExists( project.getWorkingDirectory() + "/target/surefire-reports" );
+ buildResult = getContinuum().getBuildResult( getBuildId() );
- buildResult = getContinuum().getBuildResult( buildId );
+ changeSet = getContinuum().getChangesSinceLastSuccess( getProjectId(), getBuildId() );
+ File buildOutputFile = getContinuum().getConfiguration().getBuildOutputFile( getBuildId(), getProjectId() );
- changeSet = getContinuum().getChangesSinceLastSuccess( projectId, buildId );
+ if ( buildOutputFile.exists() )
+ {
+ buildOutput = FileUtils.fileRead( buildOutputFile );
+ }
return SUCCESS;
}
@@ -113,5 +121,10 @@
public void setHasSurefireResults( boolean hasSurefireResults )
{
this.hasSurefireResults = hasSurefireResults;
+ }
+
+ public String getBuildOutput()
+ {
+ return buildOutput;
}
}
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ConfigurationAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ConfigurationAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ConfigurationAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ConfigurationAction.java Sun Sep 24 17:40:23 2006
@@ -19,6 +19,8 @@
import java.io.File;
import java.util.Collections;
+import javax.servlet.http.HttpServletRequest;
+
import org.apache.maven.continuum.configuration.ConfigurationService;
import org.apache.maven.continuum.configuration.ConfigurationStoringException;
import org.apache.maven.continuum.model.system.ContinuumUser;
@@ -26,7 +28,9 @@
import org.apache.maven.continuum.security.ContinuumSecurity;
import org.apache.maven.continuum.store.ContinuumStore;
import org.apache.maven.continuum.store.ContinuumStoreException;
+import org.codehaus.plexus.util.StringUtils;
+import com.opensymphony.webwork.ServletActionContext;
import com.opensymphony.xwork.Preparable;
/**
@@ -83,6 +87,14 @@
baseUrl = configuration.getUrl();
+ if ( StringUtils.isEmpty( baseUrl ) )
+ {
+ HttpServletRequest request = ServletActionContext.getRequest();
+ baseUrl = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
+ + request.getContextPath();
+ getLogger().info( "baseUrl='" + baseUrl + "'" );
+ }
+
companyLogo = configuration.getCompanyLogo();
companyName = configuration.getCompanyName();
@@ -124,8 +136,6 @@
configuration.setWorkingDirectory( new File( workingDirectory ) );
- configuration.setWorkingDirectory( new File( workingDirectory ) );
-
configuration.setBuildOutputDirectory( new File( buildOutputDirectory ) );
configuration.setUrl( baseUrl );
@@ -134,11 +144,10 @@
configuration.setCompanyName( companyName );
- configuration.setInitialized( true );
- configuration.store();
+ configuration.setCompanyUrl( companyUrl );
configuration.setInitialized( true );
- configuration.store();
+ configuration.store();
return SUCCESS;
}
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ContinuumActionSupport.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ContinuumActionSupport.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ContinuumActionSupport.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ContinuumActionSupport.java Sun Sep 24 17:40:23 2006
@@ -14,13 +14,15 @@
* 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 com.opensymphony.xwork.Preparable;
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.initialization.ContinuumInitializationException;
import org.codehaus.plexus.xwork.action.PlexusActionSupport;
+import com.opensymphony.xwork.Preparable;
+
/**
* ContinuumActionSupport
*
@@ -39,13 +41,13 @@
public void prepare()
throws Exception
{
-
-
- getLogger().info("checking the continuum configuration");
+ getLogger().debug( "Checking if Continuum is initialized" );
if ( !continuum.getConfiguration().isInitialized() )
{
- throw new ContinuumInitializationException( "continuum not initialized" );
+ throw new ContinuumInitializationException( "This is your first time running continuum, "
+ + "when you access it through a web browser you will need to enter some "
+ + "information before being able to use it. " + "You can ignore this exception." );
}
}
Modified: maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java
URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java?view=diff&rev=449533&r1=449532&r2=449533
==============================================================================
--- maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java (original)
+++ maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/PerformReleaseAction.java Sun Sep 24 17:40:23 2006
@@ -62,6 +62,10 @@
public String execute()
throws Exception
{
+ if ( StringUtils.isNotEmpty( goals ) )
+ {
+ goals = "clean deploy";
+ }
if ( StringUtils.isNotEmpty( releaseId ) )
{
ContinuumReleaseManager releaseManager = getContinuum().getReleaseManager();
Re: svn commit: r449533 [1/3] - in /maven/continuum/trunk: ./ continuum-api/src/main/java/org/apache/maven/continuum/ continuum-api/src/main/java/org/apache/maven/continuum/project/builder/ continuum-api/src/main/java/org/apache/maven/continuum/store/ cont...
Posted by Brett Porter <br...@apache.org>.
I've taken a peek through this to sanity check - there are some
things that look like they've been removed that shouldn't have been,
but I could be wrong and it could have been intentional. Can you
confirm?
On 25/09/2006, at 10:40 AM, carlos@apache.org wrote:
> Added:
> maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/
> maven/continuum/web/filter/
> - copied from r448283, maven/continuum/branches/continuum-
> acegi/continuum-webapp/src/main/java/org/apache/maven/continuum/web/
> filter/
> maven/continuum/trunk/continuum-webapp/src/main/java/org/apache/
> maven/continuum/web/filter/FilterToComponentProxy.java
> - copied unchanged from r448283, maven/continuum/branches/
> continuum-acegi/continuum-webapp/src/main/java/org/apache/maven/
> continuum/web/filter/FilterToComponentProxy.java
Isn't this only for Acegi?
> Removed:
> maven/continuum/trunk/continuum-webapp/src/main/webapp/error.jsp
Isn't this needed?
> - ProjectGroup getDefaultProjectGroup()
> - throws ContinuumStoreException;
> -
was this intentional?
> Modified: maven/continuum/trunk/continuum-core/src/main/java/org/
> apache/maven/continuum/DefaultContinuum.java
>
> - try
> - {
> - buildResults = new ArrayList
> ( store.getProjectWithBuilds( projectId ).getBuildResults() );
> - }
> - catch ( ContinuumObjectNotFoundException e )
> - {
> - return Collections.EMPTY_LIST;
> - }
> - catch ( ContinuumStoreException e )
> - {
> - throw logAndCreateException( "Exception while getting
> build results for project.", e );
> - }
> + buildResults = new ArrayList
> ( store.getBuildResultsForProject( projectId, 0 ) );
was this intentional? If so, I assume all the other exception
removals were too so that there is a catch all. I'm still not sure I
like that, but something we can overall review later.
> Modified: maven/continuum/trunk/continuum-webapp/src/main/filters/
> filter.properties
> URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-
> webapp/src/main/filters/filter.properties?
> view=diff&rev=449533&r1=449532&r2=449533
> ======================================================================
> ========
> --- maven/continuum/trunk/continuum-webapp/src/main/filters/
> filter.properties (original)
> +++ maven/continuum/trunk/continuum-webapp/src/main/filters/
> filter.properties Sun Sep 24 17:40:23 2006
> @@ -2,3 +2,37 @@
> # emails to the specified address
> # nobody@localhost
> mail.override.to.address=
> +
> +#
> +# Database configuration
> +#
> +
> +# Derby
> +db.driverName=org.apache.derby.jdbc.EmbeddedDriver
> +db.url=jdbc:derby:${plexus.home}/database;create=true
> +db.userName=sa
> +db.password=
> +acl.sql=org/apache/maven/user/acegi/acl/acegi-acl-derby.sql
> +
> +# PostgreSQL
> +#db.driverName=org.postgresql.Driver
> +#db.url=jdbc:postgresql://localhost/continuum
> +#db.userName=
> +#db.password=
> +#acl.sql=not done yet
> +
> +# MySQL
> +#db.driverName=com.mysql.jdbc.Driver
> +#db.url=jdbc:mysql://localhost/test
> +#db.userName=
> +#db.password=
> +#acl.sql=org/apache/maven/user/acegi/acl/acegi-acl-mysql.sql
> +
> +# HSQLDB
> +# NOTE: NO NOT USE THIS CONFIGURATION FOR A PRODUCTION SYSTEM.
> +# HSQLDB keeps all data in memory at all times.
> +#db.driverName=org.hsqldb.jdbcDriver
> +#db.url=jdbc:hsqldb:${plexus.home}/database
> +#db.userName=sa
> +#db.password=
> +#acl.sql=not done yet
Can we change this to the datasource based one, consistent with
Archiva? Much nicer to externalise configuration from the webapp for
distribution purposes.
- Brett