com.atlassian.bamboo.build.strategy
Class AbstractBuildStrategy

java.lang.Object
  extended by com.atlassian.bamboo.build.strategy.AbstractBuildStrategy
All Implemented Interfaces:
BuildStrategy, ConvertibleFromConfig
Direct Known Subclasses:
AbstractPollingBuildStrategy, InitialBootstapBuildStrategy, ManualBuild, ManualBuildStrategy, QuartzStrategyImpl, TriggeredBuildStrategy

public abstract class AbstractBuildStrategy
extends Object
implements BuildStrategy

Common build strategy behaviour


Field Summary
protected  Collection changeList
           
 
Constructor Summary
AbstractBuildStrategy()
           
 
Method Summary
 void addDefaultValues(BuildConfiguration buildConfiguration)
           
 String getBuildMessage()
          The strategies build message
 Collection getChangeList()
          What are the changes to include in the build
 String getDescription()
           
 void init(Build build)
          Default to do nothing
protected  void log(Build build, String message)
           
protected  void populateChangeList(Build build)
           
 void populateFromConfig(HierarchicalConfiguration config)
          Update the current object with data in the FieldValueItemHolder
 void setBuildMessage(String buildMessage)
          Let the subclass strategies set their own custom messages
 HierarchicalConfiguration toConfiguration()
          Generate a FieldValueItemHolder from the current state of the object
 ErrorCollection validate(BuildConfiguration buildConfiguration)
          Takes in a BuildConfiguration and returns any errors possible
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.bamboo.build.strategy.BuildStrategy
getKey, getName, requiresBuild, requiresPreBuildClean
 

Field Detail

changeList

protected Collection changeList
Constructor Detail

AbstractBuildStrategy

public AbstractBuildStrategy()
Method Detail

init

public void init(Build build)
Default to do nothing

Specified by:
init in interface BuildStrategy

addDefaultValues

public void addDefaultValues(BuildConfiguration buildConfiguration)
Specified by:
addDefaultValues in interface BuildStrategy

getDescription

public String getDescription()
Specified by:
getDescription in interface BuildStrategy

toConfiguration

public HierarchicalConfiguration toConfiguration()
Description copied from interface: ConvertibleFromConfig
Generate a FieldValueItemHolder from the current state of the object

Specified by:
toConfiguration in interface ConvertibleFromConfig
Returns:
Always returns an FieldValueItemHolder. Never null

populateFromConfig

public void populateFromConfig(HierarchicalConfiguration config)
Description copied from interface: ConvertibleFromConfig
Update the current object with data in the FieldValueItemHolder

Specified by:
populateFromConfig in interface ConvertibleFromConfig

validate

public ErrorCollection validate(BuildConfiguration buildConfiguration)
Description copied from interface: BuildStrategy
Takes in a BuildConfiguration and returns any errors possible

Specified by:
validate in interface BuildStrategy
Parameters:
buildConfiguration - not null
Returns:
ErrorCollection. must not be null

getBuildMessage

public String getBuildMessage()
The strategies build message

Specified by:
getBuildMessage in interface BuildStrategy
Returns:
The message

setBuildMessage

public void setBuildMessage(String buildMessage)
Let the subclass strategies set their own custom messages

Specified by:
setBuildMessage in interface BuildStrategy
Parameters:
buildMessage - the message

populateChangeList

protected void populateChangeList(Build build)
                           throws RepositoryException
Throws:
RepositoryException

getChangeList

public Collection getChangeList()
Description copied from interface: BuildStrategy
What are the changes to include in the build

Specified by:
getChangeList in interface BuildStrategy
Returns:
the changes (if any)

log

protected void log(Build build,
                   String message)


Copyright © 2006 Atlassian Software Systems. All Rights Reserved.