Query

public class Query extends Object
Known Direct Subclasses

The Query class (and its subclass, DatabaseReference) are used for reading data. Listeners are attached, and they will be triggered when the corresponding data changes.

Instances of Query are obtained by calling startAt(), endAt(), or limit() on a DatabaseReference.

Public Method Summary

ChildEventListener
addChildEventListener(ChildEventListener listener)
Add a listener for child events occurring at this location.
void
addListenerForSingleValueEvent(ValueEventListener listener)
Add a listener for a single change in the data at this location.
ValueEventListener
addValueEventListener(ValueEventListener listener)
Add a listener for changes in the data at this location.
Query
endAt(String value, String key)
Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key key less than or equal to the given key.
Query
endAt(String value)
Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default.
Query
endAt(double value, String key)
Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key less than or equal to the given key.
Query
endAt(double value)
Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default.
Query
endAt(boolean value)
Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default.
Query
endAt(boolean value, String key)
Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key less than or equal to the given key.
Query
equalTo(String value, String key)
Create a query constrained to only return the child node with the given key and value.
Query
equalTo(double value)
Create a query constrained to only return child nodes with the given value.
Query
equalTo(double value, String key)
Create a query constrained to only return the child node with the given key and value.
Query
equalTo(String value)
Create a query constrained to only return child nodes with the given value.
Query
equalTo(boolean value, String key)
Create a query constrained to only return the child node with the given key and value.
Query
equalTo(boolean value)
Create a query constrained to only return child nodes with the given value.
DatabaseReference
getRef()
void
keepSynced(boolean keepSynced)
By calling keepSynced(true) on a location, the data for that location will automatically be downloaded and kept in sync, even when no listeners are attached for that location.
Query
limitToFirst(int limit)
Create a query with limit and anchor it to the start of the window.
Query
limitToLast(int limit)
Create a query with limit and anchor it to the end of the window.
Query
orderByChild(String path)
Create a query in which child nodes are ordered by the values of the specified path.
Query
orderByKey()
Create a query in which child nodes are ordered by their keys.
Query
orderByPriority()
Create a query in which child nodes are ordered by their priorities.
Query
orderByValue()
Create a query in which nodes are ordered by their value
void
removeEventListener(ChildEventListener listener)
Remove the specified listener from this location.
void
removeEventListener(ValueEventListener listener)
Remove the specified listener from this location.
Query
startAt(double value)
Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default.
Query
startAt(String value, String key)
Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key greater than or equal to the given key.
Query
startAt(String value)
Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default.
Query
startAt(double value, String key)
Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key greater than or equal to the given key.
Query
startAt(boolean value)
Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default.
Query
startAt(boolean value, String key)
Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key greater than or equal to the given key.

Inherited Method Summary

Public Methods

public ChildEventListener addChildEventListener (ChildEventListener listener)

Add a listener for child events occurring at this location. When child locations are added, removed, changed, or moved, the listener will be triggered for the appropriate event.

Parameters
listener The listener to be called with changes
Returns
  • A reference to the listener provided. Save this to remove the listener later.

public void addListenerForSingleValueEvent (ValueEventListener listener)

Add a listener for a single change in the data at this location. This listener will be triggered once with the value of the data at the location.

Parameters
listener The listener to be called with the data

public ValueEventListener addValueEventListener (ValueEventListener listener)

Add a listener for changes in the data at this location. Each time time the data changes, your listener will be called with an immutable snapshot of the data.

Parameters
listener The listener to be called with changes
Returns
  • A reference to the listener provided. Save this to remove the listener later.

public Query endAt (String value, String key)

Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key key less than or equal to the given key.

Parameters
value The value to end at, inclusive
key The key to end at, inclusive
Returns
  • A Query with the new constraint

public Query endAt (String value)

Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default.

Parameters
value The value to end at, inclusive
Returns
  • A Query with the new constraint

public Query endAt (double value, String key)

Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key less than or equal to the given key.

Parameters
value The value to end at, inclusive
key The key to end at, inclusive
Returns
  • A Query with the new constraint

public Query endAt (double value)

Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default.

Parameters
value The value to end at, inclusive
Returns
  • A Query with the new constraint

public Query endAt (boolean value)

Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default.

Parameters
value The value to end at, inclusive
Returns
  • A Query with the new constraint

public Query endAt (boolean value, String key)

Create a query constrained to only return child nodes with a value less than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key less than or equal to the given key.

Parameters
value The value to end at, inclusive
key The key to end at, inclusive
Returns
  • A Query with the new constraint

public Query equalTo (String value, String key)

Create a query constrained to only return the child node with the given key and value. Note that there is at most one such child as names are unique.

Parameters
value The value to query for
key The key of the child
Returns
  • A query with the new constraint

public Query equalTo (double value)

Create a query constrained to only return child nodes with the given value.

Parameters
value The value to query for
Returns
  • A query with the new constraint

public Query equalTo (double value, String key)

Create a query constrained to only return the child node with the given key and value. Note that there is at most one such child as keys are unique.

Parameters
value The value to query for
key The key of the child
Returns
  • A query with the new constraint

public Query equalTo (String value)

Create a query constrained to only return child nodes with the given value.

Parameters
value The value to query for
Returns
  • A query with the new constraint

public Query equalTo (boolean value, String key)

Create a query constrained to only return the child node with the given key and value. Note that there is at most one such child as keys are unique.

Parameters
value The value to query for
key The name of the child
Returns
  • A query with the new constraint

public Query equalTo (boolean value)

Create a query constrained to only return child nodes with the given value.

Parameters
value The value to query for
Returns
  • A query with the new constraint

public DatabaseReference getRef ()

Returns
  • A DatabaseReference to this location

public void keepSynced (boolean keepSynced)

By calling keepSynced(true) on a location, the data for that location will automatically be downloaded and kept in sync, even when no listeners are attached for that location. Additionally, while a location is kept synced, it will not be evicted from the persistent disk cache.

Parameters
keepSynced Pass true to keep this location synchronized, pass false to stop synchronization.

public Query limitToFirst (int limit)

Create a query with limit and anchor it to the start of the window.

Parameters
limit The maximum number of child nodes to return
Returns
  • A Query with the new constraint

public Query limitToLast (int limit)

Create a query with limit and anchor it to the end of the window.

Parameters
limit The maximum number of child nodes to return
Returns
  • A Query with the new constraint

public Query orderByChild (String path)

Create a query in which child nodes are ordered by the values of the specified path.

Parameters
path The path to the child node to use for sorting
Returns
  • A Query with the new constraint

public Query orderByKey ()

Create a query in which child nodes are ordered by their keys.

Returns
  • A Query with the new constraint

public Query orderByPriority ()

Create a query in which child nodes are ordered by their priorities.

Returns
  • A Query with the new constraint

public Query orderByValue ()

Create a query in which nodes are ordered by their value

Returns
  • A Query with the new constraint

public void removeEventListener (ChildEventListener listener)

Remove the specified listener from this location.

Parameters
listener The listener to remove

public void removeEventListener (ValueEventListener listener)

Remove the specified listener from this location.

Parameters
listener The listener to remove

public Query startAt (double value)

Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default.

Parameters
value The value to start at, inclusive
Returns
  • A Query with the new constraint

public Query startAt (String value, String key)

Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key greater than or equal to the given key.

Parameters
value The priority to start at, inclusive
key The key to start at, inclusive
Returns
  • A Query with the new constraint

public Query startAt (String value)

Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default.

Parameters
value The value to start at, inclusive
Returns
  • A Query with the new constraint

public Query startAt (double value, String key)

Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key greater than or equal to the given key.

Parameters
value The priority to start at, inclusive
key The key name to start at, inclusive
Returns
  • A Query with the new constraint

public Query startAt (boolean value)

Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default.

Parameters
value The value to start at, inclusive
Returns
  • A Query with the new constraint

public Query startAt (boolean value, String key)

Create a query constrained to only return child nodes with a value greater than or equal to the given value, using the given orderBy directive or priority as default, and additionally only child nodes with a key greater than or equal to the given key.

Parameters
value The priority to start at, inclusive
key The key to start at, inclusive
Returns
  • A Query with the new constraint