Package org.forgerock.util.query
Class JsonValueFilterVisitor
- java.lang.Object
-
- org.forgerock.util.query.JsonValueFilterVisitor
-
- All Implemented Interfaces:
QueryFilterVisitor<Boolean,JsonValue,JsonPointer>
public final class JsonValueFilterVisitor extends Object implements QueryFilterVisitor<Boolean,JsonValue,JsonPointer>
AQueryFilterVisitor
that returns true if the provideJsonValue
meets the criteria of the QueryFilter assertions and false if it does not.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static QueryFilterVisitor<Boolean,JsonValue,JsonPointer>
jsonValueFilterVisitor()
Returns aQueryFilterVisitor
that can assess if aJsonValue
resource matches a set of criteria defined by aQueryFilter
.Boolean
visitAndFilter(JsonValue p, List<QueryFilter<JsonPointer>> subFilters)
Visits anand
filter.Boolean
visitBooleanLiteralFilter(JsonValue p, boolean value)
Visits a boolean literal filter.Boolean
visitContainsFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Visits acontains
filter.Boolean
visitEqualsFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Visits aequality
filter.Boolean
visitExtendedMatchFilter(JsonValue p, JsonPointer field, String matchingRuleId, Object valueAssertion)
Visits acomparison
filter.Boolean
visitGreaterThanFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Visits agreater than
filter.Boolean
visitGreaterThanOrEqualToFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Visits agreater than or equal to
filter.Boolean
visitLessThanFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Visits aless than
filter.Boolean
visitLessThanOrEqualToFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Visits aless than or equal to
filter.Boolean
visitNotFilter(JsonValue p, QueryFilter<JsonPointer> subFilter)
Visits anot
filter.Boolean
visitOrFilter(JsonValue p, List<QueryFilter<JsonPointer>> subFilters)
Visits anor
filter.Boolean
visitPresentFilter(JsonValue p, JsonPointer field)
Visits apresent
filter.Boolean
visitStartsWithFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Visits astarts with
filter.
-
-
-
Method Detail
-
jsonValueFilterVisitor
public static QueryFilterVisitor<Boolean,JsonValue,JsonPointer> jsonValueFilterVisitor()
Returns aQueryFilterVisitor
that can assess if aJsonValue
resource matches a set of criteria defined by aQueryFilter
.- Returns:
- a QueryFilterVisitor on a JsonValue resource
-
visitAndFilter
public Boolean visitAndFilter(JsonValue p, List<QueryFilter<JsonPointer>> subFilters)
Description copied from interface:QueryFilterVisitor
Visits anand
filter.Implementation note: for the purposes of matching, an empty sub-filter list should always evaluate to
true
.- Specified by:
visitAndFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.subFilters
- The unmodifiable list of sub-filters.- Returns:
- Returns a visitor specified result.
-
visitBooleanLiteralFilter
public Boolean visitBooleanLiteralFilter(JsonValue p, boolean value)
Description copied from interface:QueryFilterVisitor
Visits a boolean literal filter.- Specified by:
visitBooleanLiteralFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.value
- The boolean literal value.- Returns:
- Returns a visitor specified result.
-
visitContainsFilter
public Boolean visitContainsFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Description copied from interface:QueryFilterVisitor
Visits acontains
filter.- Specified by:
visitContainsFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.field
- A definition of the field to be compared.valueAssertion
- The value assertion.- Returns:
- Returns a visitor specified result.
-
visitEqualsFilter
public Boolean visitEqualsFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Description copied from interface:QueryFilterVisitor
Visits aequality
filter.- Specified by:
visitEqualsFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.field
- A definition of the field to be compared.valueAssertion
- The value assertion.- Returns:
- Returns a visitor specified result.
-
visitExtendedMatchFilter
public Boolean visitExtendedMatchFilter(JsonValue p, JsonPointer field, String matchingRuleId, Object valueAssertion)
Description copied from interface:QueryFilterVisitor
Visits acomparison
filter.- Specified by:
visitExtendedMatchFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.field
- A definition of the field to be compared.matchingRuleId
- The operator to use for the comparison, which will not be one of the core operator names.valueAssertion
- The value assertion.- Returns:
- Returns a visitor specified result.
-
visitGreaterThanFilter
public Boolean visitGreaterThanFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Description copied from interface:QueryFilterVisitor
Visits agreater than
filter.- Specified by:
visitGreaterThanFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.field
- A definition of the field to be compared.valueAssertion
- The value assertion.- Returns:
- Returns a visitor specified result.
-
visitGreaterThanOrEqualToFilter
public Boolean visitGreaterThanOrEqualToFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Description copied from interface:QueryFilterVisitor
Visits agreater than or equal to
filter.- Specified by:
visitGreaterThanOrEqualToFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.field
- A definition of the field to be compared.valueAssertion
- The value assertion.- Returns:
- Returns a visitor specified result.
-
visitLessThanFilter
public Boolean visitLessThanFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Description copied from interface:QueryFilterVisitor
Visits aless than
filter.- Specified by:
visitLessThanFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.field
- A definition of the field to be compared.valueAssertion
- The value assertion.- Returns:
- Returns a visitor specified result.
-
visitLessThanOrEqualToFilter
public Boolean visitLessThanOrEqualToFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Description copied from interface:QueryFilterVisitor
Visits aless than or equal to
filter.- Specified by:
visitLessThanOrEqualToFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.field
- A definition of the field to be compared.valueAssertion
- The value assertion.- Returns:
- Returns a visitor specified result.
-
visitNotFilter
public Boolean visitNotFilter(JsonValue p, QueryFilter<JsonPointer> subFilter)
Description copied from interface:QueryFilterVisitor
Visits anot
filter.- Specified by:
visitNotFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.subFilter
- The sub-filter.- Returns:
- Returns a visitor specified result.
-
visitOrFilter
public Boolean visitOrFilter(JsonValue p, List<QueryFilter<JsonPointer>> subFilters)
Description copied from interface:QueryFilterVisitor
Visits anor
filter.Implementation note: for the purposes of matching, an empty sub-filter list should always evaluate to
false
.- Specified by:
visitOrFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.subFilters
- The unmodifiable list of sub-filters.- Returns:
- Returns a visitor specified result.
-
visitPresentFilter
public Boolean visitPresentFilter(JsonValue p, JsonPointer field)
Description copied from interface:QueryFilterVisitor
Visits apresent
filter.- Specified by:
visitPresentFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.field
- A definition of the field to be compared.- Returns:
- Returns a visitor specified result.
-
visitStartsWithFilter
public Boolean visitStartsWithFilter(JsonValue p, JsonPointer field, Object valueAssertion)
Description copied from interface:QueryFilterVisitor
Visits astarts with
filter.- Specified by:
visitStartsWithFilter
in interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>
- Parameters:
p
- A visitor specified parameter.field
- A definition of the field to be compared.valueAssertion
- The value assertion.- Returns:
- Returns a visitor specified result.
-
-