Class AbstractNewYearDateFilter


  • public abstract class AbstractNewYearDateFilter
    extends RuleFilter
    Accepts rule matches if we are in the first days of a new year and the user may have entered a date with the old year (but not a date in December).
    Since:
    4.3
    • Constructor Detail

      • AbstractNewYearDateFilter

        public AbstractNewYearDateFilter()
    • Method Detail

      • isJanuary

        protected boolean isJanuary()
        Return true if the year recently changed (= it is January)
      • getCurrentYear

        protected int getCurrentYear()
      • getMonth

        protected abstract int getMonth​(String localizedMonth)
        Implement so that January returns 1, February 2 etc.
        Parameters:
        localizedMonth - name of a month or abbreviation thereof
      • getCalendar

        protected abstract Calendar getCalendar()
      • getDayOfMonth

        protected int getDayOfMonth​(String localizedDayOfMonth)
        Implement so that "first" returns 1, second returns 2 etc.
        Parameters:
        localizedDayOfMonth - name of day of the month or abbreviation thereof
      • acceptRuleMatch

        public RuleMatch acceptRuleMatch​(RuleMatch match,
                                         Map<String,​String> args,
                                         int patternTokenPos,
                                         AnalyzedTokenReadings[] patternTokens)
        Description copied from class: RuleFilter
        Returns the original rule match or a modified one, or null if the rule match is filtered out.
        Specified by:
        acceptRuleMatch in class RuleFilter
        Parameters:
        args - a map with values for year, month, day (day of month)
        patternTokens - those tokens of the text that correspond the matched pattern
        Returns:
        null if this rule match should be removed, or any other RuleMatch (e.g. the one from the arguments) that properly describes the detected error