org.eclipse.jgit.revwalk.filter

## Class SubStringRevFilter

- java.lang.Object
- - org.eclipse.jgit.revwalk.filter.RevFilter
  - - org.eclipse.jgit.revwalk.filter.SubStringRevFilter

    public abstract class SubStringRevFilter
    extends RevFilter

Abstract filter that searches text using only substring search.

### Field Summary

### Fields inherited from class org.eclipse.jgit.revwalk.filter.RevFilter

`ALL, MERGE_BASE, NO_MERGES, NONE`

### Constructor Summary

Constructors
`protected` `SubStringRevFilter(String patternText)` Construct a new matching filter.

### Method Summary

All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
`RevFilter` `clone()` Clone this revision filter, including its parameters.
`boolean` `include(RevWalk walker, RevCommit cmit)` Determine if the supplied commit should be included in results.
`boolean` `requiresCommitBody()`
`static boolean` `safe(String pattern)` Can this string be safely handled by a substring filter?
`protected abstract RawCharSequence` `text(RevCommit cmit)` Obtain the raw text to match against.
`String` `toString()`

### Methods inherited from class org.eclipse.jgit.revwalk.filter.RevFilter

`negate`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### SubStringRevFilter

    protected SubStringRevFilter(String patternText)

Construct a new matching filter.

Parameters:
  `patternText` - text to locate. This should be a safe string as described by the `safe(String)` as regular expression meta characters are treated as literals.

### Method Detail

#### safe

    public static boolean safe(String pattern)

Can this string be safely handled by a substring filter?

Parameters:
  `pattern` - the pattern text proposed by the user.
Returns:
  true if a substring filter can perform this pattern match; false if `PatternMatchRevFilter` must be used instead.

#### include

    public boolean include(RevWalk walker,
                           RevCommit cmit)
                    throws MissingObjectException,
                           IncorrectObjectTypeException,
                           IOException

Description copied from class: `RevFilter`
Determine if the supplied commit should be included in results.

Specified by:
  `include` in class `RevFilter`
Parameters:
  `walker` - the active walker this filter is being invoked from within.
  `cmit` - the commit currently being tested. The commit has been parsed and its body is available for inspection only if the filter returns true from `RevFilter.requiresCommitBody()`.
Returns:
  true to include this commit in the results; false to have this commit be omitted entirely from the results.
Throws:
  `MissingObjectException` - an object the filter needs to consult to determine its answer does not exist in the Git repository the walker is operating on. Filtering this commit is impossible without the object.
  `IncorrectObjectTypeException` - an object the filter needed to consult was not of the expected object type. This usually indicates a corrupt repository, as an object link is referencing the wrong type.
  `IOException` - a loose object or pack file could not be read to obtain data necessary for the filter to make its decision.

#### requiresCommitBody

    public boolean requiresCommitBody()

Overrides:
  `requiresCommitBody` in class `RevFilter`
Returns:
  true if the filter needs the commit body to be parsed.

#### text

    protected abstract RawCharSequence text(RevCommit cmit)

Obtain the raw text to match against.

Parameters:
  `cmit` - current commit being evaluated.
Returns:
  sequence for the commit's content that we need to match on.

#### clone

    public RevFilter clone()

Description copied from class: `RevFilter`
Clone this revision filter, including its parameters.

This is a deep clone. If this filter embeds objects or other filters it must also clone those, to ensure the instances do not share mutable data.

Specified by:
  `clone` in class `RevFilter`
Returns:
  another copy of this filter, suitable for another thread.

#### toString

    public String toString()

Overrides:
  `toString` in class `RevFilter`