@Immutable public class ChainedSearchFilter extends Object implements SearchFilter
SearchFilter
s to be chained together, with the option to
specify the logical operator to apply between them.Modifier and Type | Class and Description |
---|---|
static class |
ChainedSearchFilter.Operator
Logic operator to allow clients to specify whether to apply a logical AND or OR between the result of filters
|
Constructor and Description |
---|
ChainedSearchFilter(List<? extends SearchFilter> filters,
ChainedSearchFilter.Operator logicOperator)
Constructs a chained search filter.
|
ChainedSearchFilter(List<? extends SearchFilter> filters,
List<ChainedSearchFilter.Operator> logicOperators)
Constructs a chained search filter.
|
ChainedSearchFilter(SearchFilter... filters)
Constructs a chained search filter that AND's the list of specified filters.
|
Modifier and Type | Method and Description |
---|---|
SearchFilter |
and(SearchFilter other)
Combines this filter with the one specified, returning a new filter.
|
boolean |
equals(Object obj) |
SearchFilter |
expand()
Expands this filter into a composite filter (that composes other filters).
|
List<SearchFilter> |
getFilters() |
String |
getKey() |
List<ChainedSearchFilter.Operator> |
getOperators() |
int |
hashCode() |
ChainedSearchFilter |
merge(ChainedSearchFilter other) |
SearchFilter |
or(SearchFilter other)
Combines this filter with the one specified, returning a new filter.
|
String |
toString() |
public ChainedSearchFilter(List<? extends SearchFilter> filters, List<ChainedSearchFilter.Operator> logicOperators)
filters
- the filters. Nested ChainedSearchFilter
not supported.logicOperators
- the operator to appy for the corresponding filterIllegalArgumentException
- if specified filters is null or empty or if the size of filters differs from the size of logicOperators
or if one of the filters specified is a ChainedSearchFilter
public ChainedSearchFilter(List<? extends SearchFilter> filters, ChainedSearchFilter.Operator logicOperator)
filters
- the filters. Nested ChainedSearchFilter
not supported.logicOperator
- operator to apply to all filtersIllegalArgumentException
- if specified filters is null or empty
or if one of the filters specified is a ChainedSearchFilter
public ChainedSearchFilter(SearchFilter... filters)
filters
- the filters. Nested ChainedSearchFilter
not supported.public List<SearchFilter> getFilters()
public List<ChainedSearchFilter.Operator> getOperators()
public String getKey()
getKey
in interface SearchFilter
public ChainedSearchFilter merge(ChainedSearchFilter other)
public SearchFilter and(SearchFilter other)
SearchFilter
and
in interface SearchFilter
other
- the other filter.public SearchFilter or(SearchFilter other)
SearchFilter
or
in interface SearchFilter
other
- the other filterpublic SearchFilter expand()
SearchFilter
expand
in interface Expandable<SearchFilter>
expand
in interface SearchFilter
Copyright © 2003–2015 Atlassian. All rights reserved.