|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Objectcom.parse.ParseQuery
public class ParseQuery
The ParseQuery class defines a query that is used to fetch ParseObjects. The
most common use case is finding all objects that match a query through the
findInBackground
method, using a
FindCallback
. For example, this sample code fetches all objects of
class "MyClass"
. It calls a different function depending on
whether the fetch succeeded or not.
ParseQuery query = new ParseQuery("MyClass"); query.findInBackground(new FindCallback() { public void done(List<ParseObject> objects, ParseException e) { if (e == null) { objectsWereRetrievedSuccessfully(objects); } else { objectRetrievalFailed(); } } }A ParseQuery can also be used to retrieve a single object whose id is known, through the
getInBackground
method, using a
GetCallback
. For example, this sample code fetches an object of class
"MyClass"
and id myId
. It calls a different
function depending on whether the fetch succeeded or not.
ParseQuery query = new ParseQuery("MyClass"); query.getInBackground(myId, new GetCallback() { public void done(ParseObject object, ParseException e) { if (e == null) { objectWasRetrievedSuccessfully(object); } else { objectRetrievalFailed(); } } }A ParseQuery can also be used to count the number of objects that match the query without retrieving all of those objects. For example, this sample code counts the number of objects of the class
"MyClass"
.
ParseQuery query = new ParseQuery("MyClass"); query.countInBackground(new FindCallback() { public void done(int count, ParseException e) { if (e == null) { objectsWereCounted(count); } else { objectCountFailed(); } } }Using the callback methods is usually preferred because the network operation will not block the calling thread. However, in some cases it may be easier to use the
find
, get
or count
calls,
which do block the calling thread. For example, if your application has
already spawned a background task to perform work, that background task could
use the blocking calls and avoid the code complexity of callbacks.
Nested Class Summary | |
---|---|
static class |
ParseQuery.CachePolicy
|
Constructor Summary | |
---|---|
ParseQuery(String theClassName)
Constructs a query. |
Method Summary | |
---|---|
ParseQuery |
addAscendingOrder(String key)
Also sorts the results in ascending order by the given key. |
ParseQuery |
addDescendingOrder(String key)
Also sorts the results in descending order by the given key. |
void |
cancel()
Cancels the current network request (if one is running). |
static void |
clearAllCachedResults()
Clears the cached result for all queries. |
void |
clearCachedResult()
Removes the previously cached result for this query, forcing the next find() to hit the network. |
int |
count()
Counts the number of objects that match this query. |
protected int |
count(boolean needsLock)
|
void |
countInBackground(CountCallback callback)
Counts the number of objects that match this query in a background thread. |
List<ParseObject> |
find()
Retrieves a list of ParseObjects that satisfy this query. |
List<ParseObject> |
find(boolean needsLock)
|
void |
findInBackground(FindCallback callback)
Retrieves a list of ParseObjects that satisfy this query from the server in a background thread. |
ParseObject |
get(String theObjectId)
Constructs a ParseObject whose id is already known by fetching data from the server. |
protected ParseObject |
get(String theObjectId,
boolean needsLock)
|
ParseQuery.CachePolicy |
getCachePolicy()
Accessor for the caching policy. |
String |
getClassName()
Accessor for the class name. |
ParseObject |
getFirst()
Retrieves at most one ParseObject that satisfies this query. |
protected ParseObject |
getFirst(boolean needsLock)
|
void |
getFirstInBackground(GetCallback callback)
Retrieves at most one ParseObject that satisfies this query from the server in a background thread. |
void |
getInBackground(String objectId,
GetCallback callback)
Constructs a ParseObject whose id is already known by fetching data from the server in a background thread. |
int |
getLimit()
Accessor for the limit. |
long |
getMaxCacheAge()
Gets the maximum age of cached data that will be considered in this query. |
int |
getSkip()
Accessor for the skip value. |
static ParseQuery |
getUserQuery()
Deprecated. Please use ParseUser.getQuery() instead. |
boolean |
hasCachedResult()
Returns whether or not this query has a cached result. |
void |
include(String key)
Include nested ParseObjects for the provided key. |
static ParseQuery |
or(List<ParseQuery> queries)
Constructs a query that is the or of the given queries. |
ParseQuery |
orderByAscending(String key)
Sorts the results in ascending order by the given key. |
ParseQuery |
orderByDescending(String key)
Sorts the results in descending order by the given key. |
void |
setCachePolicy(ParseQuery.CachePolicy newCachePolicy)
Change the caching policy of this query. |
void |
setLimit(int newLimit)
Controls the maximum number of results that are returned. |
void |
setMaxCacheAge(long maxAgeInMilliseconds)
Sets the maximum age of cached data that will be considered in this query. |
void |
setSkip(int newSkip)
Controls the number of results to skip before returning any results. |
void |
setTrace(boolean shouldTrace)
Turn on performance tracing of finds. |
ParseQuery |
whereContainedIn(String key,
Collection<? extends Object> values)
Add a constraint to the query that requires a particular key's value to be contained in the provided list of values. |
ParseQuery |
whereContains(String key,
String substring)
Add a constraint for finding string values that contain a provided string. |
ParseQuery |
whereDoesNotExist(String key)
Add a constraint for finding objects that do not contain a given key. |
ParseQuery |
whereDoesNotMatchKeyInQuery(String key,
String keyInQuery,
ParseQuery query)
Add a constraint to the query that requires a particular key's value does not match any value for a key in the results of another ParseQuery. |
ParseQuery |
whereDoesNotMatchQuery(String key,
ParseQuery query)
Add a constraint to the query that requires a particular key's value does not match another ParseQuery. |
ParseQuery |
whereEndsWith(String key,
String suffix)
Add a constraint for finding string values that end with a provided string. |
ParseQuery |
whereEqualTo(String key,
Object value)
Add a constraint to the query that requires a particular key's value to be equal to the provided value. |
ParseQuery |
whereExists(String key)
Add a constraint for finding objects that contain the given key. |
ParseQuery |
whereGreaterThan(String key,
Object value)
Add a constraint to the query that requires a particular key's value to be greater than the provided value. |
ParseQuery |
whereGreaterThanOrEqualTo(String key,
Object value)
Add a constraint to the query that requires a particular key's value to be greater than or equal to the provided value. |
ParseQuery |
whereLessThan(String key,
Object value)
Add a constraint to the query that requires a particular key's value to be less than the provided value. |
ParseQuery |
whereLessThanOrEqualTo(String key,
Object value)
Add a constraint to the query that requires a particular key's value to be less than or equal to the provided value. |
ParseQuery |
whereMatches(String key,
String regex)
Add a regular expression constraint for finding string values that match the provided regular expression. |
ParseQuery |
whereMatches(String key,
String regex,
String modifiers)
Add a regular expression constraint for finding string values that match the provided regular expression. |
ParseQuery |
whereMatchesKeyInQuery(String key,
String keyInQuery,
ParseQuery query)
Add a constraint to the query that requires a particular key's value matches a value for a key in the results of another ParseQuery |
ParseQuery |
whereMatchesQuery(String key,
ParseQuery query)
Add a constraint to the query that requires a particular key's value match another ParseQuery. |
ParseQuery |
whereNear(String key,
ParseGeoPoint point)
Add a proximity based constraint for finding objects with key point values near the point given. |
ParseQuery |
whereNotContainedIn(String key,
Collection<? extends Object> values)
Add a constraint to the query that requires a particular key's value not be contained in the provided list of values. |
ParseQuery |
whereNotEqualTo(String key,
Object value)
Add a constraint to the query that requires a particular key's value to be not equal to the provided value. |
ParseQuery |
whereStartsWith(String key,
String prefix)
Add a constraint for finding string values that start with a provided string. |
ParseQuery |
whereWithinGeoBox(String key,
ParseGeoPoint southwest,
ParseGeoPoint northeast)
Add a constraint to the query that requires a particular key's coordinates be contained within a given rectangular geographic bounding box. |
ParseQuery |
whereWithinKilometers(String key,
ParseGeoPoint point,
double maxDistance)
Add a proximity based constraint for finding objects with key point values near the point given and within the maximum distance given. |
ParseQuery |
whereWithinMiles(String key,
ParseGeoPoint point,
double maxDistance)
Add a proximity based constraint for finding objects with key point values near the point given and within the maximum distance given. |
ParseQuery |
whereWithinRadians(String key,
ParseGeoPoint point,
double maxDistance)
Add a proximity based constraint for finding objects with key point values near the point given and within the maximum distance given. |
Methods inherited from class Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ParseQuery(String theClassName)
theClassName
- The name of the class to retrieve ParseObjects for.Method Detail |
---|
public static ParseQuery or(List<ParseQuery> queries)
queries
- The list of ParseQuerys to 'or' together
@Deprecated public static ParseQuery getUserQuery()
ParseUser.getQuery()
instead.
public void cancel()
public List<ParseObject> find() throws ParseException
ParseException
public List<ParseObject> find(boolean needsLock) throws ParseException
ParseException
public ParseObject getFirst() throws ParseException
ParseException
- Throws a ParseException if no object is found.protected ParseObject getFirst(boolean needsLock) throws ParseException
ParseException
public void setCachePolicy(ParseQuery.CachePolicy newCachePolicy)
public ParseQuery.CachePolicy getCachePolicy()
public void setMaxCacheAge(long maxAgeInMilliseconds)
public long getMaxCacheAge()
public void findInBackground(FindCallback callback)
callback
- callback.done(objectList, e) is called when the find completes.public void getFirstInBackground(GetCallback callback)
callback
- callback.done(object, e) is called when the find completes.public int count() throws ParseException
ParseException
- Throws an exception when the network connection fails or when the
query is invalid.protected int count(boolean needsLock) throws ParseException
ParseException
public void countInBackground(CountCallback callback)
callback
- callback.done(count, e) will be called when the count completes.public ParseObject get(String theObjectId) throws ParseException
theObjectId
- Object id of the ParseObject to fetch.
ParseException
- Throws an exception when there is no such object or when the
network connection fails.protected ParseObject get(String theObjectId, boolean needsLock) throws ParseException
ParseException
public boolean hasCachedResult()
public void clearCachedResult()
public static void clearAllCachedResults()
public void getInBackground(String objectId, GetCallback callback)
objectId
- Object id of the ParseObject to fetch.callback
- callback.done(object, e) will be called when the fetch completes.public ParseQuery whereEqualTo(String key, Object value)
key
- The key to check.value
- The value that the ParseObject must contain.
public ParseQuery whereLessThan(String key, Object value)
key
- The key to check.value
- The value that provides an upper bound.
public ParseQuery whereNotEqualTo(String key, Object value)
key
- The key to check.value
- The value that must not be equalled.
public ParseQuery whereGreaterThan(String key, Object value)
key
- The key to check.value
- The value that provides an lower bound.
public ParseQuery whereLessThanOrEqualTo(String key, Object value)
key
- The key to check.value
- The value that provides an upper bound.
public ParseQuery whereGreaterThanOrEqualTo(String key, Object value)
key
- The key to check.value
- The value that provides an lower bound.
public ParseQuery whereContainedIn(String key, Collection<? extends Object> values)
key
- The key to check.values
- The values that will match.
public ParseQuery whereMatchesQuery(String key, ParseQuery query)
key
- The key to check.query
- The query that the value should match
public ParseQuery whereDoesNotMatchQuery(String key, ParseQuery query)
key
- The key to check.query
- The query that the value should not match
public ParseQuery whereMatchesKeyInQuery(String key, String keyInQuery, ParseQuery query)
key
- The key whose value is being checkedkeyInQuery
- The key in the objects from the sub query to look inquery
- The sub query to run
public ParseQuery whereDoesNotMatchKeyInQuery(String key, String keyInQuery, ParseQuery query)
key
- The key whose value is being checked and excludedkeyInQuery
- The key in the objects from the sub query to look inquery
- The sub query to run
public ParseQuery whereNotContainedIn(String key, Collection<? extends Object> values)
key
- The key to check.values
- The values that will not match.
public ParseQuery whereNear(String key, ParseGeoPoint point)
key
- The key that the ParseGeoPoint is stored in.point
- The reference ParseGeoPoint that is used.
public ParseQuery whereWithinMiles(String key, ParseGeoPoint point, double maxDistance)
key
- The key that the ParseGeoPoint is stored in.point
- The reference ParseGeoPoint that is used.maxDistance
- Maximum distance (in miles) of results to return.
public ParseQuery whereWithinKilometers(String key, ParseGeoPoint point, double maxDistance)
key
- The key that the ParseGeoPoint is stored in.point
- The reference ParseGeoPoint that is used.maxDistance
- Maximum distance (in kilometers) of results to return.
public ParseQuery whereWithinRadians(String key, ParseGeoPoint point, double maxDistance)
key
- The key that the ParseGeoPoint is stored in.point
- The reference ParseGeoPoint that is used.maxDistance
- Maximum distance (in radians) of results to return.
public ParseQuery whereWithinGeoBox(String key, ParseGeoPoint southwest, ParseGeoPoint northeast)
key
- The key to be constrained.southwest
- The lower-left inclusive corner of the box.northeast
- The upper-right inclusive corner of the box.
public ParseQuery whereMatches(String key, String regex)
key
- The key that the string to match is stored in.regex
- The regular expression pattern to match.
public ParseQuery whereMatches(String key, String regex, String modifiers)
key
- The key that the string to match is stored in.regex
- The regular expression pattern to match.modifiers
- Any of the following supported PCRE modifiers:i
- Case insensitive searchm
- Search across multiple lines of inputpublic ParseQuery whereContains(String key, String substring)
key
- The key that the string to match is stored in.substring
- The substring that the value must contain.
public ParseQuery whereStartsWith(String key, String prefix)
key
- The key that the string to match is stored in.prefix
- The substring that the value must start with.
public ParseQuery whereEndsWith(String key, String suffix)
key
- The key that the string to match is stored in.suffix
- The substring that the value must end with.
public void include(String key)
key
- The key that should be included.public ParseQuery whereExists(String key)
key
- The key that should exist.public ParseQuery whereDoesNotExist(String key)
key
- The key that should not existpublic ParseQuery orderByAscending(String key)
key
- The key to order by.
public ParseQuery addAscendingOrder(String key)
key
- The key to order by
public ParseQuery orderByDescending(String key)
key
- The key to order by.
public ParseQuery addDescendingOrder(String key)
key
- The key to order by
public void setLimit(int newLimit)
newLimit
- public void setTrace(boolean shouldTrace)
public int getLimit()
public void setSkip(int newSkip)
newSkip
- public int getSkip()
public String getClassName()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |