Class RuleMatch

  • All Implemented Interfaces:
    java.lang.Comparable<RuleMatch>

    public class RuleMatch
    extends java.lang.Object
    implements java.lang.Comparable<RuleMatch>
    Information about an error rule that matches text and the position of the match. See ContextTools for displaying errors in their original text context.
    • Field Detail

      • SUGGESTION_PATTERN

        private static final java.util.regex.Pattern SUGGESTION_PATTERN
      • rule

        private final Rule rule
      • message

        private final java.lang.String message
      • shortMessage

        private final java.lang.String shortMessage
      • url

        private java.net.URL url
      • features

        private java.util.SortedMap<java.lang.String,​java.lang.Float> features
      • autoCorrect

        private boolean autoCorrect
    • Constructor Detail

      • RuleMatch

        public RuleMatch​(Rule rule,
                         int fromPos,
                         int toPos,
                         java.lang.String message)
        Deprecated.
        use a constructor that also takes an AnalyzedSentence parameter (deprecated since 4.0)
        Creates a RuleMatch object, taking the rule that triggered this match, position of the match and an explanation message. This message is scanned for <suggestion>...</suggestion> to get suggested fixes for the problem detected by this rule.
      • RuleMatch

        public RuleMatch​(Rule rule,
                         AnalyzedSentence sentence,
                         int fromPos,
                         int toPos,
                         java.lang.String message)
        Creates a RuleMatch object, taking the rule that triggered this match, position of the match and an explanation message. This message is scanned for <suggestion>...</suggestion> to get suggested fixes for the problem detected by this rule.
        Since:
        4.0
      • RuleMatch

        public RuleMatch​(Rule rule,
                         AnalyzedSentence sentence,
                         int fromPos,
                         int toPos,
                         java.lang.String message,
                         java.lang.String shortMessage)
        Creates a RuleMatch object, taking the rule that triggered this match, position of the match and an explanation message. This message is scanned for <suggestion>...</suggestion> to get suggested fixes for the problem detected by this rule.
        Parameters:
        shortMessage - used for example in OpenOffice/LibreOffice's context menu
        Since:
        4.0
      • RuleMatch

        public RuleMatch​(Rule rule,
                         int fromPos,
                         int toPos,
                         java.lang.String message,
                         java.lang.String shortMessage,
                         boolean startWithUppercase,
                         java.lang.String suggestionsOutMsg)
        Deprecated.
        use a constructor that also takes an AnalyzedSentence parameter (deprecated since 4.0)
      • RuleMatch

        public RuleMatch​(Rule rule,
                         AnalyzedSentence sentence,
                         int fromPos,
                         int toPos,
                         java.lang.String message,
                         java.lang.String shortMessage,
                         boolean startWithUppercase,
                         java.lang.String suggestionsOutMsg)
        Creates a RuleMatch object, taking the rule that triggered this match, position of the match and an explanation message. This message is scanned for <suggestion>...</suggestion> to get suggested fixes for the problem detected by this rule.
        Parameters:
        fromPos - error start position in original text
        toPos - error end position in original text
        shortMessage - used for example in OpenOffice/LibreOffice's context menu (may be null)
        startWithUppercase - whether the original text at the position of the match starts with an uppercase character
        Since:
        4.0
      • RuleMatch

        public RuleMatch​(RuleMatch clone)
      • RuleMatch

        public RuleMatch​(RuleMatch clone,
                         java.util.List<java.lang.String> replacements)
    • Method Detail

      • getFeatures

        @NotNull
        public @NotNull java.util.SortedMap<java.lang.String,​java.lang.Float> getFeatures()
      • setFeatures

        public void setFeatures​(@NotNull
                                @NotNull java.util.SortedMap<java.lang.String,​java.lang.Float> features)
      • isAutoCorrect

        public boolean isAutoCorrect()
      • setAutoCorrect

        public void setAutoCorrect​(boolean autoCorrect)
      • getRule

        public Rule getRule()
      • getLine

        public int getLine()
        Deprecated.
        rely on the character-based getFromPos() instead (deprecated since 3.4)
        Get the line number in which the match occurs (zero-based).
      • setLine

        public void setLine​(int fromLine)
        Set the line number in which the match occurs (zero-based).
      • getEndLine

        public int getEndLine()
        Deprecated.
        rely on getToPos() instead (deprecated since 3.4)
        Get the line number in which the match ends (zero-based).
      • setEndLine

        public void setEndLine​(int endLine)
        Set the line number in which the match ends (zero-based).
      • getColumn

        public int getColumn()
        Deprecated.
        rely on the character-based getFromPos() instead (deprecated since 3.4)
        Get the column number in which the match occurs (zero-based).
      • setColumn

        public void setColumn​(int column)
        Deprecated.
        (deprecated since 3.5)
        Set the column number in which the match occurs (zero-based).
      • getEndColumn

        public int getEndColumn()
        Deprecated.
        rely on getToPos() instead (deprecated since 3.4)
        Get the column number in which the match ends (zero-based).
      • setEndColumn

        public void setEndColumn​(int endColumn)
        Deprecated.
        (deprecated since 3.5)
        Set the column number in which the match ends (zero-based).
      • getFromPos

        public int getFromPos()
        Position of the start of the error (in characters, zero-based, relative to the original input text).
      • getToPos

        public int getToPos()
        Position of the end of the error (in characters, zero-based, relative to the original input text).
      • setOffsetPosition

        public void setOffsetPosition​(int fromPos,
                                      int toPos,
                                      RuleMatch ruleMatch)
      • getMessage

        public java.lang.String getMessage()
        A human-readable explanation describing the error. This may contain one or more corrections marked up with <suggestion>...</suggestion>.
        See Also:
        getSuggestedReplacements(), getShortMessage()
      • getShortMessage

        public java.lang.String getShortMessage()
        A shorter human-readable explanation describing the error or an empty string if no such explanation is available.
        See Also:
        getMessage()
      • setSuggestedReplacement

        public void setSuggestedReplacement​(java.lang.String replacement)
        See Also:
        getSuggestedReplacements()
      • addSuggestedReplacement

        public void addSuggestedReplacement​(java.lang.String replacement)
      • addSuggestedReplacements

        public void addSuggestedReplacements​(java.util.List<java.lang.String> replacements)
      • getSuggestedReplacements

        public java.util.List<java.lang.String> getSuggestedReplacements()
        The text fragments which might be an appropriate fix for the problem. One of these fragments can be used to replace the old text between getFromPos() to getToPos().
        Returns:
        unmodifiable list of String objects or an empty List
      • setSuggestedReplacements

        public void setSuggestedReplacements​(java.util.List<java.lang.String> replacements)
        See Also:
        getSuggestedReplacements()
      • getSuggestedReplacementObjects

        public java.util.List<SuggestedReplacement> getSuggestedReplacementObjects()
      • getUrl

        @Nullable
        public @Nullable java.net.URL getUrl()
        A URL that points to a more detailed error description or null. Note that the Rule itself might also have an URL, which is usually a less specific one than this. This one will overwrite the rule's URL in the JSON output.
        Since:
        4.0
      • setUrl

        public void setUrl​(java.net.URL url)
        Since:
        4.0
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • compareTo

        public int compareTo​(RuleMatch other)
        Compare by start position.
        Specified by:
        compareTo in interface java.lang.Comparable<RuleMatch>
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object