blob: b43ad20c467f8f7a801bff7f3a57249ac8a1e50b [file] [log] [blame]
package org.apache.maven.continuum.xmlrpc;
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
import java.util.List;
import java.util.Map;
import org.apache.maven.continuum.xmlrpc.project.AddingResult;
import org.apache.maven.continuum.xmlrpc.project.BuildDefinition;
import org.apache.maven.continuum.xmlrpc.project.BuildDefinitionTemplate;
import org.apache.maven.continuum.xmlrpc.project.BuildProjectTask;
import org.apache.maven.continuum.xmlrpc.project.BuildResult;
import org.apache.maven.continuum.xmlrpc.project.BuildResultSummary;
import org.apache.maven.continuum.xmlrpc.project.Project;
import org.apache.maven.continuum.xmlrpc.project.ProjectGroup;
import org.apache.maven.continuum.xmlrpc.project.ProjectGroupSummary;
import org.apache.maven.continuum.xmlrpc.project.ProjectNotifier;
import org.apache.maven.continuum.xmlrpc.project.ProjectSummary;
import org.apache.maven.continuum.xmlrpc.project.Schedule;
import org.apache.maven.continuum.xmlrpc.system.Installation;
import org.apache.maven.continuum.xmlrpc.system.Profile;
import org.apache.maven.continuum.xmlrpc.system.SystemConfiguration;
import org.apache.xmlrpc.XmlRpcException;
/**
* @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
* @version $Id$
*/
public interface ContinuumService
{
// ----------------------------------------------------------------------
// Projects
// ----------------------------------------------------------------------
/**
* Get All projects.
*
* @param projectGroupId The project group Id
* @return List of {@link ProjectSummary}
* @throws Exception
* @throws XmlRpcException
*/
List<ProjectSummary> getProjects( int projectGroupId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectGroupId The project group Id
* @return List of {@link ProjectSummary} as RPC value
* @throws Exception
*/
List<Object> getProjectsRPC(int projectGroupId)throws Exception;
/**
* Get a project.
*
* @param projectId the project id
* @return The project summary
* @throws Exception
*/
ProjectSummary getProjectSummary( int projectId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectId the project id
* @return The project summary as RPC value
* @throws Exception
*/
Map<String,Object> getProjectSummaryRPC(int projectId)throws Exception;
/**
* Get a project with all details.
*
* @param projectId The project id
* @return The project
* @throws Exception
*/
Project getProjectWithAllDetails( int projectId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectId the project id
* @return The project as RPC value
* @throws Exception
*/
Map<String,Object> getProjectWithAllDetailsRPC(int projectId)throws Exception;
/**
* Remove a project.
*
* @param projectId The project id
* @throws Exception
*/
int removeProject( int projectId )
throws Exception;
/**
* Update a project. Useful to change the scm parameters.
*
* @param project The project to update
* @throws Exception
*/
ProjectSummary updateProject( ProjectSummary project )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param project The project to update
* @return The project as RPC value
* @throws Exception
*/
Map<String,Object> updateProjectRPC(Map<String,Object> project)throws Exception;
// ----------------------------------------------------------------------
// Projects Groups
// ----------------------------------------------------------------------
/**
* Get a project groups.
*
* @param projectGroupId the id
* @return project group
* @throws Exception
*/
ProjectGroup getProjectGroup(int projectGroupId) throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectGroupId the id
* @return project group as RPC value
* @throws Exception
*/
Map<String, Object> getProjectGroupRPC(int projectGroupId) throws Exception;
/**
* Get all project groups.
*
* @return All project groups
* @throws Exception
*/
List<ProjectGroupSummary> getAllProjectGroups()
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @return List of {@link ProjectGroupSummary} as RPC value
* @throws Exception
*/
List<Object> getAllProjectGroupsRPC()throws Exception;
/**
* Get all project groups with all details (project summaries, notifiers, build definitions).
*
* @return All project groups
* @throws Exception
*/
List<ProjectGroup> getAllProjectGroupsWithAllDetails()
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @return List of {@link ProjectGroup} as RPC value
* @throws Exception
*/
List<Object> getAllProjectGroupsWithAllDetailsRPC()throws Exception;
/**
* Get all project groups with all details.
*
* @return All project groups
* @throws Exception
* @deprecated
*/
List<ProjectGroup> getAllProjectGroupsWithProjects()
throws Exception;
/**
* Get a project group.
*
* @param projectGroupId The project group id
* @return The project group summary
* @throws Exception
*/
ProjectGroupSummary getProjectGroupSummary( int projectGroupId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectGroupId The project group id
* @return The project group summary as RPC value
* @throws Exception
*/
Map<String,Object> getProjectGroupSummaryRPC(int projectGroupId)throws Exception;
/**
* Get a project group with all details.
*
* @param projectGroupId The project group id
* @return The project group
* @throws Exception
*/
ProjectGroup getProjectGroupWithProjects( int projectGroupId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectGroupId The project group id
* @return The project group as RPC value
* @throws Exception
*/
Map<String,Object> getProjectGroupWithProjectsRPC(int projectGroupId)throws Exception;
/**
* Remove a project group.
*
* @param projectGroupId The project group id
* @throws Exception
*/
int removeProjectGroup( int projectGroupId )
throws Exception;
/**
* Update a project Group.
*
* @param projectGroup The project group to update
* @throws Exception
*/
ProjectGroupSummary updateProjectGroup( ProjectGroupSummary projectGroup )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectGroup The project group to update
* @return The project group as RPC value
* @throws Exception
*/
Map<String,Object> updateProjectGroupRPC(Map<String,Object> projectGroup)throws Exception;
/**
* Add a project Group.
*
* @param groupName The project group name
* @param groupId The project group id
* @param description The project group description
* @return the project group summary of the created project group
* @throws Exception
*/
ProjectGroupSummary addProjectGroup( String groupName, String groupId, String description )
throws Exception;
int removeBuildDefinitionFromProjectGroup(int projectGroupId, int buildDefinitionId) throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param groupName The project group name
* @param groupId The project group id
* @param description The project group description
* @return the project group summary of the created project group as RPC value
* @throws Exception
*/
Map<String,Object> addProjectGroupRPC( String groupName, String groupId, String description )
throws Exception;
ProjectNotifier getNotifier(int projectid, int notifierId) throws Exception;
Map<String, Object> getNotifierRPC(int projectid, int notifierId) throws Exception;
ProjectNotifier getGroupNotifier(int projectgroupid, int notifierId) throws Exception;
Map<String, Object> getGroupNotifierRPC(int projectgroupid, int notifierId) throws Exception;
ProjectNotifier updateGroupNotifier(int projectgroupid, ProjectNotifier newNotifier) throws Exception;
Map<String, Object> updateGroupNotifierRPC(int projectgroupid, Map<String, Object> newNotifier) throws Exception;
ProjectNotifier updateNotifier(int projectid, ProjectNotifier newNotifier) throws Exception;
Map<String, Object> updateNotifierRPC(int projectid, Map<String, Object> newNotifier) throws Exception;
int removeGroupNotifier(int projectgroupid, int notifierId) throws Exception;
int removeNotifier(int projectid, int notifierId) throws Exception;
ProjectNotifier addNotifier(int projectid, ProjectNotifier newNotifier) throws Exception;
ProjectNotifier addGroupNotifier(int projectgroupid, ProjectNotifier newNotifier) throws Exception;
Map<String, Object> addNotifierRPC(int projectid, Map<String, Object> newNotifier) throws Exception;
Map<String, Object> addGroupNotifierRPC(int projectgroupid, Map<String, Object> newNotifier) throws Exception;
// ----------------------------------------------------------------------
// Build Definitions
// ----------------------------------------------------------------------
/**
* Get the build definitions list of the project.
*
* @param projectId The project id
* @return The build definitions list
* @throws Exception
*/
List<BuildDefinition> getBuildDefinitionsForProject( int projectId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectId The project id
* @return The build definitions list as RPC value
* @throws Exception
*/
List<Object> getBuildDefinitionsForProjectRPC( int projectId )
throws Exception;
/**
* Get the build definitions list of the project group.
*
* @param projectGroupId The project group id
* @return The build definitions list
* @throws Exception
*/
List<BuildDefinition> getBuildDefinitionsForProjectGroup( int projectGroupId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectGroupId The project group id
* @return The build definitions list as RPC value
* @throws Exception
*/
List<Object> getBuildDefinitionsForProjectGroupRPC( int projectGroupId )
throws Exception;
/**
* Update a project build definition.
*
* @param projectId The project id
* @param buildDef The build defintion to update
* @return the updated build definition
* @throws Exception
*/
BuildDefinition updateBuildDefinitionForProject( int projectId, BuildDefinition buildDef )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectId The project id
* @param buildDef The build defintion to update
* @return the updated build definition as RPC value
* @throws Exception
*/
Map<String,Object> updateBuildDefinitionForProjectRPC( int projectId, Map<String,Object> buildDef )
throws Exception;
/**
* Update a project group build definition.
*
* @param projectGroupId The project group id
* @param buildDef The build defintion to update
* @return the updated build definition
* @throws Exception
*/
BuildDefinition updateBuildDefinitionForProjectGroup( int projectGroupId, BuildDefinition buildDef )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectGroupId The project group id
* @param buildDef The build defintion to update
* @return the updated build definition as RPC value
* @throws Exception
*/
Map<String,Object> updateBuildDefinitionForProjectGroupRPC( int projectGroupId, Map<String,Object> buildDef )
throws Exception;
/**
* Add a project build definition.
*
* @param projectId The project id
* @param buildDef The build defintion to update
* @return the added build definition
* @throws Exception
*/
BuildDefinition addBuildDefinitionToProject( int projectId, BuildDefinition buildDef )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectId The project id
* @param buildDef The build defintion to update
* @return the added build definition as RPC value
* @throws Exception
*/
Map<String,Object> addBuildDefinitionToProjectRPC( int projectId, Map<String,Object> buildDef )
throws Exception;
/**
* Add a project group buildDefinition.
*
* @param projectGroupId The project group id
* @param buildDef The build defintion to update
* @return the build definition added
* @throws Exception
*/
BuildDefinition addBuildDefinitionToProjectGroup( int projectGroupId, BuildDefinition buildDef )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectGroupId The project group id
* @param buildDef The build defintion to update
* @return the added build definition as RPC value
* @throws Exception
*/
Map<String,Object> addBuildDefinitionToProjectGroupRPC( int projectGroupId, Map<String,Object> buildDef )
throws Exception;
/**
* Get the build definition templates list.
*
* @return The build definitions templates list
* @throws Exception
*/
List<BuildDefinitionTemplate> getBuildDefinitionTemplates()
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @return The build definitions templates list as RPC value
* @throws Exception
*/
List<Object> getBuildDefinitionTemplatesRPC()
throws Exception;
// ----------------------------------------------------------------------
// Building
// ----------------------------------------------------------------------
/**
* Add the project to the build queue.
*
* @param projectId The project id
* @throws Exception
*/
int addProjectToBuildQueue( int projectId )
throws Exception;
/**
* Add the project to the build queue.
*
* @param projectId The project id
* @param buildDefinitionId The build definition id
* @throws Exception
*/
int addProjectToBuildQueue( int projectId, int buildDefinitionId )
throws Exception;
/**
* Build the project
*
* @param projectId The project id
* @throws Exception
*/
int buildProject( int projectId )
throws Exception;
/**
* Build the project
*
* @param projectId The project id
* @param buildDefinitionId The build definition id
* @throws Exception
*/
int buildProject( int projectId, int buildDefinitionId )
throws Exception;
/**
* Build the project group with the default build definition.
*
* @param projectGroupId The project group id
* @throws Exception
*/
int buildGroup( int projectGroupId )
throws Exception;
/**
* Build the project group with the specified build definition.
*
* @param projectGroupId The project group id
* @param buildDefinitionId The build definition id
* @throws Exception
*/
int buildGroup( int projectGroupId, int buildDefinitionId )
throws Exception;
// ----------------------------------------------------------------------
// Build Results
// ----------------------------------------------------------------------
/**
* Returns the latest build result for the project.
*
* @param projectId The project id
* @return The build result
* @throws Exception
*/
BuildResult getLatestBuildResult( int projectId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectId The project id
* @return The build result as RPC value
* @throws Exception
*/
Map<String,Object> getLatestBuildResultRPC( int projectId )
throws Exception;
/**
* Returns the build result.
*
* @param projectId The project id
* @param buildId The build id
* @return The build result
* @throws Exception
*/
BuildResult getBuildResult( int projectId, int buildId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectId The project id
* @param buildId The build id
* @return The build result as RPC value
* @throws Exception
*/
Map<String,Object> getBuildResultRPC( int projectId, int buildId )
throws Exception;
/**
* Returns the project build result summary list.
*
* @param projectId The project id
* @return The build result list
* @throws Exception
*/
List<BuildResultSummary> getBuildResultsForProject( int projectId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param projectId The project id
* @return The build result list as RPC value
* @throws Exception
*/
List<Object> getBuildResultsForProjectRPC( int projectId )
throws Exception;
/**
* Remove the project build result.
*
* @param br The project build result
* @return 0
* @throws Exception
*/
int removeBuildResult( BuildResult br )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param br The project build result
* @return 0
* @throws Exception
*/
int removeBuildResultRPC( Map<String,Object> br )
throws Exception;
/**
* Returns the build output.
*
* @param projectId The project id
* @param buildId The build id
* @return The build output
* @throws Exception
*/
String getBuildOutput( int projectId, int buildId )
throws Exception;
// ----------------------------------------------------------------------
// Maven 2.x projects
// ----------------------------------------------------------------------
/**
* Add a maven 2.x project from an url.
*
* @param url The POM url
* @return The result of the action with the list of projects created
* @throws Exception
*/
AddingResult addMavenTwoProject( String url )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param url The POM url
* @return The result of the action with the list of projects created as RPC value
* @throws Exception
*/
Map<String,Object> addMavenTwoProjectRPC( String url )
throws Exception;
/**
* Add a maven 2.x project from an url.
*
* @param url The POM url
* @param projectGroupId The id of the group where projects will be stored
* @return The result of the action with the list of projects created
* @throws Exception
*/
AddingResult addMavenTwoProject( String url, int projectGroupId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param url The POM url
* @param projectGroupId The id of the group where projects will be stored
* @return The result of the action with the list of projects created as RPC value
* @throws Exception
*/
Map<String,Object> addMavenTwoProjectRPC( String url, int projectGroupId )
throws Exception;
// ----------------------------------------------------------------------
// Maven 1.x projects
// ----------------------------------------------------------------------
/**
* Add a maven 1.x project from an url.
*
* @param url The POM url
* @return The result of the action with the list of projects created
* @throws Exception
*/
AddingResult addMavenOneProject( String url )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param url The POM url
* @return The result of the action with the list of projects created as RPC value
* @throws Exception
*/
Map<String,Object> addMavenOneProjectRPC( String url )
throws Exception;
/**
* Add a maven 1.x project from an url.
*
* @param url The POM url
* @param projectGroupId The id of the group where projects will be stored
* @return The result of the action with the list of projects created
* @throws Exception
*/
AddingResult addMavenOneProject( String url, int projectGroupId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param url The POM url
* @param projectGroupId The id of the group where projects will be stored
* @return The result of the action with the list of projects created as RPC value
* @throws Exception
*/
Map<String,Object> addMavenOneProjectRPC( String url, int projectGroupId )
throws Exception;
// ----------------------------------------------------------------------
// Maven ANT projects
// ----------------------------------------------------------------------
/**
* Add an ANT project.
*
* @param project The project to add. name, version and scm informations are required
* @return The project populated with the id.
* @throws Exception
*/
ProjectSummary addAntProject( ProjectSummary project )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param project The project to add. name, version and scm informations are required
* @return The project populated with the id as RPC value
* @throws Exception
*/
Map<String,Object> addAntProjectRPC( Map<String,Object> project)
throws Exception;
/**
* Add an ANT project in the specified group.
*
* @param project The project to add. name, version and scm informations are required
* @param projectGroupId The id of the group where projects will be stored
* @return The project populated with the id.
* @throws Exception
*/
ProjectSummary addAntProject( ProjectSummary project, int projectGroupId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param project The project to add. name, version and scm informations are required
* @param projectGroupId The id of the group where projects will be stored
* @return The project populated with the id as RPC value
* @throws Exception
*/
Map<String,Object> addAntProjectRPC( Map<String,Object> project, int projectGroupId )
throws Exception;
// ----------------------------------------------------------------------
// Maven Shell projects
// ----------------------------------------------------------------------
/**
* Add an shell project.
*
* @param project The project to add. name, version and scm informations are required
* @return The project populated with the id.
* @throws Exception
*/
ProjectSummary addShellProject( ProjectSummary project )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param project The project to add. name, version and scm informations are required
* @return The project populated with the id as RPC value
* @throws Exception
*/
Map<String,Object> addShellProjectRPC( Map<String,Object> project )
throws Exception;
/**
* Add an shell project in the specified group.
*
* @param project The project to add. name, version and scm informations are required
* @param projectGroupId The id of the group where projects will be stored
* @return The project populated with the id.
* @throws Exception
*/
ProjectSummary addShellProject( ProjectSummary project, int projectGroupId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param project The project to add. name, version and scm informations are required
* @param projectGroupId The id of the group where projects will be stored
* @return The project populated with the id as RPC value
* @throws Exception
*/
Map<String,Object> addShellProjectRPC( Map<String,Object> project, int projectGroupId )
throws Exception;
// ----------------------------------------------------------------------
// ADMIN TASKS
// ----------------------------------------------------------------------
// ----------------------------------------------------------------------
// Schedules
// ----------------------------------------------------------------------
/**
* Return the schedules list.
*
* @return The schedule list.
* @throws Exception
*/
List<Schedule> getSchedules()
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @return The schedule list as RPC value.
* @throws Exception
*/
List<Object> getSchedulesRPC()
throws Exception;
/**
* Return the schedule defined by this id.
*
* @param scheduleId The schedule id
* @return The schedule.
* @throws Exception
*/
Schedule getSchedule( int scheduleId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param scheduleId The schedule id
* @return The schedule as RPC value.
* @throws Exception
*/
Map<String,Object> getScheduleRPC(int scheduleId)
throws Exception;
/**
* Add the schedule.
*
* @param schedule The schedule
* @return The schedule.
* @throws Exception
*/
Schedule addSchedule( Schedule schedule )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param schedule The schedule
* @return The schedule as RPC value.
* @throws Exception
*/
Map<String,Object> addScheduleRPC( Map<String,Object> schedule )
throws Exception;
/**
* Update the schedule.
*
* @param schedule The schedule
* @return The schedule.
* @throws Exception
*/
Schedule updateSchedule( Schedule schedule )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param schedule The schedule
* @return The schedule as RPC value.
* @throws Exception
*/
Map<String,Object> updateScheduleRPC( Map<String,Object> schedule )
throws Exception;
// ----------------------------------------------------------------------
// Profiles
// ----------------------------------------------------------------------
/**
* Return the profiles list.
*
* @return The profiles list.
* @throws Exception
*/
List<Profile> getProfiles()
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @return The profiles list as RPC value.
* @throws Exception
*/
List<Object> getProfilesRPC()
throws Exception;
/**
* Return the profile defined by this id.
*
* @param profileId The profile id
* @return The profile.
* @throws Exception
*/
Profile getProfile( int profileId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param profileId The profile id
* @return The profile.
* @throws Exception
*/
Map<String,Object> getProfileRPC( int profileId )
throws Exception;
Profile addProfile(Profile profile)
throws Exception;
int updateProfile(Profile profile)
throws Exception;
int deleteProfile(int profileId)
throws Exception;
Map<String,Object> addProfileRPC(Map<String,Object> profile)
throws Exception;
int updateProfileRPC(Map<String,Object> profile)
throws Exception;
// ----------------------------------------------------------------------
// Installations
// ----------------------------------------------------------------------
/**
* Return the installations list.
*
* @return The installations list.
* @throws Exception
*/
List<Installation> getInstallations()
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @return The installations list.
* @throws Exception
*/
List<Object> getInstallationsRPC()
throws Exception;
/**
* Return the installation defined by this id.
*
* @param installationId The installation id
* @return The installation.
* @throws Exception
*/
Installation getInstallation( int installationId )
throws Exception;
/**
* Same method but compatible with standard XMLRPC
*
* @param installationId The installation id
* @return The installation.
* @throws Exception
*/
Map<String,Object> getInstallationRPC( int installationId )
throws Exception;
Installation addInstallation(Installation installation)
throws Exception;
int updateInstallation(Installation installation)
throws Exception;
int deleteInstallation(int installationId)
throws Exception;
Map<String,Object> addInstallationRPC(Map<String,Object> installation)
throws Exception;
int updateInstallationRPC(Map<String,Object> installation)
throws Exception;
// ----------------------------------------------------------------------
// SystemConfiguration
// ----------------------------------------------------------------------
SystemConfiguration getSystemConfiguration()
throws Exception;
Map<String,Object> getSystemConfigurationRPC()
throws Exception;
// ----------------------------------------------------------------------
// Queue
// ----------------------------------------------------------------------
/**
* Return true is the project is in building queue.
*
* @param projectGroupId The project group id
* @throws ContinuumException
*/
boolean isProjectInBuildingQueue( int projectId )
throws Exception;
/**
* Return projects building queue.
*
* @throws ContinuumException
*/
public List<BuildProjectTask> getProjectsInBuildQueue()
throws Exception;
// ----------------------------------------------------------------------
// TODO:Users
// ----------------------------------------------------------------------
// ----------------------------------------------------------------------
// Utils
// ----------------------------------------------------------------------
boolean ping()
throws Exception;
}