Package org.languagetool.rules
Class AbstractNewYearDateFilter
- java.lang.Object
-
- org.languagetool.rules.patterns.RuleFilter
-
- org.languagetool.rules.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
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.regex.PatternDAY_OF_MONTH_PATTERN
-
Constructor Summary
Constructors Constructor Description AbstractNewYearDateFilter()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description RuleMatchacceptRuleMatch(RuleMatch match, java.util.Map<java.lang.String,java.lang.String> args, int patternTokenPos, AnalyzedTokenReadings[] patternTokens)Returns the original rule match or a modified one, ornullif the rule match is filtered out.protected abstract java.util.CalendargetCalendar()protected intgetCurrentYear()private java.util.CalendargetDate(java.util.Map<java.lang.String,java.lang.String> args)protected intgetDayOfMonth(java.lang.String localizedDayOfMonth)Implement so that "first" returns1, second returns2etc.private intgetDayOfMonthFromArguments(java.util.Map<java.lang.String,java.lang.String> args)protected abstract intgetMonth(java.lang.String localizedMonth)Implement so that January returns1, February2etc.private intgetMonthFromArguments(java.util.Map<java.lang.String,java.lang.String> args)protected booleanisJanuary()Return true if the year recently changed (= it is January)-
Methods inherited from class org.languagetool.rules.patterns.RuleFilter
getRequired, matches
-
-
-
-
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(java.lang.String localizedMonth)
Implement so that January returns1, February2etc.- Parameters:
localizedMonth- name of a month or abbreviation thereof
-
getCalendar
protected abstract java.util.Calendar getCalendar()
-
getDayOfMonth
protected int getDayOfMonth(java.lang.String localizedDayOfMonth)
Implement so that "first" returns1, second returns2etc.- Parameters:
localizedDayOfMonth- name of day of the month or abbreviation thereof
-
acceptRuleMatch
public RuleMatch acceptRuleMatch(RuleMatch match, java.util.Map<java.lang.String,java.lang.String> args, int patternTokenPos, AnalyzedTokenReadings[] patternTokens)
Description copied from class:RuleFilterReturns the original rule match or a modified one, ornullif the rule match is filtered out.- Specified by:
acceptRuleMatchin classRuleFilter- Parameters:
args- a map with values foryear,month,day(day of month)patternTokens- those tokens of the text that correspond the matched pattern- Returns:
nullif this rule match should be removed, or any other RuleMatch (e.g. the one from the arguments) that properly describes the detected error
-
getDate
private java.util.Calendar getDate(java.util.Map<java.lang.String,java.lang.String> args)
-
getDayOfMonthFromArguments
private int getDayOfMonthFromArguments(java.util.Map<java.lang.String,java.lang.String> args)
-
getMonthFromArguments
private int getMonthFromArguments(java.util.Map<java.lang.String,java.lang.String> args)
-
-