com.pmease.quickbuild
Interface BuildEngine

All Superinterfaces:
SchedulableTask
All Known Implementing Classes:
DefaultBuildEngine

public interface BuildEngine
extends SchedulableTask

We pass identifiers instead of objects in build engine methods to avoid potential issues of concurrent modification to the same object from web tier and background build tier.


Field Summary
static BuildEngine instance
           
 
Method Summary
 ResourceAllocation allocateResource(java.lang.Long buildId, java.util.Map<java.lang.String,VariableWrapper> vars, StepPath stepPath)
           
 void cancelAllRequests()
           
 void cancelRequest(java.lang.String requestId)
           
 void cancelRequest(java.lang.String initiatingRequestId, java.lang.String requestId)
           
 void configurationRemoved(java.lang.Long configurationId)
           
 java.util.Date getActivityDate(java.lang.Long configurationId)
           
 Build getBuild(java.lang.Long buildId)
          Get running build of specified id.
 java.lang.Long getBuildId(java.lang.String requestId, java.lang.String nodeAddress)
           
 SimpleCacheItem<java.lang.Object> getBuildIdCacheItem(java.lang.String requestId)
           
 int getBuildRequestCount(java.lang.Long configurationId)
           
 java.util.Map<java.lang.Long,java.lang.Integer> getBuildRequestCountAsMap()
           
 java.util.List<BuildRequest> getBuildRequests(java.lang.Long configurationId)
          Get waiting and running build requests.
 java.util.List<BuildRequest> getBuildRequests(java.lang.Long configurationId, java.lang.Long triggerUserId)
           
 Build.Status getBuildStatus(java.lang.Long buildId, java.lang.String nodeAddress)
           
 java.util.List<Build> getPromotions()
           
 java.util.List<RunningStepInfo> getRunningSteps(java.lang.String nodeAddress)
           
 java.util.Map<java.lang.String,java.util.List<java.lang.String>> getWaitReasons(java.lang.Long buildId, java.lang.String stepPath)
           
 java.util.Map<java.lang.String,java.util.List<java.lang.String>> getWaitReasons(java.lang.String requestId, java.lang.String stepPath)
           
 boolean isStarted()
           
 void processImmediately()
           
 RequestResult requestBuild(User requester, boolean scheduled, BuildRequest request)
           
 void scheduleAll()
           
 void scheduleChanged(Configuration configuration)
           
 void shutdown()
           
 void startup()
           
 void stepSkipped(java.lang.Long buildId, StepPath stepPath)
           
 void stepUpdated(java.lang.Long buildId, StepPath stepPath, StepRuntime stepRuntime)
           
 void stopBuild(java.lang.Long buildId)
           
 void terminateIdleBuildAgents()
           
 void updateBuildDescription(java.lang.Long buildId, java.lang.String buildDescription)
           
 
Methods inherited from interface com.pmease.quickbuild.taskschedule.SchedulableTask
execute, getSchedule
 

Field Detail

instance

static final BuildEngine instance
Method Detail

requestBuild

RequestResult requestBuild(User requester,
                           boolean scheduled,
                           BuildRequest request)
Parameters:
requester -
scheduled -
request -

cancelRequest

void cancelRequest(java.lang.String requestId)

cancelRequest

void cancelRequest(java.lang.String initiatingRequestId,
                   java.lang.String requestId)

stopBuild

void stopBuild(java.lang.Long buildId)

cancelAllRequests

void cancelAllRequests()

startup

void startup()

isStarted

boolean isStarted()

shutdown

void shutdown()

getBuildRequests

java.util.List<BuildRequest> getBuildRequests(java.lang.Long configurationId)
Get waiting and running build requests. Most recent request comes at top of the returned list.


getRunningSteps

java.util.List<RunningStepInfo> getRunningSteps(java.lang.String nodeAddress)

getBuildRequests

java.util.List<BuildRequest> getBuildRequests(java.lang.Long configurationId,
                                              java.lang.Long triggerUserId)

getBuildRequestCount

int getBuildRequestCount(java.lang.Long configurationId)

getBuildRequestCountAsMap

java.util.Map<java.lang.Long,java.lang.Integer> getBuildRequestCountAsMap()

scheduleChanged

void scheduleChanged(Configuration configuration)

scheduleAll

void scheduleAll()

getBuildId

java.lang.Long getBuildId(java.lang.String requestId,
                          java.lang.String nodeAddress)

getBuildIdCacheItem

SimpleCacheItem<java.lang.Object> getBuildIdCacheItem(java.lang.String requestId)

getBuildStatus

Build.Status getBuildStatus(java.lang.Long buildId,
                            java.lang.String nodeAddress)

getBuild

Build getBuild(java.lang.Long buildId)
Get running build of specified id. Null if not found.

Parameters:
buildId -
Returns:

configurationRemoved

void configurationRemoved(java.lang.Long configurationId)

getActivityDate

java.util.Date getActivityDate(java.lang.Long configurationId)

allocateResource

ResourceAllocation allocateResource(java.lang.Long buildId,
                                    java.util.Map<java.lang.String,VariableWrapper> vars,
                                    StepPath stepPath)

stepUpdated

void stepUpdated(java.lang.Long buildId,
                 StepPath stepPath,
                 StepRuntime stepRuntime)

stepSkipped

void stepSkipped(java.lang.Long buildId,
                 StepPath stepPath)

getWaitReasons

java.util.Map<java.lang.String,java.util.List<java.lang.String>> getWaitReasons(java.lang.String requestId,
                                                                                java.lang.String stepPath)

getWaitReasons

java.util.Map<java.lang.String,java.util.List<java.lang.String>> getWaitReasons(java.lang.Long buildId,
                                                                                java.lang.String stepPath)

getPromotions

java.util.List<Build> getPromotions()

processImmediately

void processImmediately()

updateBuildDescription

void updateBuildDescription(java.lang.Long buildId,
                            java.lang.String buildDescription)

terminateIdleBuildAgents

void terminateIdleBuildAgents()


Copyright © 2005-2010 PMEase Inc. All Rights Reserved.