Class DateIntervalConstraint

java.lang.Object
org.nuxeo.ecm.core.schema.types.constraints.AbstractConstraint
org.nuxeo.ecm.core.schema.types.constraints.DateIntervalConstraint
All Implemented Interfaces:
Serializable, Constraint

public class DateIntervalConstraint extends AbstractConstraint
This constraint ensures a date is in an interval.

This constraint can validate any Date or Calendar. This constraint also support Number types whose long value is recognised as number of milliseconds since January 1, 1970, 00:00:00 GMT. The constraint finally supports String having YYYY-MM-DD format.

Since:
7.1
See Also:
  • Constructor Details

    • DateIntervalConstraint

      public DateIntervalConstraint(Object minDate, boolean includingMin, Object maxDate, boolean includingMax)
      Use null value to disable a bound.

      Bounds could be any Date or Calendar. Bounds also support Number types whose long value is recognised as number of milliseconds since January 1, 1970, 00:00:00 GMT. Bounds finally supports String having YYYY-MM-DD format.

      Invalid bound (wrong format) would be ignored with log warning.

      Parameters:
      minDate - The lower bound of the interval
      includingMin - true if the lower bound is included in the interval
      maxDate - The upper bound of the interval
      includingMax - true if the upper bound is included in the interval
  • Method Details

    • validate

      public boolean validate(Object object)
      Description copied from interface: Constraint
      Validates the given object against this constraint.

      If some object is null. Constraint should return true while validating unless the constraint deals with nullable state.

      Parameters:
      object - the object to validate
      Returns:
      true if the object was successfully validated, false otherwise
    • getDescription

      public Constraint.Description getDescription()
      Here, value is :
      name = "DateIntervalConstraint".
      parameters =
      • "Minimum" : 2014-11-05 // only if bounded
      • "MinimumInclusive" : true // only if bounded
      • "Maximum" : 2014-11-25 // only if bounded
      • "MaximumInclusive" : false // only if bounded
      Returns:
      The constraint description.
    • getMinTime

      public Long getMinTime()
    • getMaxTime

      public Long getMaxTime()
    • isIncludingMin

      public boolean isIncludingMin()
    • isIncludingMax

      public boolean isIncludingMax()
    • getErrorMessage

      public String getErrorMessage(Object invalidValue, Locale locale)
      Description copied from interface: Constraint
      Provides an error message to display when some invalid value does not match existing entity.
      Specified by:
      getErrorMessage in interface Constraint
      Overrides:
      getErrorMessage in class AbstractConstraint
      Parameters:
      invalidValue - The invalid value that don't match any entity.
      locale - The language in which the message should be generated.
      Returns:
      A message in the specified language or
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object