Class ParameterFactoryImpl
- java.lang.Object
-
- jetbrains.buildServer.serverSide.parameters.ParameterFactoryImpl
-
- All Implemented Interfaces:
ParameterFactory
public class ParameterFactoryImpl extends Object implements ParameterFactory
- Author:
- Eugene Petrenko (eugene.petrenko@gmail.com) Date: 08.09.11 18:46
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jetbrains.buildServer.serverSide.parameters.ParameterFactory
ParameterFactory.SecuredParameterResolver
-
-
Field Summary
Fields Modifier and Type Field Description static booleanisReadonlyAllowedstatic booleanisSpecValidationEnabledstatic StringOUR_PASSWORD_REPLACEstatic StringTEAMCITY_PARAMETERS_READONLY_ALLOWEDstatic StringTEAMCITY_PARAMETERS_SHOULD_VALIDATE_SPECstatic StringTRANSFORM_PARAMETER_WITH_SCRAMBLED_VALUE_TO_PASSWORD
-
Constructor Summary
Constructors Constructor Description ParameterFactoryImpl(ParameterDescriptionFactory descriptionFactory, ParameterTypeManager parameterTypeManager, EncryptionManager encryptionManager)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ParametercreateOverriddenParameter(Parameter baseParameter, Parameter childParameter)Creates an instance of parameter that overrides a parameter from parentParametercreateParameter(String name, String value, ControlDescription descriptionSpec)ParametercreateParameter(Parameter param, String newValue)ParametercreateParameter(Parameter param, Converter<String,String> mapper)ParametercreateParameterWithNewName(Parameter parameter, String name)Creates a copy of provided parameter with new nameParametercreateSimpleParameter(String name, String value)ParametercreateTypedParameter(String name, String value, String typeSpec)jetbrains.buildServer.serverSide.parameters.ParameterFactoryImpl.RawParameterImpldeserializeDBParameter(String name, String rawValue)Collection<Parameter>deserializeDBParameters(Map<String,String> databaseParameters)Collection<Parameter>deserializeXmlParameters(org.jdom.Element element, UserParametersHolder parametersHolder, ParameterFactory.SecuredParameterResolver securedValues)StringgetRawValue(Parameter parameter)For given parameter returns its raw value.Map<String,String>getRawValues(Collection<Parameter> parameters)Accepts collection of parameters, returns map from parameter name to its raw value.booleanisSecureParameter(ControlDescription cd)static booleanisSecureParameter(ParameterTypeManager parameterTypeManager, ControlDescription cd)<ObjectType>
ObjectTypemerge(ControlDescription baseCD, ObjectType base, ObjectType child, Function<ObjectType,String> toStringFunction, BiFunction<ObjectType,ObjectType,ObjectType> mergingFunction)ParametermergeParameters(Parameter baseParameter, Parameter childParameter)Merges 2 parametersMap<String,String>serializeDBParameters(SerializableParametersCollection col)voidserializeXmlParameters(Parameterized builder, SecureTokensProducer tokensProducer, SerializableParametersCollection col)ParametersetDescription(Parameter parameter, ControlDescription description)static voidsetSpecValidation(boolean isEnabled)ParameterupdateParameter(Parameter oldParameter, Parameter newParameter)
-
-
-
Field Detail
-
OUR_PASSWORD_REPLACE
public static final String OUR_PASSWORD_REPLACE
- See Also:
- Constant Field Values
-
TRANSFORM_PARAMETER_WITH_SCRAMBLED_VALUE_TO_PASSWORD
public static final String TRANSFORM_PARAMETER_WITH_SCRAMBLED_VALUE_TO_PASSWORD
- See Also:
- Constant Field Values
-
TEAMCITY_PARAMETERS_SHOULD_VALIDATE_SPEC
public static final String TEAMCITY_PARAMETERS_SHOULD_VALIDATE_SPEC
- See Also:
- Constant Field Values
-
TEAMCITY_PARAMETERS_READONLY_ALLOWED
public static final String TEAMCITY_PARAMETERS_READONLY_ALLOWED
- See Also:
- Constant Field Values
-
isSpecValidationEnabled
public static boolean isSpecValidationEnabled
-
isReadonlyAllowed
public static boolean isReadonlyAllowed
-
-
Constructor Detail
-
ParameterFactoryImpl
public ParameterFactoryImpl(@NotNull ParameterDescriptionFactory descriptionFactory, @NotNull ParameterTypeManager parameterTypeManager, @NotNull EncryptionManager encryptionManager)
-
-
Method Detail
-
createSimpleParameter
@NotNull public Parameter createSimpleParameter(@NotNull String name, @NotNull String value)
- Specified by:
createSimpleParameterin interfaceParameterFactory
-
createTypedParameter
@NotNull public Parameter createTypedParameter(@NotNull String name, @NotNull String value, @Nullable String typeSpec)
- Specified by:
createTypedParameterin interfaceParameterFactory
-
createParameter
@NotNull public Parameter createParameter(@NotNull String name, @NotNull String value, @Nullable ControlDescription descriptionSpec)
- Specified by:
createParameterin interfaceParameterFactory
-
createParameter
@NotNull public Parameter createParameter(@NotNull Parameter param, @NotNull String newValue)
- Specified by:
createParameterin interfaceParameterFactory
-
createParameter
@NotNull public Parameter createParameter(@NotNull Parameter param, @NotNull Converter<String,String> mapper)
- Specified by:
createParameterin interfaceParameterFactory
-
updateParameter
@NotNull public Parameter updateParameter(@NotNull Parameter oldParameter, @NotNull Parameter newParameter)
- Specified by:
updateParameterin interfaceParameterFactory
-
createParameterWithNewName
@NotNull public Parameter createParameterWithNewName(@NotNull Parameter parameter, @NotNull String name)
Description copied from interface:ParameterFactoryCreates a copy of provided parameter with new name- Specified by:
createParameterWithNewNamein interfaceParameterFactory- Parameters:
parameter- original parametername- new name- Returns:
- copy of parameter with new name
-
setDescription
@NotNull public Parameter setDescription(@NotNull Parameter parameter, @Nullable ControlDescription description)
-
mergeParameters
public Parameter mergeParameters(@Nullable Parameter baseParameter, @NotNull Parameter childParameter)
Description copied from interface:ParameterFactoryMerges 2 parameters- Specified by:
mergeParametersin interfaceParameterFactory- Returns:
- 1. If there is no base Parameter - child Parameter is returned 2. If base Parameter has Const spec - base Parameter is returned 3. If child value is not compliant with base spec - base Parameter is returned 4. A new Parameter instance with base spec and child value is returned otherwise
-
merge
@NotNull public <ObjectType> ObjectType merge(@Nullable ControlDescription baseCD, @Nullable ObjectType base, @NotNull ObjectType child, @NotNull Function<ObjectType,String> toStringFunction, @NotNull BiFunction<ObjectType,ObjectType,ObjectType> mergingFunction)- Specified by:
mergein interfaceParameterFactory
-
createOverriddenParameter
@NotNull public Parameter createOverriddenParameter(@NotNull Parameter baseParameter, @NotNull Parameter childParameter)
Description copied from interface:ParameterFactoryCreates an instance of parameter that overrides a parameter from parent- Specified by:
createOverriddenParameterin interfaceParameterFactory- Parameters:
baseParameter- base parameter to be overriddenchildParameter- child parameter to be used- Returns:
- new instance of parameter
-
serializeXmlParameters
public void serializeXmlParameters(@NotNull Parameterized builder, @NotNull SecureTokensProducer tokensProducer, @NotNull SerializableParametersCollection col)- Specified by:
serializeXmlParametersin interfaceParameterFactory
-
deserializeDBParameters
@NotNull public Collection<Parameter> deserializeDBParameters(@NotNull Map<String,String> databaseParameters)
- Specified by:
deserializeDBParametersin interfaceParameterFactory
-
deserializeDBParameter
@NotNull public jetbrains.buildServer.serverSide.parameters.ParameterFactoryImpl.RawParameterImpl deserializeDBParameter(@NotNull String name, @NotNull String rawValue)- Specified by:
deserializeDBParameterin interfaceParameterFactory
-
serializeDBParameters
@NotNull public Map<String,String> serializeDBParameters(@NotNull SerializableParametersCollection col)
- Specified by:
serializeDBParametersin interfaceParameterFactory
-
getRawValues
@NotNull public Map<String,String> getRawValues(@NotNull Collection<Parameter> parameters)
Description copied from interface:ParameterFactoryAccepts collection of parameters, returns map from parameter name to its raw value. Results are unpredictable if collection of parameters contains two parameters with the same name.- Specified by:
getRawValuesin interfaceParameterFactory- Parameters:
parameters- parameters collection- Returns:
- map from name to parameter raw value
-
getRawValue
@NotNull public String getRawValue(@NotNull Parameter parameter)
Description copied from interface:ParameterFactoryFor given parameter returns its raw value.- Specified by:
getRawValuein interfaceParameterFactory- Parameters:
parameter- parameter- Returns:
- raw value of given parameter
-
deserializeXmlParameters
@NotNull public Collection<Parameter> deserializeXmlParameters(@NotNull org.jdom.Element element, @Nullable UserParametersHolder parametersHolder, @Nullable ParameterFactory.SecuredParameterResolver securedValues)
- Specified by:
deserializeXmlParametersin interfaceParameterFactory
-
isSecureParameter
public boolean isSecureParameter(@Nullable ControlDescription cd)- Specified by:
isSecureParameterin interfaceParameterFactory- Parameters:
cd- parameter specification, if null then this method always returns false- Returns:
- true if parameter specification corresponds to secure parameter
-
isSecureParameter
public static boolean isSecureParameter(@NotNull ParameterTypeManager parameterTypeManager, @Nullable ControlDescription cd)
-
setSpecValidation
public static void setSpecValidation(boolean isEnabled)
-
-