You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ct...@apache.org on 2008/09/02 15:24:52 UTC
svn commit: r691239 [3/3] - in /continuum/branches/continuum-transient-state:
continuum-api/src/main/java/org/apache/continuum/dao/
continuum-api/src/main/java/org/apache/continuum/purge/
continuum-api/src/main/java/org/apache/continuum/taskqueue/ cont...
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectGroupAction.java Tue Sep 2 06:24:15 2008
@@ -19,7 +19,9 @@
* under the License.
*/
+import org.apache.continuum.model.project.ProjectScmRoot;
import org.apache.continuum.model.repository.LocalRepository;
+import org.apache.continuum.taskqueue.manager.TaskQueueManager;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.BuildDefinition;
import org.apache.maven.continuum.model.project.BuildResult;
@@ -78,6 +80,11 @@
*/
private RoleManager roleManager;
+ /**
+ * @plexus.requirement
+ */
+ private TaskQueueManager taskQueueManager;
+
private int projectGroupId;
private ProjectGroup projectGroup;
@@ -117,9 +124,11 @@
private String url;
private int repositoryId;
-
+
private List<LocalRepository> repositories;
-
+
+ private List<ProjectScmRoot> projectScmRoots;
+
public String summary()
throws ContinuumException
{
@@ -220,6 +229,8 @@
preferredExecutor = "shell";
}
}
+
+ projectScmRoots = getContinuum().getProjectScmRootByProjectGroup( projectGroup.getId() );
}
return SUCCESS;
@@ -292,7 +303,7 @@
}
public String edit()
- throws ContinuumException
+ throws Exception
{
try
{
@@ -319,7 +330,7 @@
while ( proj.hasNext() )
{
Project p = (Project) proj.next();
- if ( getContinuum().isInCheckoutQueue( p.getId() ) )
+ if ( taskQueueManager.isInCheckoutQueue( p.getId() ) )
{
projectInCOQueue = true;
}
@@ -930,4 +941,14 @@
{
this.repositories = repositories;
}
+
+ public List<ProjectScmRoot> getProjectScmRoots()
+ {
+ return projectScmRoots;
+ }
+
+ public void setProjectScmRoots( List<ProjectScmRoot> projectScmRoots )
+ {
+ this.projectScmRoots = projectScmRoots;
+ }
}
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectsListAction.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectsListAction.java?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectsListAction.java (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/ProjectsListAction.java Tue Sep 2 06:24:15 2008
@@ -20,8 +20,10 @@
*/
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.BuildDefinition;
@@ -146,8 +148,8 @@
Project p = getContinuum().getProjectWithAllDetails( projectId );
projectsList.add( p );
}
-
- List sortedProjects;
+
+ List<Project> sortedProjects;
try
{
sortedProjects = getContinuum().getProjectsInBuildOrder( projectsList );
@@ -157,6 +159,25 @@
sortedProjects = projectsList;
}
+ Map<Integer, Integer> projectsBuildDefsMap = getProjectsBuildDefsMap( sortedProjects );
+
+ for ( Project project : sortedProjects )
+ {
+ getContinuum().prepareBuildProjects( projectsBuildDefsMap );
+
+ if ( this.getBuildDefinitionId() <= 0 )
+ {
+ getContinuum().buildProject( project.getId(), projectsBuildDefsMap.get( project.getId() ),
+ ContinuumProjectState.TRIGGER_FORCED );
+ }
+ else
+ {
+ getContinuum().buildProject( project.getId(), this.getBuildDefinitionId(),
+ ContinuumProjectState.TRIGGER_FORCED );
+ }
+ }
+
+ /*
//TODO : Change this part because it's a duplicate of DefaultContinuum.buildProjectGroup*
List<BuildDefinition> groupDefaultBDs = null;
@@ -164,6 +185,8 @@
{
groupDefaultBDs = getContinuum().getDefaultBuildDefinitionsForProjectGroup( projectGroupId );
}
+
+
for ( Iterator i = sortedProjects.iterator(); i.hasNext(); )
{
Project project = (Project) i.next();
@@ -212,11 +235,38 @@
ContinuumProjectState.TRIGGER_FORCED );
}
}
-
+ */
}
return SUCCESS;
}
+
+ private Map<Integer, Integer> getProjectsBuildDefsMap( List<Project> projects )
+ throws ContinuumException
+ {
+ Map<Integer, Integer> projectsBuildDefsMap = new HashMap<Integer, Integer>();
+
+ if ( this.getBuildDefinitionId() <= 0 )
+ {
+ boolean checkDefaultBuildDefinitionForProject = false;
+
+ if ( this.getBuildDefinitionId() == -1 )
+ {
+ checkDefaultBuildDefinitionForProject = true;
+ }
+
+ List<BuildDefinition> groupDefaultBDs = getContinuum().getDefaultBuildDefinitionsForProjectGroup( projectGroupId );
+
+ return getContinuum().getProjectsAndBuildDefinitionsMap( projects,
+ groupDefaultBDs,
+ checkDefaultBuildDefinitionForProject );
+ }
+ else
+ {
+ return getContinuum().getProjectsAndBuildDefinitionsMap( projects,
+ this.getBuildDefinitionId() );
+ }
+ }
public String getProjectGroupName()
throws ContinuumException
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SummaryAction.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SummaryAction.java?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SummaryAction.java (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/SummaryAction.java Tue Sep 2 06:24:15 2008
@@ -19,6 +19,8 @@
* under the License.
*/
+import org.apache.continuum.taskqueue.manager.TaskQueueManager;
+import org.apache.continuum.taskqueue.manager.TaskQueueManagerException;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.model.project.BuildResult;
import org.apache.maven.continuum.model.project.Project;
@@ -53,6 +55,11 @@
private GroupSummary groupSummary = new GroupSummary();
+ /**
+ * @plexus.requirement
+ */
+ private TaskQueueManager taskQueueManager;
+
public String execute()
throws ContinuumException
{
@@ -101,19 +108,26 @@
model.setProjectGroupName( project.getProjectGroup().getName() );
model.setProjectType( project.getExecutorId() );
-
- if ( getContinuum().isInBuildingQueue( project.getId() ) )
- {
- model.setInBuildingQueue( true );
- }
- else if ( getContinuum().isInCheckoutQueue( project.getId() ) )
+
+ try
{
- model.setInCheckoutQueue( true );
+ if ( taskQueueManager.isInBuildingQueue( project.getId() ) )
+ {
+ model.setInBuildingQueue( true );
+ }
+ else if ( taskQueueManager.isInCheckoutQueue( project.getId() ) )
+ {
+ model.setInCheckoutQueue( true );
+ }
+ else
+ {
+ model.setInBuildingQueue( false );
+ model.setInCheckoutQueue( false );
+ }
}
- else
+ catch ( TaskQueueManagerException e )
{
- model.setInBuildingQueue( false );
- model.setInCheckoutQueue( false );
+ throw new ContinuumException( e.getMessage(), e );
}
model.setState( project.getState() );
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/AbstractBuildQueueAction.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/AbstractBuildQueueAction.java?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/AbstractBuildQueueAction.java (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/AbstractBuildQueueAction.java Tue Sep 2 06:24:15 2008
@@ -20,6 +20,8 @@
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.buildqueue.BuildProjectTask;
+import org.apache.maven.continuum.model.project.BuildResult;
+import org.apache.maven.continuum.model.project.Project;
import org.apache.maven.continuum.web.action.ContinuumActionSupport;
import org.codehaus.plexus.logging.LogEnabled;
import org.codehaus.plexus.taskqueue.Task;
@@ -52,6 +54,7 @@
if ( ( (BuildProjectTask) task ).getProjectId() == projectId )
{
getLogger().info( "Cancelling task for project " + projectId );
+
return getTaskQueueExecutor().cancelTask( task );
}
else
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/QueuesAction.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/QueuesAction.java?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/QueuesAction.java (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/action/admin/QueuesAction.java Tue Sep 2 06:24:15 2008
@@ -22,6 +22,7 @@
import java.util.List;
import org.apache.commons.lang.ArrayUtils;
+import org.apache.continuum.taskqueue.manager.TaskQueueManager;
import org.apache.maven.continuum.buildqueue.BuildProjectTask;
import org.apache.maven.continuum.model.project.Project;
import org.apache.maven.continuum.scm.queue.CheckOutTask;
@@ -76,6 +77,11 @@
private int trigger;
private String projectName;
+
+ /**
+ * @plexus.requirement
+ */
+ private TaskQueueManager taskQueueManager;
// -----------------------------------------------------
// webwork
@@ -121,7 +127,7 @@
return REQUIRES_AUTHENTICATION;
}
- getContinuum().removeProjectFromCheckoutQueue( projectId );
+ taskQueueManager.removeProjectFromCheckoutQueue( projectId );
return SUCCESS;
}
@@ -150,9 +156,9 @@
throws Exception
{
this.setCurrentBuildProjectTask( (BuildProjectTask) taskQueueExecutor.getCurrentTask() );
- this.setBuildProjectTasks( getContinuum().getProjectsInBuildQueue() );
+ this.setBuildProjectTasks( taskQueueManager.getProjectsInBuildQueue() );
this.setCurrentCheckOutTask( (CheckOutTask) checkoutTaskQueueExecutor.getCurrentTask() );
- this.setCurrentCheckOutTasks( getContinuum().getCheckOutTasksInQueue() );
+ this.setCurrentCheckOutTasks( taskQueueManager.getCheckOutTasksInQueue() );
return SUCCESS;
}
@@ -174,7 +180,7 @@
return REQUIRES_AUTHENTICATION;
}
- getContinuum().removeFromBuildingQueue( projectId, buildDefinitionId, trigger, projectName );
+ taskQueueManager.removeFromBuildingQueue( projectId, buildDefinitionId, trigger, projectName );
Project project = getContinuum().getProject( projectId );
project.setState( project.getOldState() );
getContinuum().updateProject( project );
@@ -200,7 +206,7 @@
return REQUIRES_AUTHENTICATION;
}
- getContinuum().removeProjectsFromBuildingQueueWithHashCodes( listToIntArray(this.getSelectedBuildTaskHashCodes()) );
+ taskQueueManager.removeProjectsFromBuildingQueueWithHashCodes( listToIntArray(this.getSelectedBuildTaskHashCodes()) );
return SUCCESS;
}
@@ -222,7 +228,7 @@
return REQUIRES_AUTHENTICATION;
}
- getContinuum()
+ taskQueueManager
.removeTasksFromCheckoutQueueWithHashCodes( listToIntArray( this.getSelectedCheckOutTaskHashCodes() ) );
return SUCCESS;
}
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/util/StateGenerator.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/util/StateGenerator.java?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/util/StateGenerator.java (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/util/StateGenerator.java Tue Sep 2 06:24:15 2008
@@ -49,7 +49,7 @@
{
return NEW;
}
- else if ( state == ContinuumProjectState.OK )
+ else if ( state == ContinuumProjectState.OK || state == ContinuumProjectState.UPDATED )
{
return "<img src=\"" + contextPath + "/images/icon_success_sml.gif\" alt=\"" + SUCCESS + "\" title=\"" +
SUCCESS + "\" border=\"0\" />";
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/StateCell.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/StateCell.java?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/StateCell.java (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/java/org/apache/maven/continuum/web/view/StateCell.java Tue Sep 2 06:24:15 2008
@@ -22,6 +22,8 @@
import com.opensymphony.webwork.ServletActionContext;
import com.opensymphony.webwork.views.util.UrlHelper;
import com.opensymphony.xwork.ActionContext;
+
+import org.apache.continuum.model.project.ProjectScmRoot;
import org.apache.maven.continuum.project.ContinuumProjectState;
import org.apache.maven.continuum.security.ContinuumRoleConstants;
import org.apache.maven.continuum.web.model.ProjectSummary;
@@ -52,40 +54,80 @@
{
protected String getCellValue( TableModel tableModel, Column column )
{
- ProjectSummary project = (ProjectSummary) tableModel.getCurrentRowBean();
-
- switch ( project.getState() )
+ if ( tableModel.getCurrentRowBean() instanceof ProjectSummary )
{
- case ContinuumProjectState.NEW:
- case ContinuumProjectState.OK:
- case ContinuumProjectState.FAILED:
- case ContinuumProjectState.ERROR:
- case ContinuumProjectState.BUILDING:
- case ContinuumProjectState.UPDATING:
- case ContinuumProjectState.CHECKING_OUT:
- {
- String state = StateGenerator.generate( project.getState(), tableModel.getContext().getContextPath() );
+ ProjectSummary project = (ProjectSummary) tableModel.getCurrentRowBean();
- if ( project.getLatestBuildId() != -1 && !StateGenerator.NEW.equals( state ) )
+ switch ( project.getState() )
+ {
+ case ContinuumProjectState.NEW:
+ case ContinuumProjectState.OK:
+ case ContinuumProjectState.FAILED:
+ case ContinuumProjectState.ERROR:
+ case ContinuumProjectState.BUILDING:
+ case ContinuumProjectState.UPDATING:
+ case ContinuumProjectState.CHECKING_OUT:
{
- if ( isAuthorized( project ) )
+ String state = StateGenerator.generate( project.getState(), tableModel.getContext().getContextPath() );
+
+ if ( project.getLatestBuildId() != -1 && !StateGenerator.NEW.equals( state ) )
{
- return createActionLink( "buildResult", project, state );
+ if ( isAuthorized( project.getProjectGroupName() ) )
+ {
+ return createActionLink( "buildResult", project, state );
+ }
+ else
+ {
+ return state;
+ }
}
else
{
return state;
}
}
- else
+
+ default:
{
- return state;
+ return " ";
}
}
+ }
+ else
+ {
+ ProjectScmRoot projectScmRoot = (ProjectScmRoot) tableModel.getCurrentRowBean();
- default:
+ switch ( projectScmRoot.getState() )
{
- return " ";
+ case ContinuumProjectState.UPDATING:
+ case ContinuumProjectState.UPDATED:
+ case ContinuumProjectState.ERROR:
+ {
+ String state = StateGenerator.generate( projectScmRoot.getState(),
+ tableModel.getContext().getContextPath() );
+
+ if ( !StateGenerator.NEW.equals( state ) )
+ {
+ if ( isAuthorized( projectScmRoot.getProjectGroup().getName() ) &&
+ projectScmRoot.getState() == ContinuumProjectState.ERROR )
+ {
+ return createActionLink( "scmResult", projectScmRoot, state );
+ }
+ else
+ {
+ return state;
+ }
+ }
+ else
+ {
+ return state;
+ }
+ }
+
+ default:
+ {
+ return " ";
+ }
}
}
}
@@ -107,8 +149,22 @@
return "<a href=\"" + url + "\">" + state + "</a>";
}
+
+ private static String createActionLink( String action, ProjectScmRoot scmRoot, String state )
+ {
+ HashMap params = new HashMap();
+
+ params.put( "projectGroupId", new Integer( scmRoot.getProjectGroup().getId() ) );
+
+ params.put( "scmRootAddress", scmRoot.getScmRootAddress() );
+
+ String url = UrlHelper.buildUrl( "/" + action + ".action", ServletActionContext.getRequest(),
+ ServletActionContext.getResponse(), params );
+
+ return "<a href=\"" + url + "\">" + state + "</a>";
+ }
- private boolean isAuthorized( ProjectSummary project )
+ private boolean isAuthorized( String projectGroupName )
{
// do the authz bit
ActionContext context = ActionContext.getContext();
@@ -122,7 +178,7 @@
SecuritySystem securitySystem = (SecuritySystem) container.lookup( SecuritySystem.ROLE );
if ( !securitySystem.isAuthorized( securitySession, ContinuumRoleConstants.CONTINUUM_VIEW_GROUP_OPERATION,
- project.getProjectGroupName() ) )
+ projectGroupName ) )
{
return false;
}
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/resources/META-INF/plexus/application.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/resources/META-INF/plexus/application.xml?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/resources/META-INF/plexus/application.xml (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/resources/META-INF/plexus/application.xml Tue Sep 2 06:24:15 2008
@@ -229,7 +229,7 @@
<allowedScheme>http</allowedScheme>
<allowedScheme>https</allowedScheme>
<allowedScheme>ftp</allowedScheme>
- <!-- <allowedScheme>file</allowedScheme> -->
+ <allowedScheme>file</allowedScheme>
</allowedSchemes>
</configuration>
</component>
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/resources/localization/Continuum.properties
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/resources/localization/Continuum.properties?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/resources/localization/Continuum.properties (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/resources/localization/Continuum.properties Tue Sep 2 06:24:15 2008
@@ -180,6 +180,8 @@
projectGroup.buildDefinition.label = Default Build Definition
projectGroup.addProject.label = Add New Project
projectGroup.repository.label = Local Repository
+projectGroup.scmRoot.title = Project Group Scm Root
+projectGroup.scmRoot.label = Scm Root URL
# ----------------------------------------------------------------------
# Page: Project Group - Members
Modified: continuum/branches/continuum-transient-state/continuum-webapp/src/main/webapp/WEB-INF/jsp/projectGroupSummary.jsp
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-webapp/src/main/webapp/WEB-INF/jsp/projectGroupSummary.jsp?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-webapp/src/main/webapp/WEB-INF/jsp/projectGroupSummary.jsp (original)
+++ continuum/branches/continuum-transient-state/continuum-webapp/src/main/webapp/WEB-INF/jsp/projectGroupSummary.jsp Tue Sep 2 06:24:15 2008
@@ -96,6 +96,20 @@
</table>
</div>
+ <h3><ww:text name="projectGroup.scmRoot.title"/></h3>
+ <ec:table items="projectScmRoots"
+ var="projectScmRoot"
+ showExports="false"
+ showPagination="false"
+ showStatusBar="false"
+ sortable="false"
+ filterable="false">
+ <ec:row highlightRow="true">
+ <ec:column property="state" title=" " width="1%" cell="org.apache.maven.continuum.web.view.StateCell"/>
+ <ec:column property="scmRootAddress" title="projectGroup.scmRoot.label"/>
+ </ec:row>
+ </ec:table>
+
<redback:ifAnyAuthorized permissions="continuum-build-group,continuum-remove-group" resource="${projectGroup.name}">
<h3><ww:text name="projectGroup.actions.title"/></h3>
Modified: continuum/branches/continuum-transient-state/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/ContinuumServiceImpl.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-transient-state/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/ContinuumServiceImpl.java?rev=691239&r1=691238&r2=691239&view=diff
==============================================================================
--- continuum/branches/continuum-transient-state/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/ContinuumServiceImpl.java (original)
+++ continuum/branches/continuum-transient-state/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/ContinuumServiceImpl.java Tue Sep 2 06:24:15 2008
@@ -22,6 +22,8 @@
import net.sf.dozer.util.mapping.DozerBeanMapperSingletonWrapper;
import net.sf.dozer.util.mapping.MapperIF;
import org.apache.continuum.dao.SystemConfigurationDao;
+import org.apache.continuum.taskqueue.manager.TaskQueueManager;
+import org.apache.continuum.taskqueue.manager.TaskQueueManagerException;
import org.apache.maven.continuum.Continuum;
import org.apache.maven.continuum.ContinuumException;
import org.apache.maven.continuum.execution.ContinuumBuildExecutorConstants;
@@ -78,6 +80,11 @@
* @plexus.requirement role-hint="default"
*/
private RoleManager roleManager;
+
+ /**
+ * @plexus.requirement
+ */
+ private TaskQueueManager taskQueueManager;
public boolean ping()
throws ContinuumException
@@ -792,13 +799,27 @@
public boolean isProjectInBuildingQueue( int projectId )
throws ContinuumException
{
- return continuum.isInBuildingQueue( projectId );
+ try
+ {
+ return taskQueueManager.isInBuildingQueue( projectId );
+ }
+ catch ( TaskQueueManagerException e )
+ {
+ throw new ContinuumException( e.getMessage(), e );
+ }
}
public List<BuildProjectTask> getProjectsInBuildQueue()
throws ContinuumException
{
- return populateBuildProjectTaskList( continuum.getProjectsInBuildQueue() );
+ try
+ {
+ return populateBuildProjectTaskList( taskQueueManager.getProjectsInBuildQueue() );
+ }
+ catch ( TaskQueueManagerException e )
+ {
+ throw new ContinuumException( e.getMessage(), e );
+ }
}
// ----------------------------------------------------------------------