com.atlassian.bamboo.builder
Interface Builder

All Superinterfaces:
BambooPluginModule, BuildConfigurationAwarePlugin, BuilderV2, ConfigurablePlugin, InitablePluginModule, java.io.Serializable
All Known Subinterfaces:
EnvironmentVariablesAwareBuilder, MutableEnvironmentVariablesAwareBuilder, PostConfigurableBuilder
All Known Implementing Classes:
AbstractBuilder, AbstractMavenBuilder, AbstractPhpUnitBuilder, AntBuilder, CustomCommandBuilder, GrailsBuilder, Maven2Builder, MavenBuilder, PhpUnit33XBuilder, PhpUnitBuilder, ScriptBuilder

public interface Builder
extends BuilderV2, ConfigurablePlugin

This interface defines a Builder tool plugin.


Field Summary
static java.lang.String CAPABILITY_BUILDER_PREFIX
           
static java.lang.String CAPABILITY_BUILDER_TYPE
           
 
Method Summary
 java.util.Map<java.lang.String,LabelPathMap> addDefaultLabelPathMaps(java.util.Map<java.lang.String,LabelPathMap> labelPathMaps)
           
 java.util.Map<java.lang.String,java.lang.String> customiseLabelTypeMap(java.util.Map<java.lang.String,java.lang.String> labelTypeMap)
          Allows the builder to add extra label -> builder type key mappings
 java.lang.String getBuildJdk()
          The label of the JDK we're using
 java.lang.String getCompleteKey()
          Returns the full plugin descriptor key
 java.util.Map<java.lang.String,java.lang.String> getFullParams()
          Gets the full params that's used to persist.
 java.lang.String getKey()
          Returns the short simple key for this builder (e.g.
 java.lang.String getLabel()
          Gets the label of the builder
 java.lang.String getName()
          Returns a human readable version of the current Builder type
 java.lang.String getPath(ReadOnlyCapabilitySet capabilitySet)
          The home path of the builder's command line
 java.lang.String getPathHelp()
          Help text for the builder type
 boolean hasTests()
          Does the build have any tests to be included in the build results web pages?
 boolean isLabelPathMapConfigurable()
          Returns true if the Builder can have its LabelPathMap configurable.
 boolean isPathValid(java.lang.String path)
          Returns true if the passed path is valid for this builder.
 void setBuildJdk(java.lang.String buildJdk)
          The label of the JDK we're using
 void setLabel(java.lang.String label)
          Sets the label being used by the builder
 void setParams(FilteredMap params)
          Updates the current builder object with
 ErrorCollection validate(ReadOnlyCapabilitySet capabilities)
          Validate the Builder's current internal settings are still valid
 
Methods inherited from interface com.atlassian.bamboo.v2.build.BuilderV2
executeBuild, hasPassed, populateBuildErrors
 
Methods inherited from interface com.atlassian.bamboo.v2.build.ConfigurablePlugin
customizeBuildRequirements, removeBuildRequirements
 
Methods inherited from interface com.atlassian.bamboo.v2.build.BuildConfigurationAwarePlugin
addDefaultValues, getEditHtml, getViewHtml, prepareConfigObject, validate
 
Methods inherited from interface com.atlassian.bamboo.plugin.InitablePluginModule
init
 

Field Detail

CAPABILITY_BUILDER_TYPE

static final java.lang.String CAPABILITY_BUILDER_TYPE
See Also:
Constant Field Values

CAPABILITY_BUILDER_PREFIX

static final java.lang.String CAPABILITY_BUILDER_PREFIX
See Also:
Constant Field Values
Method Detail

getCompleteKey

@NotNull
java.lang.String getCompleteKey()
Returns the full plugin descriptor key

Returns:

getKey

@NotNull
java.lang.String getKey()
Returns the short simple key for this builder (e.g. mvn, ant). Needs to be unique across the system for each type

Returns:
The simple key of this builder.

getName

@NotNull
java.lang.String getName()
Returns a human readable version of the current Builder type

Returns:

getPathHelp

@NotNull
java.lang.String getPathHelp()
Help text for the builder type

Returns:

validate

@NotNull
ErrorCollection validate(ReadOnlyCapabilitySet capabilities)
Validate the Builder's current internal settings are still valid

Parameters:
capabilities -
Returns:

getFullParams

@NotNull
java.util.Map<java.lang.String,java.lang.String> getFullParams()
Gets the full params that's used to persist.

Returns:
Map key by the full param key (e.g. builder.ant.label). Never null

setParams

void setParams(@NotNull
               FilteredMap params)
Updates the current builder object with

Parameters:
params - - Filtered Map with the prefix builder key stripped out

hasTests

boolean hasTests()
Does the build have any tests to be included in the build results web pages?

Returns:
true if the build should have tests.

getLabel

@NotNull
java.lang.String getLabel()
Gets the label of the builder

Returns:

setLabel

void setLabel(@NotNull
              java.lang.String label)
Sets the label being used by the builder

Parameters:
label -

setBuildJdk

void setBuildJdk(@NotNull
                 java.lang.String buildJdk)
The label of the JDK we're using

Parameters:
buildJdk - The label

getBuildJdk

@Nullable
java.lang.String getBuildJdk()
The label of the JDK we're using

Returns:
The label

getPath

java.lang.String getPath(ReadOnlyCapabilitySet capabilitySet)
The home path of the builder's command line

Parameters:
capabilitySet -
Returns:
The path

isLabelPathMapConfigurable

boolean isLabelPathMapConfigurable()
Returns true if the Builder can have its LabelPathMap configurable. If it can't be, it won't be displayed on the ConfigureBuilder page.

Returns:
true if LabelPathMap is configurable

customiseLabelTypeMap

java.util.Map<java.lang.String,java.lang.String> customiseLabelTypeMap(java.util.Map<java.lang.String,java.lang.String> labelTypeMap)
Allows the builder to add extra label -> builder type key mappings

Parameters:
labelTypeMap - may be null

addDefaultLabelPathMaps

java.util.Map<java.lang.String,LabelPathMap> addDefaultLabelPathMaps(java.util.Map<java.lang.String,LabelPathMap> labelPathMaps)
Parameters:
labelPathMaps -
Returns:

isPathValid

boolean isPathValid(java.lang.String path)
Returns true if the passed path is valid for this builder. The definition of a path depends on the builder itself. It could be the path to the executable (e.g script builder) or just the home directory (e.g. Ant builder)

Parameters:
path -
Returns:
true if valid


Copyright © 2010 Atlassian. All Rights Reserved.