Package com.atlassian.bamboo.process
Class EnvironmentVariableAccessorImpl
- java.lang.Object
-
- com.atlassian.bamboo.process.EnvironmentVariableAccessorImpl
-
- All Implemented Interfaces:
EnvironmentVariableAccessor
public class EnvironmentVariableAccessorImpl extends Object implements EnvironmentVariableAccessor
-
-
Field Summary
-
Fields inherited from interface com.atlassian.bamboo.process.EnvironmentVariableAccessor
MAX_SAFE_ENVIRONMENT_LENGTH, MAX_SAFE_INDIVIDUAL_VARIABLE_LENGTH
-
-
Constructor Summary
Constructors Constructor Description EnvironmentVariableAccessorImpl(CapabilityContext capabilityContext, CustomVariableContext customVariableContext)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static @NotNull StringforceLegalIdentifier(@NotNull String key)@NotNull Map<String,String>getEnvironment()@NotNull Map<String,String>getEnvironment(@NotNull CommonTaskContext taskContext)UseTaskContextas a source of environment settings.@NotNull List<String>getPaths(@NotNull CommonTaskContext taskContext)UseTaskContextas a source of additional PATH settings.@NotNull StringjoinEnvironmentVariables(@NotNull Iterable<Map.Entry<String,String>> environmentVariables)Concatenate environment variables into string.@NotNull StringjoinEnvironmentVariables(@NotNull Map<String,String> environmentVariables)Concatenate environment variables into string.@NotNull Map<String,String>splitEnvironmentAssignments(@NotNull String environmentAssignments)Splits "Environment settings" string into array of separate strings.@NotNull Map<String,String>splitEnvironmentAssignments(@NotNull String environmentAssignments, boolean processBackslashes)Splits "Environment settings" string into array of separate strings.voidvalidateEnvironmentVariables(@NotNull Iterable<Map.Entry<String,String>> environmentVariables)Perform basic validation of environment settings before passing it to process-utilsvoidvalidateEnvironmentVariables(@NotNull Map<String,String> environmentVariables)Perform basic validation of environment settings before passing it to process-utils
-
-
-
Constructor Detail
-
EnvironmentVariableAccessorImpl
public EnvironmentVariableAccessorImpl(CapabilityContext capabilityContext, CustomVariableContext customVariableContext)
-
-
Method Detail
-
getEnvironment
@NotNull public @NotNull Map<String,String> getEnvironment()
- Specified by:
getEnvironmentin interfaceEnvironmentVariableAccessor
-
getEnvironment
@NotNull public @NotNull Map<String,String> getEnvironment(@NotNull @NotNull CommonTaskContext taskContext)
Description copied from interface:EnvironmentVariableAccessorUseTaskContextas a source of environment settings. The following variables will be returned - variables for variable definitions from taskContext - JAVA_HOME (if defined in task configuration and appropriate capability exists)- Specified by:
getEnvironmentin interfaceEnvironmentVariableAccessor- Parameters:
taskContext-TaskContextobject- Returns:
- Key-value map
-
getPaths
@NotNull public @NotNull List<String> getPaths(@NotNull @NotNull CommonTaskContext taskContext)
Description copied from interface:EnvironmentVariableAccessorUseTaskContextas a source of additional PATH settings. The following values might be returned - $JAVA_HOME/bin (if defined in task configuration and appropriate capability exists)- Specified by:
getPathsin interfaceEnvironmentVariableAccessor- Parameters:
taskContext-TaskContextobject- Returns:
- List of paths (which will be probably added to PATH by caller
-
joinEnvironmentVariables
@NotNull public @NotNull String joinEnvironmentVariables(@NotNull @NotNull Map<String,String> environmentVariables)
Description copied from interface:EnvironmentVariableAccessorConcatenate environment variables into string.- Specified by:
joinEnvironmentVariablesin interfaceEnvironmentVariableAccessor- Parameters:
environmentVariables- Map of key-value pairs to be concatenated- Returns:
- concatenated environment variables in form "KEY1=VALUE1 KEY2=VALUE2 ..."
-
joinEnvironmentVariables
@NotNull public @NotNull String joinEnvironmentVariables(@NotNull @NotNull Iterable<Map.Entry<String,String>> environmentVariables)
Description copied from interface:EnvironmentVariableAccessorConcatenate environment variables into string.- Specified by:
joinEnvironmentVariablesin interfaceEnvironmentVariableAccessor- Parameters:
environmentVariables- Map.Entry iterable of key-value pairs to be concatenated- Returns:
- concatenated environment variables in form "KEY1=VALUE1 KEY2=VALUE2 ..."
-
splitEnvironmentAssignments
@NotNull public @NotNull Map<String,String> splitEnvironmentAssignments(@NotNull @NotNull String environmentAssignments, boolean processBackslashes)
Description copied from interface:EnvironmentVariableAccessorSplits "Environment settings" string into array of separate strings. Quoting is taken into consideration. An environment setting is defined as a sequence of characters [noquote]+([quote][noquote]+[quote])? or [quote][noquote][quote]- Specified by:
splitEnvironmentAssignmentsin interfaceEnvironmentVariableAccessor- Parameters:
environmentAssignments- the string containing KEY=VALUE assignments separated with white charactersprocessBackslashes- whether to treat a backslash as an ordinary or quoting character- Returns:
- Map of separated environment settings.
-
splitEnvironmentAssignments
@NotNull public @NotNull Map<String,String> splitEnvironmentAssignments(@NotNull @NotNull String environmentAssignments)
Description copied from interface:EnvironmentVariableAccessorSplits "Environment settings" string into array of separate strings. Quoting using single and double quotes, but not backslashes is taken into consideration. An environment setting is defined as a sequence of characters. [noquote]+([quote][noquote]+[quote])? or [quote][noquote][quote]- Specified by:
splitEnvironmentAssignmentsin interfaceEnvironmentVariableAccessor- Parameters:
environmentAssignments- string containing KEY=VALUE assignments separated with white characters- Returns:
- Map of separated environment settings.
-
validateEnvironmentVariables
public void validateEnvironmentVariables(@NotNull @NotNull Map<String,String> environmentVariables)Description copied from interface:EnvironmentVariableAccessorPerform basic validation of environment settings before passing it to process-utils- Specified by:
validateEnvironmentVariablesin interfaceEnvironmentVariableAccessor- Parameters:
environmentVariables- Map.Entry iterable of key-value pairs to be concatenated
-
validateEnvironmentVariables
public void validateEnvironmentVariables(@NotNull @NotNull Iterable<Map.Entry<String,String>> environmentVariables)Description copied from interface:EnvironmentVariableAccessorPerform basic validation of environment settings before passing it to process-utils- Specified by:
validateEnvironmentVariablesin interfaceEnvironmentVariableAccessor- Parameters:
environmentVariables- Map.Entry iterable of key-value pairs to be concatenated
-
-