Class CapabilitySetManagerImpl
- java.lang.Object
-
- com.atlassian.bamboo.v2.build.agent.capability.CapabilitySetManagerImpl
-
- All Implemented Interfaces:
CapabilitySetManager,RemotedCapabilitySetManager
public class CapabilitySetManagerImpl extends Object implements CapabilitySetManager
-
-
Constructor Summary
Constructors Constructor Description CapabilitySetManagerImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @NotNull CapabilitySetcreateAgentCapabilitySet(@NotNull LocalAgentDefinition pipelineDefinition)Create an agent scope capability set for local agents@NotNull CapabilitySetcreateAgentCapabilitySet(@NotNull RemoteAgentDefinition pipelineDefinition)Create an agent scope capability set for remote agents@NotNull List<String>findUniqueCapabilityKeys()Finds all the distinct capability keys@Nullable ReadOnlyCapabilitySetgetCombinedCapabilitySet(long agentId)Gets theReadOnlyCapabilitySetfor the agent.@NotNull ReadOnlyCapabilitySetgetCombinedCapabilitySet(@NotNull CapabilitySet agentCapabilitySet)Gets a combined "effective" capabilitySet given an agent's capabilitySet.ReadOnlyCapabilitySetgetCombinedCapabilitySet(@NotNull CapabilitySet agentCapabilitySet, @Nullable CapabilitySet sharedCapabilitySet)Gets a combined "effective" capabilitySet given an agent's capability set and a shared capability set The agent capabilitySet will override capabilities in theCapabilityScope.SHAREDcapabilities if there's a precise key match.@Nullable ElasticImageConfigurationgetElasticImage(@NotNull CapabilitySet capabilitySet)@Nullable PipelineDefinitiongetPipelineDefinition(@NotNull CapabilitySet capabilitySet)@Nullable CapabilitySetgetSharedCapabilitySet(@NotNull CapabilitySet agentCapabilitySet)Gets the shared capabilities depending on agentCapability type.@Nullable CapabilitySetgetSharedLocalCapabilitySet()Gets the locally shared capabilitiesCapabilitySetgetSharedRemoteCapabilitySet()Gets the remotely shared capabilities@NotNull Collection<Capability>getSystemCapabilities(@NotNull String type)Collection ofCapabilitywhich have keys prefixed with system.@NotNull Collection<Capability>getSystemCapabilitiesByKey(@NotNull String key)Collection ofCapabilitywhich have the specified key@NotNull Collection<String>getSystemCapabilityKeys(@NotNull String type, boolean isElasticEnabled)Returns a list of Capability Keys that match the given typevoidsaveCapabilitySet(@NotNull CapabilitySet capabilitySet)Saves a capability set
-
-
-
Method Detail
-
getSharedLocalCapabilitySet
@Nullable public @Nullable CapabilitySet getSharedLocalCapabilitySet()
Description copied from interface:RemotedCapabilitySetManagerGets the locally shared capabilities- Specified by:
getSharedLocalCapabilitySetin interfaceRemotedCapabilitySetManager- Returns:
CapabilitySet
-
getSharedRemoteCapabilitySet
public CapabilitySet getSharedRemoteCapabilitySet()
Description copied from interface:CapabilitySetManagerGets the remotely shared capabilities- Specified by:
getSharedRemoteCapabilitySetin interfaceCapabilitySetManager- Returns:
CapabilitySet
-
getSharedCapabilitySet
@Nullable public @Nullable CapabilitySet getSharedCapabilitySet(@NotNull @NotNull CapabilitySet agentCapabilitySet)
Description copied from interface:CapabilitySetManagerGets the shared capabilities depending on agentCapability type.- Specified by:
getSharedCapabilitySetin interfaceCapabilitySetManager- Returns:
- shared capability set, null if neither Local nor Remote capability set passed as parameter
-
getPipelineDefinition
@Nullable public @Nullable PipelineDefinition getPipelineDefinition(@NotNull @NotNull CapabilitySet capabilitySet)
- Specified by:
getPipelineDefinitionin interfaceCapabilitySetManager
-
getElasticImage
@Nullable public @Nullable ElasticImageConfiguration getElasticImage(@NotNull @NotNull CapabilitySet capabilitySet)
- Specified by:
getElasticImagein interfaceCapabilitySetManager
-
getCombinedCapabilitySet
@NotNull public @NotNull ReadOnlyCapabilitySet getCombinedCapabilitySet(@NotNull @NotNull CapabilitySet agentCapabilitySet)
Description copied from interface:CapabilitySetManagerGets a combined "effective" capabilitySet given an agent's capabilitySet. Will retrieve the shared capabilitySet for the agent based on theCapabilityScope. The agent capabilitySet will override capabilities in theCapabilityScope.SHAREDcapabilities if there's a precise key match.- Specified by:
getCombinedCapabilitySetin interfaceCapabilitySetManager- Returns:
-
getCombinedCapabilitySet
public ReadOnlyCapabilitySet getCombinedCapabilitySet(@NotNull @NotNull CapabilitySet agentCapabilitySet, @Nullable @Nullable CapabilitySet sharedCapabilitySet)
Description copied from interface:CapabilitySetManagerGets a combined "effective" capabilitySet given an agent's capability set and a shared capability set The agent capabilitySet will override capabilities in theCapabilityScope.SHAREDcapabilities if there's a precise key match.- Specified by:
getCombinedCapabilitySetin interfaceCapabilitySetManager
-
getCombinedCapabilitySet
@Nullable public @Nullable ReadOnlyCapabilitySet getCombinedCapabilitySet(long agentId)
Description copied from interface:RemotedCapabilitySetManagerGets theReadOnlyCapabilitySetfor the agent.- Specified by:
getCombinedCapabilitySetin interfaceRemotedCapabilitySetManager- Returns:
-
createAgentCapabilitySet
@NotNull public @NotNull CapabilitySet createAgentCapabilitySet(@NotNull @NotNull LocalAgentDefinition pipelineDefinition)
Description copied from interface:CapabilitySetManagerCreate an agent scope capability set for local agents- Specified by:
createAgentCapabilitySetin interfaceCapabilitySetManager- Returns:
-
createAgentCapabilitySet
@NotNull public @NotNull CapabilitySet createAgentCapabilitySet(@NotNull @NotNull RemoteAgentDefinition pipelineDefinition)
Description copied from interface:CapabilitySetManagerCreate an agent scope capability set for remote agents- Specified by:
createAgentCapabilitySetin interfaceCapabilitySetManager- Returns:
-
saveCapabilitySet
public void saveCapabilitySet(@NotNull @NotNull CapabilitySet capabilitySet)Description copied from interface:CapabilitySetManagerSaves a capability set- Specified by:
saveCapabilitySetin interfaceCapabilitySetManager
-
getSystemCapabilityKeys
@NotNull public @NotNull Collection<String> getSystemCapabilityKeys(@NotNull @NotNull String type, boolean isElasticEnabled)
Description copied from interface:CapabilitySetManagerReturns a list of Capability Keys that match the given type- Specified by:
getSystemCapabilityKeysin interfaceCapabilitySetManager- Parameters:
type- eg "builder" or "jdk"- Returns:
- list of capability keys eg. "system.builder.mvn3.Maven 3"
-
getSystemCapabilities
@NotNull public @NotNull Collection<Capability> getSystemCapabilities(@NotNull @NotNull String type)
Description copied from interface:CapabilitySetManagerCollection ofCapabilitywhich have keys prefixed with system.{type} Used to identify Bamboo system capabilities for Builders / JDKs.- Specified by:
getSystemCapabilitiesin interfaceCapabilitySetManager- Returns:
-
getSystemCapabilitiesByKey
@NotNull public @NotNull Collection<Capability> getSystemCapabilitiesByKey(@NotNull @NotNull String key)
Description copied from interface:CapabilitySetManagerCollection ofCapabilitywhich have the specified key- Specified by:
getSystemCapabilitiesByKeyin interfaceCapabilitySetManager- Returns:
-
findUniqueCapabilityKeys
@NotNull public @NotNull List<String> findUniqueCapabilityKeys()
Description copied from interface:CapabilitySetManagerFinds all the distinct capability keys- Specified by:
findUniqueCapabilityKeysin interfaceCapabilitySetManager- Returns:
-
-