PropertyRestrictNode


@ExperimentalAppSearchApi
public final class PropertyRestrictNode implements Node


Node that represents a property restrict.

A property restrict is an expression in the query language that allows a querier to restrict the results of a query expression to those contained in a given property path. Written as a query string, this node should be equivalent to the query `property:child`, where `property` is the property path to restrict results to and `child` is the query subexpression.

This node is a comparator that should correspond with HAS in the Google AIP EBNF Filtering Definition.

Summary

Public constructors

PropertyRestrictNode(
    @NonNull PropertyPath propertyPath,
    @NonNull Node childNode
)

Constructor for building a PropertyRestrictNode that represents a restriction on a query subexpression by some property i.e. the query `property:subexpression`.

Public methods

boolean
@NonNull Node

Get the subexpression in the property restriction as a Node (i.e. the right hand side of the property restrict sign (":")).

@NonNull List<Node>

Get the child Node of PropertyRestrictNode as a list containing the only child Node.

@NonNull PropertyPath

Get the property in the property restriction (i.e. the left hand side of the property restrict sign (":")).

int
void
setChild(@NonNull Node childNode)

Set the query subexpression in the property restriction (i.e. the right hand side of the property restrict sign (":")).

void

Set the property in the property restriction (i.e. the left hand side of the property restrict sign (":")).

@NonNull String

Get the query string representation of PropertyRestrictNode.

Public constructors

PropertyRestrictNode

Added in 1.1.0-alpha07
public PropertyRestrictNode(
    @NonNull PropertyPath propertyPath,
    @NonNull Node childNode
)

Constructor for building a PropertyRestrictNode that represents a restriction on a query subexpression by some property i.e. the query `property:subexpression`.

Parameters
@NonNull PropertyPath propertyPath

The property that will restrict results returned by the subexpression in the property restrict

@NonNull Node childNode

The subexpression to be restricted in the property restrict

Public methods

equals

public boolean equals(Object o)

getChild

Added in 1.1.0-alpha07
public @NonNull Node getChild()

Get the subexpression in the property restriction as a Node (i.e. the right hand side of the property restrict sign (":")).

getChildren

public @NonNull List<NodegetChildren()

Get the child Node of PropertyRestrictNode as a list containing the only child Node.

getProperty

Added in 1.1.0-alpha07
public @NonNull PropertyPath getProperty()

Get the property in the property restriction (i.e. the left hand side of the property restrict sign (":")).

hashCode

public int hashCode()

setChild

Added in 1.1.0-alpha07
public void setChild(@NonNull Node childNode)

Set the query subexpression in the property restriction (i.e. the right hand side of the property restrict sign (":")).

setProperty

Added in 1.1.0-alpha07
public void setProperty(@NonNull PropertyPath propertyPath)

Set the property in the property restriction (i.e. the left hand side of the property restrict sign (":")).

toString

public @NonNull String toString()

Get the query string representation of PropertyRestrictNode.

The string representation is the string representation of the property path joined from the left to the query sub expression surrounded in parentheses with the property restrict symbol (":").