Class ListOfValuesConstraint
java.lang.Object
org.alfresco.repo.dictionary.constraint.AbstractConstraint
org.alfresco.repo.dictionary.constraint.ListOfValuesConstraint
- All Implemented Interfaces:
Constraint
Constraint implementation that ensures the value is one of a constrained
list of values. By default, this constraint is case-sensitive.
- Author:
- Derek Hulley
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
static final String
protected boolean
static final String
protected boolean
static final String
Fields inherited from class org.alfresco.repo.dictionary.constraint.AbstractConstraint
ERR_EVALUATE_EXCEPTION, ERR_PROP_NOT_SET
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
evaluateSingleValue
(Object value) Support for evaluation of properties.Get the allowed values.getDisplayLabel
(String constraintAllowableValue, MessageLookup messageLookup) Get the display label for the specified allowable value in this constraint.Returns the parameters passed to the instance of the constraint.Get the allowed values.getType()
Returns the 'type' of the constraint, this is the identifier given to constraint in the configuration.void
Initializes the constraint with appropriate values, which will depend on the implementation itself.boolean
boolean
isSorted()
Indicates whether the list of values are sorted or not.void
setAllowedValues
(List<String> allowedValues) Set the values that are allowed by the constraint.void
setCaseSensitive
(boolean caseSensitive) Set the handling of case checking.void
setSorted
(boolean sorted) Set whether the values are ordered or not.toString()
Methods inherited from class org.alfresco.repo.dictionary.constraint.AbstractConstraint
checkPropertyNotNull, evaluate, evaluateCollection, getShortName, getTitle, set_shortName, setRegistry, setShortName, setTitle
-
Field Details
-
CONSTRAINT_TYPE
- See Also:
-
CASE_SENSITIVE_PARAM
- See Also:
-
ALLOWED_VALUES_PARAM
- See Also:
-
SORTED_PARAM
- See Also:
-
caseSensitive
protected boolean caseSensitive -
sorted
protected boolean sorted
-
-
Constructor Details
-
ListOfValuesConstraint
public ListOfValuesConstraint()
-
-
Method Details
-
getType
Returns the 'type' of the constraint, this is the identifier given to constraint in the configuration.- Specified by:
getType
in interfaceConstraint
- Overrides:
getType
in classAbstractConstraint
- Returns:
- The type
-
toString
-
getAllowedValues
Get the allowed values. Note that these are String instances, but may represent non-String values. It is up to the caller to distinguish. Sorts list if appropriate.- Returns:
- Returns the values allowed
-
getRawAllowedValues
Get the allowed values. Note that these are String instances, but may represent non-String values. It is up to the caller to distinguish.- Returns:
- Returns the values allowed
-
getDisplayLabel
Get the display label for the specified allowable value in this constraint. A key is constructed as follows:"listconstraint." + constraintName + "." + constraintAllowableValue. e.g. listconstraint.test_listConstraintOne.VALUE_ONE.
This key is then used to look up a properties bundle for the localised display label. Spaces are allowed in the keys, but they should be escaped in the properties file as follows:listconstraint.test_listConstraintOne.VALUE\ WITH\ SPACES=Display label
- Parameters:
constraintAllowableValue
- StringmessageLookup
- MessageLookup- Returns:
- the localised display label for the specified constraint value in the current locale.
If no localisation is defined, it will return the allowed value itself.
If the specified allowable value is not in the model, returns
null
. - Since:
- 4.0
- See Also:
-
I18NUtil.getLocale()
-
setAllowedValues
Set the values that are allowed by the constraint.- Parameters:
allowedValues
- a list of allowed values
-
isCaseSensitive
public boolean isCaseSensitive()- Returns:
- Returns true if this constraint is case-sensitive (default)
-
setCaseSensitive
public void setCaseSensitive(boolean caseSensitive) Set the handling of case checking.- Parameters:
caseSensitive
- true if the constraint is case-sensitive (default), or false for case-insensitive.
-
isSorted
public boolean isSorted()Indicates whether the list of values are sorted or not.- Returns:
- true if sorted, false otherwise
-
setSorted
public void setSorted(boolean sorted) Set whether the values are ordered or not.- Parameters:
sorted
- true if sorted, false otherwise
-
initialize
public void initialize()Description copied from class:AbstractConstraint
Initializes the constraint with appropriate values, which will depend on the implementation itself. This method can be implemented as a once-off, i.e. reinitialization does not have to be supported.Registers the constraint with the registry, if present. Call this method if you want the constraint to be auto-registered.
- Specified by:
initialize
in interfaceConstraint
- Overrides:
initialize
in classAbstractConstraint
- See Also:
-
getParameters
Description copied from interface:Constraint
Returns the parameters passed to the instance of the constraint.- Specified by:
getParameters
in interfaceConstraint
- Overrides:
getParameters
in classAbstractConstraint
- Returns:
- Map of parameters or an empty Map if none exist
- See Also:
-
evaluateSingleValue
Description copied from class:AbstractConstraint
Support for evaluation of properties. The value passed in will never be a Collection and will never be null.- Specified by:
evaluateSingleValue
in classAbstractConstraint
- See Also:
-