com.atlassian.bamboo.plan.cache
Class ImmutableJobImpl

java.lang.Object
  extended by com.atlassian.bamboo.plan.cache.AbstractImmutablePlan
      extended by com.atlassian.bamboo.plan.cache.ImmutableJobImpl
All Implemented Interfaces:
BambooIdProvider, ImmutableBuildable, ImmutableJob, ImmutablePlan, PlanIdentifier, PlanKeyProvider, DescriptionProvider, NameProvider

public class ImmutableJobImpl
extends AbstractImmutablePlan
implements ImmutableJob


Field Summary
 
Fields inherited from class com.atlassian.bamboo.plan.cache.AbstractImmutablePlan
averageBuildDuration, resultsSummaryManager
 
Fields inherited from interface com.atlassian.bamboo.plan.cache.ImmutablePlan
MAX_NUMBER_LOG_ENTRIES, MAX_PREVIOUS_BUILD_FOR_AVE, STATUS_CURRENTLY_BUILDING, STATUS_FAIL, STATUS_NO_BUILDS, STATUS_NOT_RUN, STATUS_SUCCESS
 
Fields inherited from interface com.atlassian.bamboo.plan.PlanIdentifier
getPlanKeyFunction
 
Fields inherited from interface com.atlassian.bamboo.plan.PlanKeyProvider
getPlanKey
 
Constructor Summary
ImmutableJobImpl(ImmutableChain parent, ImmutableChainStage stage, Job job, BuildLoggerManager buildLoggerManager, LabelManager labelManager, VariableDefinitionManager variableDefinitionManager, TaskManager taskManager, ResultsSummaryManager resultsSummaryManager, BuildDefinition buildDefinition, CachedPlanManager cachedPlanManager, ImmutableArtifactManager immutableArtifactManager)
           
 
Method Summary
 com.google.common.collect.ImmutableList<ImmutableArtifactDefinition> getArtifactDefinitions()
           
 com.google.common.collect.ImmutableList<ImmutableArtifactSubscription> getArtifactSubscriptions()
           
 BuildDefinition getBuildDefinition()
          Returns the BuildDefinition that backs this Plan
 String getCurrentStatus()
          Retuns a string key as to what the status is.
 RequirementSet getEffectiveRequirementSet()
          Return effective value of RequirementSet, that is value that is considered when checking which agents and elastic images can build this Buildable.
 ResultsSummary getLatestResultsSummary()
          Get the latest finished result
 ImmutableJob getMaster()
          Return the master plan if one exists.
 ImmutableChain getParent()
           
 RequirementSet getRequirementSet()
           
 ImmutableChainStage getStage()
          The ChainStage that this Job is a member of
 boolean isActive()
          Is the plan queued or building?
 boolean isBusy()
          Is the Plan "busy".
 boolean isExecuting()
          Is the build currently being executed?
 
Methods inherited from class com.atlassian.bamboo.plan.cache.AbstractImmutablePlan
compareTo, equals, exceptionOnModification, getAverageBuildDuration, getBuildKey, getBuildLogger, getBuildName, getDescription, getEffectiveVariables, getFirstBuildNumber, getId, getKey, getLabellings, getLabelNames, getLastBuildNumber, getMasterId, getName, getNextBuildNumber, getPlanKey, getPlanType, getProject, getRelatedLabellings, getType, getVariables, hashCode, hasMaster, isMarkedForDeletion, isSuspendedFromBuilding
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.bamboo.plan.cache.ImmutablePlan
getAverageBuildDuration, getBuildLogger, getEffectiveVariables, getFirstBuildNumber, getKey, getLabelNames, getLastBuildNumber, getNextBuildNumber, getProject, getType, getVariables, hasMaster, isMarkedForDeletion
 
Methods inherited from interface com.atlassian.bamboo.plan.PlanIdentifier
getBuildKey, getBuildName, getId, getMasterId, getName, getPlanKey, getPlanType, isSuspendedFromBuilding
 
Methods inherited from interface com.atlassian.bamboo.utils.DescriptionProvider
getDescription
 

Constructor Detail

ImmutableJobImpl

public ImmutableJobImpl(ImmutableChain parent,
                        ImmutableChainStage stage,
                        Job job,
                        BuildLoggerManager buildLoggerManager,
                        LabelManager labelManager,
                        VariableDefinitionManager variableDefinitionManager,
                        TaskManager taskManager,
                        ResultsSummaryManager resultsSummaryManager,
                        BuildDefinition buildDefinition,
                        CachedPlanManager cachedPlanManager,
                        ImmutableArtifactManager immutableArtifactManager)
Method Detail

getParent

@NotNull
public ImmutableChain getParent()
Specified by:
getParent in interface ImmutableJob

getStage

@NotNull
public ImmutableChainStage getStage()
Description copied from interface: ImmutableJob
The ChainStage that this Job is a member of

Specified by:
getStage in interface ImmutableJob
Returns:
stage

getRequirementSet

@NotNull
public RequirementSet getRequirementSet()
Specified by:
getRequirementSet in interface ImmutableBuildable
Specified by:
getRequirementSet in interface ImmutableJob

getEffectiveRequirementSet

@NotNull
public RequirementSet getEffectiveRequirementSet()
Description copied from interface: ImmutableJob
Return effective value of RequirementSet, that is value that is considered when checking which agents and elastic images can build this Buildable.

Specified by:
getEffectiveRequirementSet in interface ImmutableBuildable
Specified by:
getEffectiveRequirementSet in interface ImmutableJob
Returns:
the same as ImmutableJob.getRequirementSet() if ImmutablePlan.hasMaster() is false, getMaster().getRequirementSet() otherwise.

getMaster

public ImmutableJob getMaster()
Description copied from interface: ImmutablePlan
Return the master plan if one exists. The master is the plan which this one is derived from. Configuration is pulled from the master if one exists.

Specified by:
getMaster in interface ImmutableJob
Specified by:
getMaster in interface ImmutablePlan
Returns:
the master Plan if one exists.

isBusy

public boolean isBusy()
Description copied from interface: ImmutablePlan
Is the Plan "busy". Busy is defined by the plan having a lock held on it. This is done during change detection, dependency listner and the like

Specified by:
isBusy in interface ImmutablePlan
Returns:
busy

isActive

public boolean isActive()
Description copied from interface: ImmutablePlan
Is the plan queued or building?

Specified by:
isActive in interface ImmutablePlan
Returns:

getCurrentStatus

@NotNull
public String getCurrentStatus()
Description copied from interface: ImmutablePlan
Retuns a string key as to what the status is. Can be "success", "failure", "current", "none" or "notRun". Mainly used for UI purposes.

Specified by:
getCurrentStatus in interface ImmutablePlan
Overrides:
getCurrentStatus in class AbstractImmutablePlan
Returns:

isExecuting

public boolean isExecuting()
Description copied from interface: ImmutablePlan
Is the build currently being executed?

Specified by:
isExecuting in interface ImmutablePlan
Returns:
true if build is being executed

getLatestResultsSummary

public ResultsSummary getLatestResultsSummary()
Description copied from interface: ImmutablePlan
Get the latest finished result

Specified by:
getLatestResultsSummary in interface ImmutablePlan
Returns:
The summary info for the last completed build. Returns null if there are no build results for this plan

getArtifactDefinitions

@NotNull
public com.google.common.collect.ImmutableList<ImmutableArtifactDefinition> getArtifactDefinitions()
Specified by:
getArtifactDefinitions in interface ImmutableJob
Returns:
list of produced artifacts

getArtifactSubscriptions

@NotNull
public com.google.common.collect.ImmutableList<ImmutableArtifactSubscription> getArtifactSubscriptions()
Specified by:
getArtifactSubscriptions in interface ImmutableJob
Returns:
list of artifact subscriptions

getBuildDefinition

@NotNull
public BuildDefinition getBuildDefinition()
Description copied from interface: ImmutablePlan
Returns the BuildDefinition that backs this Plan

Specified by:
getBuildDefinition in interface ImmutablePlan
Overrides:
getBuildDefinition in class AbstractImmutablePlan
Returns:
BuildDefinition object.


Copyright © 2015 Atlassian Software Systems Pty Ltd. All rights reserved.