Class AbstractConstraint

java.lang.Object
org.alfresco.repo.dictionary.constraint.AbstractConstraint
All Implemented Interfaces:
Constraint
Direct Known Subclasses:
ListOfValuesConstraint, NoOpConstraint, NumericRangeConstraint, RegexConstraint, StringLengthConstraint

public abstract class AbstractConstraint extends Object implements Constraint
Base services for constraints.
Author:
Derek Hulley
  • Field Details

  • Constructor Details

    • AbstractConstraint

      public AbstractConstraint()
  • Method Details

    • set_shortName

      public void set_shortName(String shortName)
      Deprecated.
      Sets the constraint name. Automatically called after construction. Please excuse the strange method name as we want the property name to begin with an underscore to avoid property name clashes.
      Parameters:
      shortName - String
    • setShortName

      public void setShortName(String name)
      Sets the constraint name
      Parameters:
      name - String
    • getShortName

      public String getShortName()
      Gets the constraint name.
      Specified by:
      getShortName in interface Constraint
      Returns:
      the constraint name.
    • setRegistry

      public void setRegistry(ConstraintRegistry registry)
      Optionally specify the registry that will be used to register the constraint. This is used when instantiating constraints outside the dictionary.
      Parameters:
      registry - the constraint registry
    • getType

      public String getType()
      Description copied from interface: Constraint
      Returns the 'type' of the constraint, this is the identifier given to constraint in the configuration.
      Specified by:
      getType in interface Constraint
      Returns:
      The type
    • setTitle

      public void setTitle(String title)
    • getTitle

      public String getTitle()
      Specified by:
      getTitle in interface Constraint
      Returns:
      the human-readable constraint title (optional)
    • getParameters

      public Map<String,Object> getParameters()
      Description copied from interface: Constraint
      Returns the parameters passed to the instance of the constraint.
      Specified by:
      getParameters in interface Constraint
      Returns:
      Map of parameters or an empty Map if none exist
    • initialize

      public void initialize()
      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 interface Constraint
    • checkPropertyNotNull

      protected void checkPropertyNotNull(String name, Object value)
      Check that the given value is not null.
      Parameters:
      name - the name of the property
      value - the value to check for null
      Throws:
      DictionaryException - if the the property is null
    • evaluate

      public final void evaluate(Object value)
      Description copied from interface: Constraint
      Evaluates a property value according to the implementation and initialization parameters provided.
      Specified by:
      evaluate in interface Constraint
      Parameters:
      value - the property value to check
      See Also:
    • evaluateCollection

      protected void evaluateCollection(Collection<Object> collection)
      Only override if there is some specific evaluation that needs to be performed on the collection as a whole.
      Parameters:
      collection - the collection of values to evaluate
      See Also:
    • evaluateSingleValue

      protected abstract void evaluateSingleValue(Object value)
      Support for evaluation of properties. The value passed in will never be a Collection and will never be null.
      Throws:
      ConstraintException - throw this when the evaluation fails