public class QueryFilterUtil
extends java.lang.Object
Query Filter Utility class uses to parse filter parameters. Filter query restricts the data returned in a query
request, which should take a form of
http://<host>:<port>//<path>.social.query.<startIndex>.<length>?<filter=<filterExpressoin>
A single filter uses the form: <code>property operator expression</code> where,
<ul>
<li><b>property</b> - the property name. @see MAP_INDEX_TYPE for the list of valid name.</li>
<li><b>operator</b> - defines the type of filter match to use.</li>
<li><b>expression</b> - states the values included in the results. There are couple of important rules for filter
expression.
<ul>
<li><b>URL-reversed characters</b> - Characters such as '&' must be url-encoded.</li>
<li><b>Reversed characters</b> - The comma and backslash must be backslash escaped when they appear in an
expression.</li>
</ul>
</li>
</ul>
| Modifier and Type | Class and Description |
|---|---|
static class |
QueryFilterUtil.Comparator
Query Comparator types - map our URL comparator to UGC Comparator type.
|
static class |
QueryFilterUtil.DATA_TYPE
enum for avartar's size.
|
static class |
QueryFilterUtil.QueryFilter
Abstract of a filter clause, which consists of a property name, a comparator, and a value.
|
static class |
QueryFilterUtil.QueryFilterException
General Query Filter Exception, thrown when there is an error while parsing a filter.
|
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
PROP_USER_DISPLAY_NAME |
| Constructor and Description |
|---|
QueryFilterUtil() |
| Modifier and Type | Method and Description |
|---|---|
static java.util.List<ConstraintGroup> |
parseFilter(java.lang.String[] filters)
{@code
AND logic - AND logic is achieved using multiple filters.
|
static java.util.List<ConstraintGroup> |
parseFilter(java.lang.String[] filters,
boolean bSupportsMultiLingualSearch)
{@code
AND logic - AND logic is achieved using multiple filters.
|
static void |
parseOrFilters(java.lang.String expressions,
java.util.Map<java.lang.String,ConstraintGroup> orFilters)
OR Logic Example: filter=name eq 'admin', name eq 'peter' This api is for internal use only, and may be changed
or removed at any time
|
static void |
parseOrFilters(java.lang.String expressions,
java.util.Map<java.lang.String,ConstraintGroup> orFilters,
boolean bSupportsMultiLingualSearch)
OR Logic Example: filter=name eq 'admin', name eq 'peter' This api is for internal use only, and may be changed
or removed at any time
|
public static final java.lang.String PROP_USER_DISPLAY_NAME
public static void parseOrFilters(java.lang.String expressions,
java.util.Map<java.lang.String,ConstraintGroup> orFilters)
throws QueryFilterUtil.QueryFilterException
expressions - StringorFilters - MapQueryFilterUtil.QueryFilterException - QueryFilterExceptionpublic static void parseOrFilters(java.lang.String expressions,
java.util.Map<java.lang.String,ConstraintGroup> orFilters,
boolean bSupportsMultiLingualSearch)
throws QueryFilterUtil.QueryFilterException
expressions - StringorFilters - MapbSupportsMultiLingualSearch - booleanQueryFilterUtil.QueryFilterException - QueryFilterExceptionpublic static java.util.List<ConstraintGroup> parseFilter(java.lang.String[] filters) throws QueryFilterUtil.QueryFilterException
AND logic - AND logic is achieved using multiple filters. Example: filter=name eq 'admin'&filter=message eq
'testing' Combining AND and OR filter=name eq 'admin',name eq 'peter'&filter=message eq testing This api is for
internal use only, and may be changed or removed at any time
filters - String[]QueryFilterUtil.QueryFilterException - QueryFilterExceptionpublic static java.util.List<ConstraintGroup> parseFilter(java.lang.String[] filters, boolean bSupportsMultiLingualSearch) throws QueryFilterUtil.QueryFilterException
AND logic - AND logic is achieved using multiple filters. Example: filter=name eq 'admin'&filter=message eq
'testing' Combining AND and OR filter=name eq 'admin',name eq 'peter'&filter=message eq testing This api is for
internal use only, and may be changed or removed at any time
filters - String[]bSupportsMultiLingualSearch - booleanQueryFilterUtil.QueryFilterException - QueryFilterExceptionCopyright © 2010 - 2023 Adobe. All Rights Reserved