Class BaseParameter<T>
- java.lang.Object
-
- com.atlassian.confluence.macro.params.BaseParameter<T>
-
- All Implemented Interfaces:
Parameter<T>
- Direct Known Subclasses:
BooleanQueryFactoryParameter,MaxResultsParameter,MultiValueParameter,SearchSortParameter
public abstract class BaseParameter<T> extends Object implements Parameter<T>
A base implementation ofParameter, providing support for multiple default parameter names, and a default value if no parameter is specified.- Since:
- 2.9
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanshouldValidate
-
Constructor Summary
Constructors Modifier Constructor Description protectedBaseParameter(String[] names, String defaultValue)protectedBaseParameter(String name, String defaultValue)protectedBaseParameter(List<String> names, String defaultValue)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddParameterAlias(String name)Deprecated.since 3.1: this class is not thread safe and should not be mutatedprotected abstract TfindObject(String paramValue, MacroExecutionContext ctx)Responsible for converting a macro parameter string value to its proper object representation (say "1" to new Integer(1))TfindValue(MacroExecutionContext ctx)Attempts to find the value from the specifiedMacroExecutionContextobject.StringgetDefaultValue()Returns the default value for this parameter if no match is found in the context.protected StringgetParameter(Map<String,String> params, List names, String defaultValue)Returns the literal value of the parameter in the specifiedMap, using the specifiedListfor names and aliases and the specified default value.StringgetParameterValue(Map<String,String> params)Returns the literal value of the parameter, or the default value if none is present.voidsetDefaultValue(String defaultValue)Deprecated.since 3.1: this class is not thread safe and should not be mutatedvoidsetParameterNames(String[] names)Deprecated.since 3.1: this class is not thread safe and should not be mutatedvoidsetValidate(boolean shouldValidate)Sets whether this parameter should attempt to validate its values.
-
-
-
Method Detail
-
addParameterAlias
@Deprecated public final void addParameterAlias(String name)
Deprecated.since 3.1: this class is not thread safe and should not be mutatedAdds the specified String as an alias to the default name of this parameter.- Parameters:
name- another name for the parameter recognized by this object
-
setParameterNames
@Deprecated public final void setParameterNames(String[] names)
Deprecated.since 3.1: this class is not thread safe and should not be mutatedSets the specified String array as the names by which to recognize this parameter.- Parameters:
names- the names of the parameter to recognize
-
setDefaultValue
@Deprecated public final void setDefaultValue(String defaultValue)
Deprecated.since 3.1: this class is not thread safe and should not be mutatedSets the default value to be returned for this parameter if no match is found in the context.- Parameters:
defaultValue- the default value for this parameter
-
getDefaultValue
public final String getDefaultValue()
Returns the default value for this parameter if no match is found in the context.- Returns:
- the default value for this parameter
-
getParameter
protected final String getParameter(Map<String,String> params, List names, String defaultValue)
Returns the literal value of the parameter in the specifiedMap, using the specifiedListfor names and aliases and the specified default value.- Parameters:
params- theMapof parameters to searchnames- the parameter names to look fordefaultValue- the default value to return if no match is found- Returns:
- the parameter value, or the default if none is found
-
getParameterValue
public final String getParameterValue(Map<String,String> params)
Returns the literal value of the parameter, or the default value if none is present.- Parameters:
params- theMapof parameters to search- Returns:
- the literal value of the parameter
-
setValidate
public final void setValidate(boolean shouldValidate)
Description copied from interface:ParameterSets whether this parameter should attempt to validate its values.- Specified by:
setValidatein interfaceParameter<T>- Parameters:
shouldValidate- true if this parameter should attempt to validate
-
findValue
public final T findValue(MacroExecutionContext ctx) throws ParameterException
Description copied from interface:ParameterAttempts to find the value from the specifiedMacroExecutionContextobject.- Specified by:
findValuein interfaceParameter<T>- Parameters:
ctx- The execution context for the macro.- Returns:
- The parameter value.
- Throws:
ParameterException- if there was a problem while processing the parameter.
-
findObject
protected abstract T findObject(String paramValue, MacroExecutionContext ctx) throws ParameterException
Responsible for converting a macro parameter string value to its proper object representation (say "1" to new Integer(1))- Throws:
ParameterException
-
-