Top Description Inners Fields Constructors Methods
org.eclipse.jgit.treewalk.filter

public abstract Class AndTreeFilter

extends TreeFilter
Class Inheritance
Known Direct Subclasses
org.eclipse.jgit.treewalk.filter.AndTreeFilter.Binary, org.eclipse.jgit.treewalk.filter.AndTreeFilter.List
Imports
java.io.IOException, java.util.Collection, org.eclipse.jgit.errors.IncorrectObjectTypeException, .MissingObjectException, org.eclipse.jgit.internal.JGitText, org.eclipse.jgit.treewalk.TreeWalk

Includes a tree entry only if all subfilters include the same tree entry.

Classic shortcut behavior is used, so evaluation of the org.eclipse.jgit.treewalk.filter.TreeFilter#include(TreeWalk) method stops as soon as a false result is obtained. Applications can improve filtering performance by placing faster filters that are more likely to reject a result earlier in the list.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
private static class

Field Summary

Inherited from org.eclipse.jgit.treewalk.filter.TreeFilter:
ALLANY_DIFF

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public static TreeFilter

Returns:

a filter that must match both input filters.
create
(TreeFilter
first filter to test.
a
,
TreeFilter
second filter to test.
b
)

Create a filter with two filters, both of which must match.

public static TreeFilter

Returns:

a filter that must match all input filters.
create
(TreeFilter[]
list of filters to match against. Must contain at least 2 filters.
list
)

Create a filter around many filters, all of which must match.

public static TreeFilter

Returns:

a filter that must match all input filters.
create
(Collection<TreeFilter>
list of filters to match against. Must contain at least 2 filters.
list
)

Create a filter around many filters, all of which must match.

Inherited from org.eclipse.jgit.treewalk.filter.TreeFilter:
clonegetPathsBestEffortincludematchFilternegateshouldBeRecursivetoString

Constructor Detail

AndTreeFilterback to summary
public AndTreeFilter()

Method Detail

createback to summary
public static TreeFilter create(TreeFilter a, TreeFilter b)

Create a filter with two filters, both of which must match.

Parameters
a:TreeFilter

first filter to test.

b:TreeFilter

second filter to test.

Returns:TreeFilter

a filter that must match both input filters.

createback to summary
public static TreeFilter create(TreeFilter[] list)

Create a filter around many filters, all of which must match.

Parameters
list:TreeFilter[]

list of filters to match against. Must contain at least 2 filters.

Returns:TreeFilter

a filter that must match all input filters.

createback to summary
public static TreeFilter create(Collection<TreeFilter> list)

Create a filter around many filters, all of which must match.

Parameters
list:Collection<TreeFilter>

list of filters to match against. Must contain at least 2 filters.

Returns:TreeFilter

a filter that must match all input filters.

org.eclipse.jgit.treewalk.filter back to summary

private Class AndTreeFilter.Binary

extends AndTreeFilter
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final TreeFilter
a

private final TreeFilter
b

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public TreeFilter
clone()

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.clone.

Creates and returns a copy of this object.

public boolean
include(TreeWalk
the walker the filter needs to examine.
walker
)

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.include.

Determine if the current entry is interesting to report.

public int
matchFilter(TreeWalk
the walker the filter needs to examine.
walker
)

Overrides org.eclipse.jgit.treewalk.filter.TreeFilter.matchFilter.

Determine if the current entry is a parent, a match, or no match.

public boolean
shouldBeRecursive()

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.shouldBeRecursive.

Does this tree filter require a recursive walk to match everything?

public String
toString()

Overrides org.eclipse.jgit.treewalk.filter.TreeFilter.toString.

Returns a string representation of the object.

Inherited from org.eclipse.jgit.treewalk.filter.AndTreeFilter:
createcreatecreate

Field Detail

aback to summary
private final TreeFilter a
bback to summary
private final TreeFilter b

Constructor Detail

Binaryback to summary
pack-priv Binary(TreeFilter one, TreeFilter two)

Method Detail

cloneback to summary
public TreeFilter clone()

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.clone.

Doc from org.eclipse.jgit.treewalk.filter.TreeFilter.clone.

Creates and returns a copy of this object. The precise meaning of "copy" may depend on the class of the object. The general intent is that, for any object x, the expression:

x.clone() != x
will be true, and that the expression:
x.clone().getClass() == x.getClass()
will be true, but these are not absolute requirements. While it is typically the case that:
x.clone().equals(x)
will be true, this is not an absolute requirement.

By convention, the returned object should be obtained by calling super.clone. If a class and all of its superclasses (except Object) obey this convention, it will be the case that x.clone().getClass() == x.getClass().

By convention, the object returned by this method should be independent of this object (which is being cloned). To achieve this independence, it may be necessary to modify one or more fields of the object returned by super.clone before returning it. Typically, this means copying any mutable objects that comprise the internal "deep structure" of the object being cloned and replacing the references to these objects with references to the copies. If a class contains only primitive fields or references to immutable objects, then it is usually the case that no fields in the object returned by super.clone need to be modified. Clone this tree 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.

Returns:TreeFilter

Doc from java.lang.Object.clone.

a clone of this instance.

Annotations
@Override
includeback to summary
public boolean include(TreeWalk walker) throws MissingObjectException, IncorrectObjectTypeException, IOException

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.include.

Doc from org.eclipse.jgit.treewalk.filter.TreeFilter.include.

Determine if the current entry is interesting to report.

This method is consulted for subtree entries even if org.eclipse.jgit.treewalk.TreeWalk#isRecursive() is enabled. The consultation allows the filter to bypass subtree recursion on a case-by-case basis, even when recursion is enabled at the application level.

Parameters
walker:TreeWalk

the walker the filter needs to examine.

Returns:boolean

true if the current entry should be seen by the application; false to hide the entry.

Annotations
@Override
Exceptions
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 current walker entry 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.
matchFilterback to summary
public int matchFilter(TreeWalk walker) throws MissingObjectException, IncorrectObjectTypeException, IOException

Overrides org.eclipse.jgit.treewalk.filter.TreeFilter.matchFilter.

Doc from org.eclipse.jgit.treewalk.filter.TreeFilter.matchFilter.

Determine if the current entry is a parent, a match, or no match.

This method extends the result returned by include(TreeWalk) with a third option (-1), splitting the value true. This gives the application a possibility to distinguish between an exact match and the case when a subtree to the current entry might be a match.

Parameters
walker:TreeWalk

the walker the filter needs to examine.

Returns:int

-1 if the current entry is a parent of the filter but no exact match has been made; 0 if the current entry should be seen by the application; 1 if it should be hidden.

Annotations
@Override
Exceptions
MissingObjectException:
as thrown by include(TreeWalk)
IncorrectObjectTypeException:
as thrown by include(TreeWalk)
IOException:
as thrown by include(TreeWalk)
shouldBeRecursiveback to summary
public boolean shouldBeRecursive()

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.shouldBeRecursive.

Doc from org.eclipse.jgit.treewalk.filter.TreeFilter.shouldBeRecursive.

Does this tree filter require a recursive walk to match everything?

If this tree filter is matching on full entry path names and its pattern is looking for a '/' then the filter would require a recursive TreeWalk to accurately make its decisions. The walker is not required to enable recursive behavior for any particular filter, this is only a hint.

Returns:boolean

true if the filter would like to have the walker recurse into subtrees to make sure it matches everything correctly; false if the filter does not require entering subtrees.

Annotations
@Override
toStringback to summary
public String toString()

Overrides org.eclipse.jgit.treewalk.filter.TreeFilter.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Returns:String

a string representation of the object

Annotations
@SuppressWarnings:nls
@Override
org.eclipse.jgit.treewalk.filter back to summary

private Class AndTreeFilter.List

extends AndTreeFilter
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final TreeFilter[]

Constructor Summary

AccessConstructor and Description
pack-priv
List(TreeFilter[] list)

Method Summary

Modifier and TypeMethod and Description
public TreeFilter
clone()

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.clone.

Creates and returns a copy of this object.

public boolean
include(TreeWalk
the walker the filter needs to examine.
walker
)

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.include.

Determine if the current entry is interesting to report.

public int
matchFilter(TreeWalk
the walker the filter needs to examine.
walker
)

Overrides org.eclipse.jgit.treewalk.filter.TreeFilter.matchFilter.

Determine if the current entry is a parent, a match, or no match.

public boolean
shouldBeRecursive()

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.shouldBeRecursive.

Does this tree filter require a recursive walk to match everything?

public String
toString()

Overrides org.eclipse.jgit.treewalk.filter.TreeFilter.toString.

Returns a string representation of the object.

Inherited from org.eclipse.jgit.treewalk.filter.AndTreeFilter:
createcreatecreate

Field Detail

subfiltersback to summary
private final TreeFilter[] subfilters

Constructor Detail

Listback to summary
pack-priv List(TreeFilter[] list)

Method Detail

cloneback to summary
public TreeFilter clone()

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.clone.

Doc from org.eclipse.jgit.treewalk.filter.TreeFilter.clone.

Creates and returns a copy of this object. The precise meaning of "copy" may depend on the class of the object. The general intent is that, for any object x, the expression:

x.clone() != x
will be true, and that the expression:
x.clone().getClass() == x.getClass()
will be true, but these are not absolute requirements. While it is typically the case that:
x.clone().equals(x)
will be true, this is not an absolute requirement.

By convention, the returned object should be obtained by calling super.clone. If a class and all of its superclasses (except Object) obey this convention, it will be the case that x.clone().getClass() == x.getClass().

By convention, the object returned by this method should be independent of this object (which is being cloned). To achieve this independence, it may be necessary to modify one or more fields of the object returned by super.clone before returning it. Typically, this means copying any mutable objects that comprise the internal "deep structure" of the object being cloned and replacing the references to these objects with references to the copies. If a class contains only primitive fields or references to immutable objects, then it is usually the case that no fields in the object returned by super.clone need to be modified. Clone this tree 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.

Returns:TreeFilter

Doc from java.lang.Object.clone.

a clone of this instance.

Annotations
@Override
includeback to summary
public boolean include(TreeWalk walker) throws MissingObjectException, IncorrectObjectTypeException, IOException

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.include.

Doc from org.eclipse.jgit.treewalk.filter.TreeFilter.include.

Determine if the current entry is interesting to report.

This method is consulted for subtree entries even if org.eclipse.jgit.treewalk.TreeWalk#isRecursive() is enabled. The consultation allows the filter to bypass subtree recursion on a case-by-case basis, even when recursion is enabled at the application level.

Parameters
walker:TreeWalk

the walker the filter needs to examine.

Returns:boolean

true if the current entry should be seen by the application; false to hide the entry.

Annotations
@Override
Exceptions
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 current walker entry 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.
matchFilterback to summary
public int matchFilter(TreeWalk walker) throws MissingObjectException, IncorrectObjectTypeException, IOException

Overrides org.eclipse.jgit.treewalk.filter.TreeFilter.matchFilter.

Doc from org.eclipse.jgit.treewalk.filter.TreeFilter.matchFilter.

Determine if the current entry is a parent, a match, or no match.

This method extends the result returned by include(TreeWalk) with a third option (-1), splitting the value true. This gives the application a possibility to distinguish between an exact match and the case when a subtree to the current entry might be a match.

Parameters
walker:TreeWalk

the walker the filter needs to examine.

Returns:int

-1 if the current entry is a parent of the filter but no exact match has been made; 0 if the current entry should be seen by the application; 1 if it should be hidden.

Annotations
@Override
Exceptions
MissingObjectException:
as thrown by include(TreeWalk)
IncorrectObjectTypeException:
as thrown by include(TreeWalk)
IOException:
as thrown by include(TreeWalk)
shouldBeRecursiveback to summary
public boolean shouldBeRecursive()

Implements abstract org.eclipse.jgit.treewalk.filter.TreeFilter.shouldBeRecursive.

Doc from org.eclipse.jgit.treewalk.filter.TreeFilter.shouldBeRecursive.

Does this tree filter require a recursive walk to match everything?

If this tree filter is matching on full entry path names and its pattern is looking for a '/' then the filter would require a recursive TreeWalk to accurately make its decisions. The walker is not required to enable recursive behavior for any particular filter, this is only a hint.

Returns:boolean

true if the filter would like to have the walker recurse into subtrees to make sure it matches everything correctly; false if the filter does not require entering subtrees.

Annotations
@Override
toStringback to summary
public String toString()

Overrides org.eclipse.jgit.treewalk.filter.TreeFilter.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Returns:String

a string representation of the object

Annotations
@SuppressWarnings:nls
@Override