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>
AQueryFilterVisitorthat returns true if the provideJsonValuemeets 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 aQueryFilterVisitorthat can assess if aJsonValueresource matches a set of criteria defined by aQueryFilter.BooleanvisitAndFilter(JsonValue p, List<QueryFilter<JsonPointer>> subFilters)Visits anandfilter.BooleanvisitBooleanLiteralFilter(JsonValue p, boolean value)Visits a boolean literal filter.BooleanvisitComplexFilter(JsonValue p, JsonPointer field, QueryFilter<JsonPointer> subFilter)Visits acomplexfilter.BooleanvisitContainsFilter(JsonValue p, JsonPointer field, Object valueAssertion)Visits acontainsfilter.BooleanvisitEqualsFilter(JsonValue p, JsonPointer field, Object valueAssertion)Visits aequalityfilter.BooleanvisitExtendedMatchFilter(JsonValue p, JsonPointer field, String matchingRuleId, Object valueAssertion)Visits acomparisonfilter.BooleanvisitGreaterThanFilter(JsonValue p, JsonPointer field, Object valueAssertion)Visits agreater thanfilter.BooleanvisitGreaterThanOrEqualToFilter(JsonValue p, JsonPointer field, Object valueAssertion)Visits agreater than or equal tofilter.BooleanvisitLessThanFilter(JsonValue p, JsonPointer field, Object valueAssertion)Visits aless thanfilter.BooleanvisitLessThanOrEqualToFilter(JsonValue p, JsonPointer field, Object valueAssertion)Visits aless than or equal tofilter.BooleanvisitNotFilter(JsonValue p, QueryFilter<JsonPointer> subFilter)Visits anotfilter.BooleanvisitOrFilter(JsonValue p, List<QueryFilter<JsonPointer>> subFilters)Visits anorfilter.BooleanvisitPresentFilter(JsonValue p, JsonPointer field)Visits apresentfilter.BooleanvisitStartsWithFilter(JsonValue p, JsonPointer field, Object valueAssertion)Visits astarts withfilter.
-
-
-
Method Detail
-
jsonValueFilterVisitor
public static QueryFilterVisitor<Boolean,JsonValue,JsonPointer> jsonValueFilterVisitor()
Returns aQueryFilterVisitorthat can assess if aJsonValueresource 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:QueryFilterVisitorVisits anandfilter.Implementation note: for the purposes of matching, an empty sub-filter list should always evaluate to
true.- Specified by:
visitAndFilterin 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:QueryFilterVisitorVisits a boolean literal filter.- Specified by:
visitBooleanLiteralFilterin 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:QueryFilterVisitorVisits acontainsfilter.- Specified by:
visitContainsFilterin 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:QueryFilterVisitorVisits aequalityfilter.- Specified by:
visitEqualsFilterin 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:QueryFilterVisitorVisits acomparisonfilter.- Specified by:
visitExtendedMatchFilterin 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:QueryFilterVisitorVisits agreater thanfilter.- Specified by:
visitGreaterThanFilterin 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:QueryFilterVisitorVisits agreater than or equal tofilter.- Specified by:
visitGreaterThanOrEqualToFilterin 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:QueryFilterVisitorVisits aless thanfilter.- Specified by:
visitLessThanFilterin 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:QueryFilterVisitorVisits aless than or equal tofilter.- Specified by:
visitLessThanOrEqualToFilterin 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:QueryFilterVisitorVisits anotfilter.- Specified by:
visitNotFilterin 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:QueryFilterVisitorVisits anorfilter.Implementation note: for the purposes of matching, an empty sub-filter list should always evaluate to
false.- Specified by:
visitOrFilterin 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:QueryFilterVisitorVisits apresentfilter.- Specified by:
visitPresentFilterin 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:QueryFilterVisitorVisits astarts withfilter.- Specified by:
visitStartsWithFilterin 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.
-
visitComplexFilter
public Boolean visitComplexFilter(JsonValue p, JsonPointer field, QueryFilter<JsonPointer> subFilter)
Description copied from interface:QueryFilterVisitorVisits acomplexfilter.- Specified by:
visitComplexFilterin interfaceQueryFilterVisitor<Boolean,JsonValue,JsonPointer>- Parameters:
p- A visitor specified parameter.field- A definition of the field to be compared.subFilter- The subfilter expression to be evaluated on the object @field.- Returns:
- Returns a visitor specified result.
-
-