diff --git a/src/wp8/parse/Parse.Phone.dll b/src/wp8/parse/Parse.Phone.dll
index 4f3421c7..68c352bb 100644
Binary files a/src/wp8/parse/Parse.Phone.dll and b/src/wp8/parse/Parse.Phone.dll differ
diff --git a/src/wp8/parse/Parse.Phone.xml b/src/wp8/parse/Parse.Phone.xml
index a4a105c4..efcb90d5 100644
--- a/src/wp8/parse/Parse.Phone.xml
+++ b/src/wp8/parse/Parse.Phone.xml
@@ -199,7 +199,7 @@
Call this method within your RootFrame.Navigating event handler to complete native Facebook
- sign-on. When handling a Facebook login redirect URI, this method will cancel the
+ sign-on. When handling a Facebook login redirect URI, this method will cancel the
pending navigation, begin asynchronously logging in the user, and immediately navigate
to the .
@@ -293,24 +293,13 @@
- Gets the access token for the currently logged in Facebook user. This can be used with a
+ Gets the access token for the currently logged in Facebook user. This can be used with a
Facebook SDK to get access to Facebook user data.
-
-
- Provides a dictionary that gets persisted on the filesystem between runs of the app.
- This is analogous to NSUserDefaults in iOS.
-
-
-
-
- Wraps the custom settings object for Parse so that it can be exposed as ApplicationSettings.
-
-
- A utility class for sending push notifications.
+ A utility class for sending and receiving push notifications.
@@ -342,229 +331,229 @@
- Request a push to be sent. When this task completes, Parse has successfully acknowledged a request
- to send push notifications but has not necessarily finished sending all notifications
- requested. The current status of recent push notifications can be seen in your Push Notifications
- console on http://parse.com
+ Request a push to be sent. When this task completes, Parse has successfully acknowledged a request
+ to send push notifications but has not necessarily finished sending all notifications
+ requested. The current status of recent push notifications can be seen in your Push Notifications
+ console on http://parse.com
A Task for continuation.
- Request a push to be sent. When this task completes, Parse has successfully acknowledged a request
- to send push notifications but has not necessarily finished sending all notifications
- requested. The current status of recent push notifications can be seen in your Push Notifications
- console on http://parse.com
+ Request a push to be sent. When this task completes, Parse has successfully acknowledged a request
+ to send push notifications but has not necessarily finished sending all notifications
+ requested. The current status of recent push notifications can be seen in your Push Notifications
+ console on http://parse.com
CancellationToken to cancel the current operation.
-
-
- Subscribe the current installation to this channel. This is shorthand for:
+
+
+ Pushes a simple message to every device. This is shorthand for:
-
- var installation = ParseInstallation.CurrentInstallation;
- installation.AddUniqueToList("channels", channel);
- installation.SaveAsync();
-
-
- The channel to which this installation should subscribe.
+
+ var push = new ParsePush();
+ push.Data = new Dictionary<string, object>{{"alert", alert}};
+ return push.SendAsync();
+
+
+ The alert message to send.
-
-
- Subscribe the current installation to this channel. This is shorthand for:
+
+
+ Pushes a simple message to every device subscribed to channel. This is shorthand for:
-
- var installation = ParseInstallation.CurrentInstallation;
- installation.AddUniqueToList("channels", channel);
- installation.SaveAsync(cancellationToken);
-
-
- The channel to which this installation should subscribe.
- CancellationToken to cancel the current operation.
+
+ var push = new ParsePush();
+ push.Channels = new List<string> { channel };
+ push.Data = new Dictionary<string, object>{{"alert", alert}};
+ return push.SendAsync();
+
+
+ The alert message to send.
+ An Installation must be subscribed to channel to receive this Push Notification.
-
-
- Subscribe the current installation to these channels. This is shorthand for:
+
+
+ Pushes a simple message to every device subscribed to any of channels. This is shorthand for:
-
- var installation = ParseInstallation.CurrentInstallation;
- installation.AddRangeUniqueToList("channels", channels);
- installation.SaveAsync();
-
-
- The channels to which this installation should subscribe.
+
+ var push = new ParsePush();
+ push.Channels = channels;
+ push.Data = new Dictionary<string, object>{{"alert", alert}};
+ return push.SendAsync();
+
+
+ The alert message to send.
+ An Installation must be subscribed to any of channels to receive this Push Notification.
-
-
- Subscribe the current installation to these channels. This is shorthand for:
+
+
+ Pushes a simple message to every device matching the target query. This is shorthand for:
-
- var installation = ParseInstallation.CurrentInstallation;
- installation.AddRangeUniqueToList("channels", channels);
- installation.SaveAsync(cancellationToken);
-
-
- The channels to which this installation should subscribe.
- CancellationToken to cancel the current operation.
+
+ var push = new ParsePush();
+ push.Query = query;
+ push.Data = new Dictionary<string, object>{{"alert", alert}};
+ return push.SendAsync();
+
+
+ The alert message to send.
+ A query filtering the devices which should receive this Push Notification.
-
-
- Unsubscribe the current installation from this channel. This is shorthand for:
+
+
+ Pushes an arbitrary payload to every device. This is shorthand for:
-
- var installation = ParseInstallation.CurrentInstallation;
- installation.Remove("channels", channel);
- installation.SaveAsync();
-
-
- The channel from which this installation should unsubscribe.
+
+ var push = new ParsePush();
+ push.Data = data;
+ return push.SendAsync();
+
+
+ A push payload. See the ParsePush.Data property for more information.
-
-
- Unsubscribe the current installation from this channel. This is shorthand for:
+
+
+ Pushes an arbitrary payload to every device subscribed to channel. This is shorthand for:
-
- var installation = ParseInstallation.CurrentInstallation;
- installation.Remove("channels", channel);
- installation.SaveAsync(cancellationToken);
-
-
- The channel from which this installation should unsubscribe.
- CancellationToken to cancel the current operation.
+
+ var push = new ParsePush();
+ push.Channels = new List<string> { channel };
+ push.Data = data;
+ return push.SendAsync();
+
+
+ A push payload. See the ParsePush.Data property for more information.
+ An Installation must be subscribed to channel to receive this Push Notification.
-
-
- Unsubscribe the current installation from these channels. This is shorthand for:
+
+
+ Pushes an arbitrary payload to every device subscribed to any of channels. This is shorthand for:
-
- var installation = ParseInstallation.CurrentInstallation;
- installation.RemoveAllFromList("channels", channels);
- installation.SaveAsync();
-
-
- The channels from which this installation should unsubscribe.
+
+ var push = new ParsePush();
+ push.Channels = channels;
+ push.Data = data;
+ return push.SendAsync();
+
+
+ A push payload. See the ParsePush.Data property for more information.
+ An Installation must be subscribed to any of channels to receive this Push Notification.
-
-
- Unsubscribe the current installation from these channels. This is shorthand for:
+
+
+ Pushes an arbitrary payload to every device matching target. This is shorthand for:
-
- var installation = ParseInstallation.CurrentInstallation;
- installation.RemoveAllFromList("channels", channels);
- installation.SaveAsync(cancellationToken);
-
-
- The channels from which this installation should unsubscribe.
- CancellationToken to cancel the current operation.
+
+ var push = new ParsePush();
+ push.Query = query
+ push.Data = data;
+ return push.SendAsync();
+
+
+ A push payload. See the ParsePush.Data property for more information.
+ A query filtering the devices which should receive this Push Notification.
-
-
- Pushes a simple message to every device. This is shorthand for:
+
+
+ Subscribe the current installation to this channel. This is shorthand for:
-
- var push = new ParsePush();
- push.Data = new Dictionary<string, object>{{"alert", alert}};
- return push.SendAsync();
-
-
- The alert message to send.
+
+ var installation = ParseInstallation.CurrentInstallation;
+ installation.AddUniqueToList("channels", channel);
+ installation.SaveAsync();
+
+
+ The channel to which this installation should subscribe.
-
-
- Pushes a simple message to every device subscribed to channel. This is shorthand for:
+
+
+ Subscribe the current installation to this channel. This is shorthand for:
-
- var push = new ParsePush();
- push.Channels = new List<string> { channel };
- push.Data = new Dictionary<string, object>{{"alert", alert}};
- return push.SendAsync();
-
-
- The alert message to send.
- An Installation must be subscribed to channel to receive this Push Notification.
+
+ var installation = ParseInstallation.CurrentInstallation;
+ installation.AddUniqueToList("channels", channel);
+ installation.SaveAsync(cancellationToken);
+
+
+ The channel to which this installation should subscribe.
+ CancellationToken to cancel the current operation.
-
-
- Pushes a simple message to every device subscribed to any of channels. This is shorthand for:
+
+
+ Subscribe the current installation to these channels. This is shorthand for:
-
- var push = new ParsePush();
- push.Channels = channels;
- push.Data = new Dictionary<string, object>{{"alert", alert}};
- return push.SendAsync();
-
-
- The alert message to send.
- An Installation must be subscribed to any of channels to receive this Push Notification.
+
+ var installation = ParseInstallation.CurrentInstallation;
+ installation.AddRangeUniqueToList("channels", channels);
+ installation.SaveAsync();
+
+
+ The channels to which this installation should subscribe.
-
-
- Pushes a simple message to every device matching the target query. This is shorthand for:
+
+
+ Subscribe the current installation to these channels. This is shorthand for:
-
- var push = new ParsePush();
- push.Query = query;
- push.Data = new Dictionary<string, object>{{"alert", alert}};
- return push.SendAsync();
-
-
- The alert message to send.
- A query filtering the devices which should receive this Push Notification.
+
+ var installation = ParseInstallation.CurrentInstallation;
+ installation.AddRangeUniqueToList("channels", channels);
+ installation.SaveAsync(cancellationToken);
+
+
+ The channels to which this installation should subscribe.
+ CancellationToken to cancel the current operation.
-
-
- Pushes an arbitrary payload to every device. This is shorthand for:
+
+
+ Unsubscribe the current installation from this channel. This is shorthand for:
-
- var push = new ParsePush();
- push.Data = data;
- return push.SendAsync();
-
-
- A push payload. See the ParsePush.Data property for more information.
+
+ var installation = ParseInstallation.CurrentInstallation;
+ installation.Remove("channels", channel);
+ installation.SaveAsync();
+
+
+ The channel from which this installation should unsubscribe.
-
-
- Pushes an arbitrary payload to every device subscribed to channel. This is shorthand for:
+
+
+ Unsubscribe the current installation from this channel. This is shorthand for:
-
- var push = new ParsePush();
- push.Channels = new List<string> { channel };
- push.Data = data;
- return push.SendAsync();
-
-
- A push payload. See the ParsePush.Data property for more information.
- An Installation must be subscribed to channel to receive this Push Notification.
+
+ var installation = ParseInstallation.CurrentInstallation;
+ installation.Remove("channels", channel);
+ installation.SaveAsync(cancellationToken);
+
+
+ The channel from which this installation should unsubscribe.
+ CancellationToken to cancel the current operation.
-
-
- Pushes an arbitrary payload to every device subscribed to any of channels. This is shorthand for:
+
+
+ Unsubscribe the current installation from these channels. This is shorthand for:
-
- var push = new ParsePush();
- push.Channels = channels;
- push.Data = data;
- return push.SendAsync();
-
-
- A push payload. See the ParsePush.Data property for more information.
- An Installation must be subscribed to any of channels to receive this Push Notification.
+
+ var installation = ParseInstallation.CurrentInstallation;
+ installation.RemoveAllFromList("channels", channels);
+ installation.SaveAsync();
+
+
+ The channels from which this installation should unsubscribe.
-
-
- Pushes an arbitrary payload to every device matching target. This is shorthand for:
+
+
+ Unsubscribe the current installation from these channels. This is shorthand for:
-
- var push = new ParsePush();
- push.Query = query
- push.Data = data;
- return push.SendAsync();
-
-
- A push payload. See the ParsePush.Data property for more information.
- A query filtering the devices which should receive this Push Notification.
+
+ var installation = ParseInstallation.CurrentInstallation;
+ installation.RemoveAllFromList("channels", channels);
+ installation.SaveAsync(cancellationToken);
+
+
+ The channels from which this installation should unsubscribe.
+ CancellationToken to cancel the current operation.
@@ -582,23 +571,23 @@
- An installation query that specifies which installations shoudl receive
+ An installation query that specifies which installations should receive
this push.
This should not be used in tandem with Channels.
-
- A short-hand to set a query which only discriminates on the channels to which a device is subscribed.
- This is shorthand for:
+
+ A short-hand to set a query which only discriminates on the channels to which a device is subscribed.
+ This is shorthand for:
-
- var push = new Push();
- push.Query = ParseInstallation.Query.WhereKeyContainedIn("channels", channels);
-
+
+ var push = new Push();
+ push.Query = ParseInstallation.Query.WhereKeyContainedIn("channels", channels);
+
- This cannot be used in tandem with Query.
-
+ This cannot be used in tandem with Query.
+
@@ -624,47 +613,22 @@
-
- A conveninence method which sets Data to a dictionary with alert as its only field. Equivalent to
+
+ A conveninence method which sets Data to a dictionary with alert as its only field. Equivalent to
-
- Data = new Dictionary<string, object> {{"alert", alert}};
-
+
+ Data = new Dictionary<string, object> {{"alert", alert}};
+
- This should not be used in tandem with Data.
-
-
-
-
- Represents this app installed on this device. Use this class to track infomation you want
- to sample from (i.e. if you update a field on app launch, you can issue a query to see
- the number of devices which were active in the last N hours).
-
-
-
-
- Whether the currentInstallation is known to match the serialized version on disk.
- This is useful for saving a filesystem check if you try to load currentInstallation
- frequently while there is none on disk.
-
-
-
-
- Constructs a new ParseInstallation. Generally, you should not need to construct
- ParseInstallations yourself. Instead use .
-
+ This should not be used in tandem with Data.
+
-
+
- This mapping of Windows names to a standard everyone else uses is maintained
- by the Unicode consortium, which makes this officially the first helpful
- interaction between Unicode and Microsoft.
- Unfortunately this is a little lossy in that we only store the first mapping in each zone because
- Microsoft does not give us more granular location information.
- Built from http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/zone_tzid.html
+ An event fired when a push notification is received.
-
+
Future proofing: Right now there's only one valid channel for the app, but we will likely
want to allow additional channels for auxiliary tiles (i.e. a contacts app can have a new
@@ -674,80 +638,24 @@
Unsed variable warnings are suppressed becaue this const is used in WinRT and WinPhone but not NetFx.
-
+
Gets an attribute from the Windows Phone App Manifest App element
the attribute name
the attribute value
+ This is a duplicate of what we have in ParseInstallation. We do it because
+ it's easier to maintain this way (rather than referencing PlatformHooks everywhere).
-
-
- Gets the ParseInstallation representing this app on this device.
-
-
-
-
- Constructs a for ParseInstallations.
-
-
- Only the following types of queries are allowed for installations:
-
-
- query.GetAsync(objectId)
- query.WhereEqualTo(key, value)
- query.WhereMatchesKeyInQuery<TOther>(key, keyInQuery, otherQuery)
-
-
- You can add additional query conditions, but one of the above must appear as a top-level AND
- clause in the query.
-
-
-
-
- A GUID that uniquely names this app installed on this device.
-
-
-
-
- The time zone in which this device resides. This string is in the tz database format
- Parse uses for local-time pushes. Due to platform restrictions, the mapping is less
- granular on Windows than it may be on other systems. E.g. The zones
- America/Vancouver America/Dawson America/Whitehorse, America/Tijuana, PST8PDT, and
- America/Los_Angeles are all reported as America/Los_Angeles.
-
-
-
-
- The version of the Parse SDK used to build this application.
-
-
-
-
- A sequence of arbitrary strings which are used to identify this installation for push notifications.
- By convention, the empty string is known as the "Broadcast" channel.
-
-
-
-
- The runtime target of this application. Is one of winrt, winphone, or dotnet.
-
-
-
-
- The user-friendly display name of this application.
-
-
-
+
- The system-dependent unique identifier of this installation. This identifier should be
- sufficient to distinctly name an app on stores which may allow multiple apps with the
- same display name.
+ Provides a dictionary that gets persisted on the filesystem between runs of the app.
+ This is analogous to NSUserDefaults in iOS.
-
+
- A version string consisting of Major.Minor.Build.Revision.
+ Wraps the custom settings object for Parse so that it can be exposed as ApplicationSettings.
diff --git a/src/wp8/parse/Parse.dll b/src/wp8/parse/Parse.dll
index a7d32fff..b03667ad 100644
Binary files a/src/wp8/parse/Parse.dll and b/src/wp8/parse/Parse.dll differ
diff --git a/src/wp8/parse/Parse.xml b/src/wp8/parse/Parse.xml
index c3709e5a..719c6aea 100644
--- a/src/wp8/parse/Parse.xml
+++ b/src/wp8/parse/Parse.xml
@@ -4,6 +4,37 @@
Parse
+
+
+ Executes and convert the result into Dictionary.
+
+ The command to be run.
+ Upload progress callback.
+ Download progress callback.
+ The cancellation token for the request.
+
+
+
+
+ ParseCommand is an with pre-populated
+ headers.
+
+
+
+
+ IHttpRequest
is an interface that provides an API to execute HTTP request data.
+
+
+
+
+ Data stream to be uploaded.
+
+
+
+
+ HTTP method. One of DELETE, GET, HEAD, POST or PUT
+
+
Authenticates with the service.
@@ -42,7 +73,7 @@
Provides a Dictionary implementation that can delegate to any other
- dictionary, regardless of its value type. Used for coercion of
+ dictionary, regardless of its value type. Used for coercion of
dictionaries when returning them to users.
The resulting type of value in the dictionary.
@@ -51,7 +82,7 @@
Provides a List implementation that can delegate to any other
- list, regardless of its value type. Used for coercion of
+ list, regardless of its value type. Used for coercion of
lists when returning them to users.
The resulting type of value in the list.
@@ -64,6 +95,91 @@
ISets and IDictionaries.
+
+
+ Executes HTTP request to a with HTTP verb
+ and .
+
+ The HTTP request to be executed.
+ Upload progress callback.
+ Download progress callback.
+ The cancellation token.
+ A task that resolves to Htt
+
+
+
+ Represents an object that can be converted into JSON.
+
+
+
+
+ Converts the object to a data structure that can be converted to JSON.
+
+ An object to be JSONified.
+
+
+
+ Sets current installationId
and saves it to local storage.
+
+ The installationId
to be saved.
+
+
+
+ Gets current installationId
from local storage. Generates a none exists.
+
+ Current installationid
.
+
+
+
+ Clears current installationId from memory and local storage.
+
+
+
+
+ IParseObjectCurrentController
controls the single-instance
+ persistence used throughout the code-base. Sample usages are and
+ .
+
+ Type of object being persisted.
+
+
+
+ Persists current .
+
+ to be persisted.
+ The cancellation token.
+
+
+
+ Gets the persisted current .
+
+ The cancellation token.
+
+
+
+ Returns a that resolves to true
if current
+ exists.
+
+ The cancellation token.
+
+
+
+ Returns true
if the given is the persisted current
+ .
+
+ The object to check.
+ True if obj
is the current persisted .
+
+
+
+ Nullifies the current from memory.
+
+
+
+
+ Clears current from disk.
+
+
Provides helper methods that allow us to use terser code elsewhere.
@@ -114,7 +230,7 @@
A ParseFieldOperation represents a modification to a value in a ParseObject.
For example, setting, deleting, or incrementing a value are all different kinds of
- ParseFieldOperations. ParseFieldOperations themselves can be considered to be
+ ParseFieldOperations. ParseFieldOperations themselves can be considered to be
immutable.
@@ -138,9 +254,9 @@
The most recent operation on the field, or null if none.
A new ParseFieldOperation or this.
-
+
- Returns a new estimated value based on a previous value and this operation. This
+ Returns a new estimated value based on a previous value and this operation. This
value is not intended to be sent to Parse, but it is used locally on the client to
inspect the most likely current value for a field.
@@ -148,10 +264,22 @@
that refer back to their parents.
The previous value for the field.
- The object that contains this value.
The key that this value is for.
The new value for the field.
+
+
+ Executes platform specific hook that mutate the installation based on
+ the device platforms.
+
+ Installation to be mutated.
+
+
+
+
+ A thread-safe dictionary that persists key-value pair objects to disk.
+
+
A simple recursive-descent JSON Parser based on the grammar defined at http://www.json.org
@@ -191,48 +319,77 @@
Encodes an object into a JSON string.
-
+
Parses JSON object syntax (e.g. '{}')
-
+
Parses JSON member syntax (e.g. '"keyname" : null')
-
+
Parses JSON array syntax (e.g. '[]')
-
+
Parses a value (i.e. the right-hand side of an object member assignment or
an element in an array)
-
+
Parses a JSON string (e.g. '"foo\u1234bar\n"')
-
+
Parses a number. Returns a long if the number is an integer or has an exponent,
otherwise returns a double.
-
+
Matches the string to a regex, consuming part of the string and returning the match.
+
+
+ Find the first occurences of a character, consuming part of the string.
+
+
+
+
+ Find the first occurences of a string, consuming part of the string.
+
+
+
+
+ A that throws an exception if it attempts to encode
+ a
+
+
+
+
+ A ParseEncoder can be used to transform objects such as into JSON
+ data structures.
+
+
+
An operation where a field is deleted from the object.
+
+
+ A that encode as pointers. If the object
+ does not have an , uses a local id.
+
+
The ParseConfig is a representation of the remote configuration object,
@@ -331,7 +488,7 @@
- We only need to keep the tail of the queue. Cancelled tasks will
+ We only need to keep the tail of the queue. Cancelled tasks will
just complete normally/immediately when their turn arrives.
@@ -349,7 +506,7 @@
- Enqueues a task created by . If the task is
+ Enqueues a task created by . If the task is
cancellable (or should be able to be cancelled while it is waiting in the
queue), pass a cancellationToken.
@@ -441,12 +598,6 @@
The progress callback.
The cancellation token.
-
-
- A list of file extensions to mime types as found here:
- http://stackoverflow.com/questions/58510/using-net-how-can-you-find-the-mime-type-of-a-file-based-on-the-file-signature
-
-
Gets whether the file still needs to be saved.
@@ -454,1451 +605,1563 @@
- Gets the name of the file. Before save is called, this is the filename given by
- the user. After save is called, that name gets prefixed with a unique identifier.
+ Gets the name of the file. Before save is called, this is the filename given by
+ the user. After save is called, that name gets prefixed with a unique identifier.
- Gets the MIME type of the file. This is either passed in to the constructor or
- inferred from the file extension. "unknown/unknown" will be used if neither is
+ Gets the MIME type of the file. This is either passed in to the constructor or
+ inferred from the file extension. "unknown/unknown" will be used if neither is
available.
- Gets the url of the file. It is only available after you save the file or after
+ Gets the url of the file. It is only available after you save the file or after
you get the file from a .
-
+
- Provides extension methods for to support
- Linq-style queries.
+ Represents download progress.
-
+
- Gets a MethodInfo for a top-level method call.
+ Gets the progress (a number between 0.0 and 1.0) of a download.
-
+
- When a query is normalized, this is a placeholder to indicate we should
- add a WhereContainedIn() clause.
+ Represents this app installed on this device. Use this class to track infomation you want
+ to sample from (i.e. if you update a field on app launch, you can issue a query to see
+ the number of devices which were active in the last N hours).
-
+
- When a query is normalized, this is a placeholder to indicate we should
- add a WhereNotContainedIn() clause.
+ The ParseObject is a local representation of data that can be saved and
+ retrieved from the Parse cloud.
+
+
+ The basic workflow for creating new data is to construct a new ParseObject,
+ use the indexer to fill it with data, and then use SaveAsync() to persist to the
+ database.
+
+
+ The basic workflow for accessing existing data is to use a ParseQuery
+ to specify which existing data to retrieve.
+
+
+
+
+
+ Constructor for use in ParseObject subclasses. Subclasses must specify a ParseClassName attribute.
-
+
- When a query is normalized, this is a placeholder to indicate that we should
- add a WhereExists() clause.
+ Constructs a new ParseObject with no data in it. A ParseObject constructed in this way will
+ not have an ObjectId and will not persist to the database until
+ is called.
+
+ Class names must be alphanumerical plus underscore, and start with a letter. It is recommended
+ to name classes in CamelCaseLikeThis.
+
+ The className for this ParseObject.
-
+
- When a query is normalized, this is a placeholder to indicate that we should
- add a WhereDoesNotExist() clause.
+ Creates a new ParseObject based upon a class name. If the class name is a special type (e.g.
+ for ), then the appropriate type of ParseObject is returned.
+ The class of object to create.
+ A new ParseObject for the given class name.
-
+
- Evaluates an expression and throws if the expression has components that can't be
- evaluated (e.g. uses the parameter that's only represented by an object on the server).
+ Creates a reference to an existing ParseObject for use in creating associations between
+ ParseObjects. Calling on this object will return
+ false until has been called.
+ No network request will be made.
+ The object's class.
+ The object id for the referenced object.
+ A ParseObject without data.
-
+
- Checks whether the MethodCallExpression is a call to ParseObject.Get(),
- which is the call we normalize all indexing into the ParseObject to.
+ Creates a new ParseObject based upon a given subclass type.
+ A new ParseObject for the given class name.
-
+
- Converts a normalized method call expression into the appropriate ParseQuery clause.
+ Creates a reference to an existing ParseObject for use in creating associations between
+ ParseObjects. Calling on this object will return
+ false until has been called.
+ No network request will be made.
+ The object id for the referenced object.
+ A ParseObject without data.
-
+
- Converts a normalized binary expression into the appropriate ParseQuery clause.
+ Sets the value of a property based upon its associated ParseFieldName attribute.
+ The new value.
+ The name of the property.
+ The type for the property.
-
+
- Filters a query based upon the predicate provided.
+ Gets a relation for a property based upon its associated ParseFieldName attribute.
- The type of ParseObject being queried for.
- The base to which
- the predicate will be added.
- A function to test each ParseObject for a condition.
- The predicate must be able to be represented by one of the standard Where
- functions on ParseQuery
- A new ParseQuery whose results will match the given predicate as
- well as the source's filters.
+ The ParseRelation for the property.
+ The name of the property.
+ The ParseObject subclass type of the ParseRelation.
-
+
- Normalizes an OrderBy's keySelector expression and then extracts the path
- from the ParseObject.Get() call.
+ Gets the value of a property based upon its associated ParseFieldName attribute.
+ The value of the property.
+ The name of the property.
+ The return type of the property.
-
+
- Orders a query based upon the key selector provided.
+ Gets the value of a property based upon its associated ParseFieldName attribute.
- The type of ParseObject being queried for.
- The type of key returned by keySelector.
- The query to order.
- A function to extract a key from the ParseObject.
- A new ParseQuery based on source whose results will be ordered by
- the key specified in the keySelector.
+ The value of the property.
+ The value to return if the property is not present on the ParseObject.
+ The name of the property.
+ The return type of the property.
-
+
- Orders a query based upon the key selector provided.
+ Allows subclasses to set values for non-pointer construction.
- The type of ParseObject being queried for.
- The type of key returned by keySelector.
- The query to order.
- A function to extract a key from the ParseObject.
- A new ParseQuery based on source whose results will be ordered by
- the key specified in the keySelector.
-
+
- Performs a subsequent ordering of a query based upon the key selector provided.
+ Gets the appropriate factory for the given class name. If there is no factory for the class,
+ a factory that produces a regular ParseObject will be created.
- The type of ParseObject being queried for.
- The type of key returned by keySelector.
- The query to order.
- A function to extract a key from the ParseObject.
- A new ParseQuery based on source whose results will be ordered by
- the key specified in the keySelector.
+ The class name for the ParseObjects the factory will create.
+
-
+
- Performs a subsequent ordering of a query based upon the key selector provided.
+ Registers a custom subclass type with the Parse SDK, enabling strong-typing of those ParseObjects whenever
+ they appear. Subclasses must specify the ParseClassName attribute, have a default constructor, and properties
+ backed by ParseObject fields should have ParseFieldName attributes supplied.
- The type of ParseObject being queried for.
- The type of key returned by keySelector.
- The query to order.
- A function to extract a key from the ParseObject.
- A new ParseQuery based on source whose results will be ordered by
- the key specified in the keySelector.
+ The ParseObject subclass type to register.
-
+
- Correlates the elements of two queries based on matching keys.
+ Clears any changes to this object made since the last call to .
- The type of ParseObjects of the first query.
- The type of ParseObjects of the second query.
- The type of the keys returned by the key selector
- functions.
- The type of the result. This must match either
- TOuter or TInner
- The first query to join.
- The query to join to the first query.
- A function to extract a join key from the results of
- the first query.
- A function to extract a join key from the results of
- the second query.
- A function to select either the outer or inner query
- result to determine which query is the base query.
- A new ParseQuery with a WhereMatchesQuery or WhereMatchesKeyInQuery
- clause based upon the query indicated in the .
-
+
- Visits an Expression, converting ParseObject.Get/ParseObject[]/ParseObject.Property,
- and nested indices into a single call to ParseObject.Get() with a "field path" like
- "foo.bar.baz"
+ Updates the JSON cache value for the given object.
-
+
- Check for a ParseFieldName attribute and use that as the path component, turning
- properties like foo.ObjectId into foo.Get("objectId")
+ Inspects to see if a given mutable container owned by this object has
+ been mutated, and treats any mutation as a new "set" operation.
-
+
- If a ParseObject.Get() call has been cast, just change the generic parameter.
+ Inspects to see if any mutable container owned by this object has been mutated, and
+ treats any mutation as a new 'Set' operation.
-
+
- Normalizes Where expressions.
+ Flattens dictionaries and lists into a single enumerable of all contained objects
+ that can then be queried over.
+ The root of the traversal
+ Whether to traverse into ParseObjects' children
+ Whether to include the root in the result
+
-
+
- Normalizes binary operators. <, >, <=, >= !=, and ==
- This puts the ParseObject.Get() on the left side of the operation
- (reversing it if necessary), and normalizes the ParseObject.Get()
+ Deep traversal of this object to grab a copy of any object referenced by this object.
+ These instances may have already been fetched, and we don't want to lose their data when
+ refreshing or saving.
+ Map of objectId to ParseObject which have been fetched.
-
+
- If a ! operator is used, this removes the ! and instead calls the equivalent
- function (so e.g. == becomes !=, < becomes >=, Contains becomes NotContains)
+ Pushes new operations onto the queue and returns the current set of operations.
-
+
- Normalizes .Equals into == and Contains() into the appropriate stub.
+ Saves this object to the server.
-
+
- A ParseACL is used to control which users and roles can access or modify a particular object. Each
- can have its own ParseACL. You can grant read and write permissions
- separately to specific users, to groups of users that belong to roles, or you can grant permissions
- to "the public" so that, for example, any user could read a particular object but only a particular
- set of users could write to that object.
+ Saves this object to the server.
+ The cancellation token.
-
+
- Creates an ACL with no permissions granted.
+ Saves each object in the provided list.
+ The objects to save.
-
+
- Creates an ACL where only the provided user has access.
+ Saves each object in the provided list.
- The only user that can read or write objects governed by this ACL.
+ The objects to save.
+ The cancellation token.
-
+
- Sets whether the given user id is allowed to read this object.
+ Fetches this object with the data from the server.
- The objectId of the user.
- Whether the user has permission.
+ The cancellation token.
-
+
- Sets whether the given user is allowed to read this object.
+ If this ParseObject has not been fetched (i.e. returns
+ false), fetches this object with the data from the server.
- The user.
- Whether the user has permission.
+ The cancellation token.
-
+
- Sets whether the given user id is allowed to write this object.
+ Fetches all of the objects that don't have data in the provided list.
- The objectId of the user.
- Whether the user has permission.
+ The list passed in for convenience.
-
+
- Sets whether the given user is allowed to write this object.
+ Fetches all of the objects that don't have data in the provided list.
- The user.
- Whether the user has permission.
+ The objects to fetch.
+ The cancellation token.
+ The list passed in for convenience.
-
+
- Gets whether the given user id is *explicitly* allowed to read this object.
- Even if this returns false, the user may still be able to read it if
- PublicReadAccess is true or a role that the user belongs to has read access.
+ Fetches all of the objects in the provided list.
- The user objectId to check.
- Whether the user has access.
+ The objects to fetch.
+ The list passed in for convenience.
-
+
- Gets whether the given user is *explicitly* allowed to read this object.
- Even if this returns false, the user may still be able to read it if
- PublicReadAccess is true or a role that the user belongs to has read access.
+ Fetches all of the objects in the provided list.
- The user to check.
- Whether the user has access.
+ The objects to fetch.
+ The cancellation token.
+ The list passed in for convenience.
-
+
- Gets whether the given user id is *explicitly* allowed to write this object.
- Even if this returns false, the user may still be able to write it if
- PublicReadAccess is true or a role that the user belongs to has write access.
+ Fetches all of the objects in the list.
- The user objectId to check.
- Whether the user has access.
+ The objects to fetch.
+ If false, only objects without data will be fetched.
+ A task to await before starting.
+ The cancellation token.
+ The list passed in for convenience.
-
+
- Gets whether the given user is *explicitly* allowed to write this object.
- Even if this returns false, the user may still be able to write it if
- PublicReadAccess is true or a role that the user belongs to has write access.
+ Deletes this object on the server.
- The user to check.
- Whether the user has access.
-
+
- Sets whether users belonging to the role with the given
- are allowed to read this object.
+ Deletes this object on the server.
- The name of the role.
- Whether the role has access.
+ The cancellation token.
-
+
- Sets whether users belonging to the given role are allowed to read this object.
+ Deletes each object in the provided list.
- The role.
- Whether the role has access.
+ The objects to delete.
-
+
- Gets whether users belonging to the role with the given
- are allowed to read this object. Even if this returns false, the role may still be
- able to read it if a parent role has read access.
+ Deletes each object in the provided list.
- The name of the role.
- Whether the role has access.
+ The objects to delete.
+ The cancellation token.
-
+
- Gets whether users belonging to the role are allowed to read this object.
- Even if this returns false, the role may still be able to read it if a
- parent role has read access.
+ Helper version of CollectDirtyChildren so that callers don't have to add the internally
+ used parameters.
- The name of the role.
- Whether the role has access.
-
+
- Sets whether users belonging to the role with the given
- are allowed to write this object.
+ Returns true if the given object can be serialized for saving as a value
+ that is pointed to by a ParseObject.
- The name of the role.
- Whether the role has access.
-
+
- Sets whether users belonging to the given role are allowed to write this object.
+ Adds a task to the queue for all of the given objects.
- The role.
- Whether the role has access.
-
+
- Gets whether users belonging to the role with the given
- are allowed to write this object. Even if this returns false, the role may still be
- able to write it if a parent role has write access.
+ Removes a key from the object's data if it exists.
- The name of the role.
- Whether the role has access.
+ The key to remove.
-
+
- Gets whether users belonging to the role are allowed to write this object.
- Even if this returns false, the role may still be able to write it if a
- parent role has write access.
+ Regenerates the estimatedData map from the serverData and operations.
- The name of the role.
- Whether the role has access.
-
+
- Gets or sets whether the public is allowed to read this object.
+ PerformOperation is like setting a value at an index, but instead of
+ just taking a new value, it takes a ParseFieldOperation that modifies the value.
-
+
- Gets or sets whether the public is allowed to write this object.
+ Override to run validations on key/value pairs. Make sure to still
+ call the base version.
-
+
- ParseClient contains static functions that handle global
- configuration for the Parse library.
+ Perform Set internally which is not gated by mutability check.
+ key for the object.
+ the value for the key.
-
+
- Authenticates this client as belonging to your application. This must be
- called before your application can use the Parse library. The recommended
- way is to put a call to ParseFramework.Initialize in your
- Application startup.
+ Atomically increments the given key by 1.
- The Application ID provided in the Parse dashboard.
-
- The .NET API Key provided in the Parse dashboard.
-
+ The key to increment.
-
+
- Convenience alias for RequestAsync that takes a string instead of a Uri.
+ Atomically increments the given key by the given number.
+ The key to increment.
+ The amount to increment by.
-
+
- The main mechanism for making requests to Parse. Attaches headers related to
- the SDK, session token, etc., then JSON-parses the result of the request and throws
- a ParseException if necessary.
+ Atomically increments the given key by the given number.
- The HTTP method to use.
- A relative URI for the API.
- The session token for the request.
- A JSON-style data object that will be stringified
- for the request body.
- The cancellation token for the request.
- A tuple indicating the HTTP status code and the JSON data
- returned by the request.
+ The key to increment.
+ The amount to increment by.
-
+
- Performs an upload that reports progress.
+ Atomically adds an object to the end of the list associated with the given key.
+ The key.
+ The object to add.
-
+
- Performs a ConvertTo, but returns null if the object can't be
- converted to that type.
+ Atomically adds objects to the end of the list associated with the given key.
+ The key.
+ The objects to add.
-
+
- Converts a value to the requested type -- coercing primitives to
- the desired type, wrapping lists and dictionaries appropriately,
- or else passing the object along to the caller unchanged.
-
- This should be used on any containers that might be coming from a
- user to normalize the collection types. Collection types coming from
- JSON deserialization can be safely assumed to be lists or dictionaries of
- objects.
+ Atomically adds an object to the end of the list associated with the given key,
+ only if it is not already present in the list. The position of the insert is not
+ guaranteed.
+ The key.
+ The object to add.
-
+
- Holds a dictionary that maps a cache of interface types for related concrete types.
- The lookup is slow the first time for each type because it has to enumerate all interface
- on the object type, but made fast by the cache.
-
- The map is:
- (object type, generic interface type) => constructed generic type
+ Atomically adds objects to the end of the list associated with the given key,
+ only if they are not already present in the list. The position of the inserts are not
+ guaranteed.
+ The key.
+ The objects to add.
-
+
- Flattens dictionaries and lists into a single enumerable of all contained objects
- that can then be queried over.
+ Atomically removes all instances of the objects in
+ from the list associated with the given key.
- The root of the traversal
- Whether to traverse into ParseObjects' children
- Whether to include the root in the result
-
+ The key.
+ The objects to remove.
-
+
- The ParseCloud class provides methods for interacting with Parse Cloud Functions.
+ Returns whether this object has a particular key.
-
- For example, this sample code calls the
- "validateGame" Cloud Function and calls processResponse if the call succeeded
- and handleError if it failed.
-
-
- var result =
- await ParseCloud.CallFunctionAsync<IDictionary<string, object>>("validateGame", parameters);
-
-
+ The key to check for
-
+
- Calls a cloud function.
+ Gets a value for the key of a particular type.
+ The type to convert the value to. Supported types are
+ ParseObject and its descendents, Parse types such as ParseRelation and ParseGeopoint,
+ primitive types,IList<T>, IDictionary<string, T>, and strings.
+ The key of the element to get.
+ The property is
+ retrieved and is not found.
- The type of data you will receive from the cloud function. This
- can be an IDictionary, string, IList, ParseObject, or any other type supported by
- ParseObject.
- The cloud function to call.
- The parameters to send to the cloud function. This
- dictionary can contain anything that could be passed into a ParseObject except for
- ParseObjects themselves.
- The result of the cloud call.
-
+
- Calls a cloud function.
+ Access or create a Relation value for a key.
- The type of data you will receive from the cloud function. This
- can be an IDictionary, string, IList, ParseObject, or any other type supported by
- ParseObject.
- The cloud function to call.
- The parameters to send to the cloud function. This
- dictionary can contain anything that could be passed into a ParseObject except for
- ParseObjects themselves.
- The cancellation token.
- The result of the cloud call.
+ The type of object to create a relation for.
+ The key for the relation field.
+ A ParseRelation for the key.
-
+
- Exceptions that may occur when sending requests to Parse.
+ Populates result with the value for the key, if possible.
+ The desired type for the value.
+ The key to retrieve a value for.
+ The value for the given key, converted to the
+ requested type, or null if unsuccessful.
+ true if the lookup and conversion succeeded, otherwise
+ false.
-
+
- The Parse error code associated with the exception.
+ A helper function for checking whether two ParseObjects point to
+ the same object in the cloud.
-
+
- Error codes that may be delivered in response to requests to Parse.
+ Indicates whether key is unsaved for this ParseObject.
+ The key to check for.
+ true if the key has been altered and not saved yet, otherwise
+ false.
-
+
- Error code indicating that an unknown error or an error unrelated to Parse
- occurred.
+ Sets the objectId without marking dirty.
+ The new objectId
-
+
- Error code indicating that something has gone wrong with the server.
- If you get this error code, it is Parse's fault. Please report the bug to
- https://parse.com/help.
+ Adds a value for the given key, throwing an Exception if the key
+ already has a value.
+
+ This allows you to use collection initialization syntax when creating ParseObjects,
+ such as:
+
+ var obj = new ParseObject("MyType")
+ {
+ {"name", "foo"},
+ {"count", 10},
+ {"found", false}
+ };
+
+
+ The key for which a value should be set.
+ The value for the key.
-
+
- Error code indicating the connection to the Parse servers failed.
+ Gets a for the type of object specified by
+
+ The class name of the object.
+ A new .
-
+
- Error code indicating the specified object doesn't exist.
+ Raises change notifications for all properties associated with the given
+ field names. If fieldNames is null, this will notify for all known field-linked
+ properties (e.g. this happens when we recalculate all estimated data from scratch)
-
+
- Error code indicating you tried to query with a datatype that doesn't
- support it, like exact matching an array or object.
+ Raises change notifications for a property. Passing null or the empty string
+ notifies the binding framework that all properties/indexes have changed.
+ Passing "Item[]" tells the binding framework that all indexed values
+ have changed (but not all properties)
-
+
- Error code indicating a missing or invalid classname. Classnames are
- case-sensitive. They must start with a letter, and a-zA-Z0-9_ are the
- only valid characters.
+ Gets or sets a value on the object. It is recommended to name
+ keys in partialCamelCaseLikeThis.
+ The key for the object. Keys must be alphanumeric plus underscore
+ and start with a letter.
+ The property is
+ retrieved and is not found.
+ The value for the key.
-
+
- Error code indicating an unspecified object id.
+ Gets whether the ParseObject has been fetched.
-
+
- Error code indicating an invalid key name. Keys are case-sensitive. They
- must start with a letter, and a-zA-Z0-9_ are the only valid characters.
+ Gets a set view of the keys contained in this object. This does not include createdAt,
+ updatedAt, or objectId. It does include things like username and ACL.
-
+
- Error code indicating a malformed pointer. You should not see this unless
- you have been mucking about changing internal Parse code.
+ Gets or sets the ParseACL governing this object.
-
+
- Error code indicating that badly formed JSON was received upstream. This
- either indicates you have done something unusual with modifying how
- things encode to JSON, or the network is failing badly.
+ Returns true if this object was created by the Parse server when the
+ object might have already been there (e.g. in the case of a Facebook
+ login)
-
+
- Error code indicating that the feature you tried to access is only
- available internally for testing purposes.
+ Gets the last time this object was updated as the server sees it, so that if you make changes
+ to a ParseObject, then wait a while, and then call , the updated time
+ will be the time of the call rather than the time the object was
+ changed locally.
-
+
- You must call Parse.initialize before using the Parse library.
+ Gets the first time this object was saved as the server sees it, so that if you create a
+ ParseObject, then wait a while, and then call , the
+ creation time will be the time of the first call rather than
+ the time the object was created locally.
-
+
- Error code indicating that a field was set to an inconsistent type.
+ Indicates whether this ParseObject has unsaved changes.
-
+
- Error code indicating an invalid channel name. A channel name is either
- an empty string (the broadcast channel) or contains only a-zA-Z0-9_
- characters and starts with a letter.
+ Gets or sets the object id. An object id is assigned as soon as an object is
+ saved to the server. The combination of a and an
+ uniquely identifies an object in your application.
-
+
- Error code indicating that push is misconfigured.
+ Gets the class name for the ParseObject.
-
+
- Error code indicating that the object is too large.
+ Gets the set of fieldName->propertyName mappings for the current class.
-
+
- Error code indicating that the operation isn't allowed for clients.
+ Occurs when a property value changes.
-
+
- Error code indicating the result was not found in the cache.
+ Constructs a new ParseInstallation. Generally, you should not need to construct
+ ParseInstallations yourself. Instead use .
-
+
- Error code indicating that an invalid key was used in a nested
- JSONObject.
+ Gets the locale identifier in the format: [language code]-[COUNTRY CODE].
+ The locale identifier in the format: [language code]-[COUNTRY CODE].
-
+
- Error code indicating that an invalid filename was used for ParseFile.
- A valid file name contains only a-zA-Z0-9_. characters and is between 1
- and 128 characters.
+ This mapping of Windows names to a standard everyone else uses is maintained
+ by the Unicode consortium, which makes this officially the first helpful
+ interaction between Unicode and Microsoft.
+ Unfortunately this is a little lossy in that we only store the first mapping in each zone because
+ Microsoft does not give us more granular location information.
+ Built from http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/zone_tzid.html
-
+
- Error code indicating an invalid ACL was provided.
+ Gets the ParseInstallation representing this app on this device.
-
+
- Error code indicating that the request timed out on the server. Typically
- this indicates that the request is too expensive to run.
+ Constructs a for ParseInstallations.
+
+ Only the following types of queries are allowed for installations:
+
+
+ query.GetAsync(objectId)
+ query.WhereEqualTo(key, value)
+ query.WhereMatchesKeyInQuery<TOther>(key, keyInQuery, otherQuery)
+
+
+ You can add additional query conditions, but one of the above must appear as a top-level AND
+ clause in the query.
+
-
+
- Error code indicating that the email address was invalid.
+ A GUID that uniquely names this app installed on this device.
-
+
- Error code indicating that a unique field was given a value that is
- already taken.
+ The runtime target of this installation object.
-
+
- Error code indicating that a role's name is invalid.
+ The user-friendly display name of this application.
-
+
- Error code indicating that an application quota was exceeded. Upgrade to
- resolve.
+ A version string consisting of Major.Minor.Build.Revision.
-
+
- Error code indicating that a Cloud Code script failed.
+ The system-dependent unique identifier of this installation. This identifier should be
+ sufficient to distinctly name an app on stores which may allow multiple apps with the
+ same display name.
-
+
- Error code indicating that a Cloud Code validation failed.
+ The time zone in which this device resides. This string is in the tz database format
+ Parse uses for local-time pushes. Due to platform restrictions, the mapping is less
+ granular on Windows than it may be on other systems. E.g. The zones
+ America/Vancouver America/Dawson America/Whitehorse, America/Tijuana, PST8PDT, and
+ America/Los_Angeles are all reported as America/Los_Angeles.
-
+
- Error code indicating that deleting a file failed.
+ The users locale. This field gets automatically populated by the SDK.
+ Can be null (Parse Push uses default language in this case).
-
+
- Error code indicating that the application has exceeded its request limit.
+ The version of the Parse SDK used to build this application.
-
+
- Error code indicating that the provided event name is invalid.
+ A sequence of arbitrary strings which are used to identify this installation for push notifications.
+ By convention, the empty string is known as the "Broadcast" channel.
-
+
- Error code indicating that the username is missing or empty.
+ A wrapper around Parse push notification payload.
-
+
- Error code indicating that the password is missing or empty.
+ The payload of the push notification as IDictionary.
-
+
- Error code indicating that the username has already been taken.
+ The payload of the push notification as string.
-
+
- Error code indicating that the email has already been taken.
+ Provides extension methods for to support
+ Linq-style queries.
-
+
- Error code indicating that the email is missing, but must be specified.
+ Gets a MethodInfo for a top-level method call.
-
+
- Error code indicating that a user with the specified email was not found.
+ When a query is normalized, this is a placeholder to indicate we should
+ add a WhereContainedIn() clause.
-
+
- Error code indicating that a user object without a valid session could
- not be altered.
+ When a query is normalized, this is a placeholder to indicate we should
+ add a WhereNotContainedIn() clause.
-
+
- Error code indicating that a user can only be created through signup.
+ When a query is normalized, this is a placeholder to indicate that we should
+ add a WhereExists() clause.
-
+
- Error code indicating that an an account being linked is already linked
- to another user.
+ When a query is normalized, this is a placeholder to indicate that we should
+ add a WhereDoesNotExist() clause.
-
+
- Error code indicating that the current session token is invalid.
+ Evaluates an expression and throws if the expression has components that can't be
+ evaluated (e.g. uses the parameter that's only represented by an object on the server).
-
+
- Error code indicating that a user cannot be linked to an account because
- that account's id could not be found.
+ Checks whether the MethodCallExpression is a call to ParseObject.Get(),
+ which is the call we normalize all indexing into the ParseObject to.
-
+
- Error code indicating that a user with a linked (e.g. Facebook) account
- has an invalid session.
+ Converts a normalized method call expression into the appropriate ParseQuery clause.
-
+
- Error code indicating that a service being linked (e.g. Facebook or
- Twitter) is unsupported.
+ Converts a normalized binary expression into the appropriate ParseQuery clause.
-
+
- Provides convenience extension methods for working with collections
- of ParseObjects so that you can easily save and fetch them in batches.
+ Filters a query based upon the predicate provided.
+ The type of ParseObject being queried for.
+ The base to which
+ the predicate will be added.
+ A function to test each ParseObject for a condition.
+ The predicate must be able to be represented by one of the standard Where
+ functions on ParseQuery
+ A new ParseQuery whose results will match the given predicate as
+ well as the source's filters.
-
+
- Saves all of the ParseObjects in the enumeration. Equivalent to
- calling .
+ Normalizes an OrderBy's keySelector expression and then extracts the path
+ from the ParseObject.Get() call.
- The objects to save.
-
+
- Saves all of the ParseObjects in the enumeration. Equivalent to
- calling
- .
+ Orders a query based upon the key selector provided.
- The objects to save.
- The cancellation token.
+ The type of ParseObject being queried for.
+ The type of key returned by keySelector.
+ The query to order.
+ A function to extract a key from the ParseObject.
+ A new ParseQuery based on source whose results will be ordered by
+ the key specified in the keySelector.
-
+
- Fetches all of the objects in the enumeration. Equivalent to
- calling .
+ Orders a query based upon the key selector provided.
- The objects to save.
+ The type of ParseObject being queried for.
+ The type of key returned by keySelector.
+ The query to order.
+ A function to extract a key from the ParseObject.
+ A new ParseQuery based on source whose results will be ordered by
+ the key specified in the keySelector.
-
+
- Fetches all of the objects in the enumeration. Equivalent to
- calling
- .
+ Performs a subsequent ordering of a query based upon the key selector provided.
- The objects to fetch.
- The cancellation token.
+ The type of ParseObject being queried for.
+ The type of key returned by keySelector.
+ The query to order.
+ A function to extract a key from the ParseObject.
+ A new ParseQuery based on source whose results will be ordered by
+ the key specified in the keySelector.
-
+
- Fetches all of the objects in the enumeration that don't already have
- data. Equivalent to calling
- .
+ Performs a subsequent ordering of a query based upon the key selector provided.
- The objects to fetch.
+ The type of ParseObject being queried for.
+ The type of key returned by keySelector.
+ The query to order.
+ A function to extract a key from the ParseObject.
+ A new ParseQuery based on source whose results will be ordered by
+ the key specified in the keySelector.
-
+
- Fetches all of the objects in the enumeration that don't already have
- data. Equivalent to calling
- .
+ Correlates the elements of two queries based on matching keys.
- The objects to fetch.
- The cancellation token.
+ The type of ParseObjects of the first query.
+ The type of ParseObjects of the second query.
+ The type of the keys returned by the key selector
+ functions.
+ The type of the result. This must match either
+ TOuter or TInner
+ The first query to join.
+ The query to join to the first query.
+ A function to extract a join key from the results of
+ the first query.
+ A function to extract a join key from the results of
+ the second query.
+ A function to select either the outer or inner query
+ result to determine which query is the base query.
+ A new ParseQuery with a WhereMatchesQuery or WhereMatchesKeyInQuery
+ clause based upon the query indicated in the .
-
+
- Constructs a query that is the or of the given queries.
+ Visits an Expression, converting ParseObject.Get/ParseObject[]/ParseObject.Property,
+ and nested indices into a single call to ParseObject.Get() with a "field path" like
+ "foo.bar.baz"
- The type of ParseObject being queried.
- An initial query to 'or' with additional queries.
- The list of ParseQueries to 'or' together.
- A query that is the or of the given queries.
-
+
- Fetches this object with the data from the server.
+ Check for a ParseFieldName attribute and use that as the path component, turning
+ properties like foo.ObjectId into foo.Get("objectId")
-
+
- Fetches this object with the data from the server.
+ If a ParseObject.Get() call has been cast, just change the generic parameter.
- The ParseObject to fetch.
- The cancellation token.
-
+
- If this ParseObject has not been fetched (i.e. returns
- false), fetches this object with the data from the server.
+ Normalizes Where expressions.
- The ParseObjhect to fetch.
-
+
- If this ParseObject has not been fetched (i.e. returns
- false), fetches this object with the data from the server.
+ Normalizes binary operators. <, >, <=, >= !=, and ==
+ This puts the ParseObject.Get() on the left side of the operation
+ (reversing it if necessary), and normalizes the ParseObject.Get()
- The ParseObject to fetch.
- The cancellation token.
-
+
- Represents a distance between two ParseGeoPoints.
+ If a ! operator is used, this removes the ! and instead calls the equivalent
+ function (so e.g. == becomes !=, < becomes >=, Contains becomes NotContains)
-
+
- Creates a ParseGeoDistance.
+ Normalizes .Equals into == and Contains() into the appropriate stub.
- The distance in radians.
-
+
- Gets a ParseGeoDistance from a number of miles.
+ A ParseACL is used to control which users and roles can access or modify a particular object. Each
+ can have its own ParseACL. You can grant read and write permissions
+ separately to specific users, to groups of users that belong to roles, or you can grant permissions
+ to "the public" so that, for example, any user could read a particular object but only a particular
+ set of users could write to that object.
- The number of miles.
- A ParseGeoDistance for the given number of miles.
-
+
- Gets a ParseGeoDistance from a number of kilometers.
+ Creates an ACL with no permissions granted.
- The number of kilometers.
- A ParseGeoDistance for the given number of kilometers.
-
+
- Gets a ParseGeoDistance from a number of radians.
+ Creates an ACL where only the provided user has access.
- The number of radians.
- A ParseGeoDistance for the given number of radians.
+ The only user that can read or write objects governed by this ACL.
-
+
- Gets the distance in radians.
+ Sets whether the given user id is allowed to read this object.
+ The objectId of the user.
+ Whether the user has permission.
-
+
- Gets the distance in miles.
+ Sets whether the given user is allowed to read this object.
+ The user.
+ Whether the user has permission.
-
+
- Gets the distance in kilometers.
+ Sets whether the given user id is allowed to write this object.
+ The objectId of the user.
+ Whether the user has permission.
-
+
- ParseGeoPoint represents a latitude / longitude point that may be associated
- with a key in a ParseObject or used as a reference point for geo queries.
- This allows proximity-based queries on the key.
-
- Only one key in a class may contain a GeoPoint.
+ Sets whether the given user is allowed to write this object.
+ The user.
+ Whether the user has permission.
-
+
- Constructs a ParseGeoPoint with the specified latitude and longitude.
+ Gets whether the given user id is *explicitly* allowed to read this object.
+ Even if this returns false, the user may still be able to read it if
+ PublicReadAccess is true or a role that the user belongs to has read access.
- The point's latitude.
- The point's longitude.
+ The user objectId to check.
+ Whether the user has access.
-
+
- Get the distance in radians between this point and another GeoPoint. This is the smallest angular
- distance between the two points.
+ Gets whether the given user is *explicitly* allowed to read this object.
+ Even if this returns false, the user may still be able to read it if
+ PublicReadAccess is true or a role that the user belongs to has read access.
- GeoPoint describing the other point being measured against.
- The distance in between the two points.
+ The user to check.
+ Whether the user has access.
-
+
- Gets or sets the latitude of the GeoPoint. Valid range is [-90, 90].
- Extremes should not be used.
+ Gets whether the given user id is *explicitly* allowed to write this object.
+ Even if this returns false, the user may still be able to write it if
+ PublicReadAccess is true or a role that the user belongs to has write access.
+ The user objectId to check.
+ Whether the user has access.
-
+
- Gets or sets the longitude. Valid range is [-180, 180].
- Extremes should not be used.
+ Gets whether the given user is *explicitly* allowed to write this object.
+ Even if this returns false, the user may still be able to write it if
+ PublicReadAccess is true or a role that the user belongs to has write access.
+ The user to check.
+ Whether the user has access.
-
+
- The ParseObject is a local representation of data that can be saved and
- retrieved from the Parse cloud.
-
-
- The basic workflow for creating new data is to construct a new ParseObject,
- use the indexer to fill it with data, and then use SaveAsync() to persist to the
- database.
-
-
- The basic workflow for accessing existing data is to use a ParseQuery
- to specify which existing data to retrieve.
-
-
+ Sets whether users belonging to the role with the given
+ are allowed to read this object.
+
+ The name of the role.
+ Whether the role has access.
-
+
- Constructor for use in ParseObject subclasses. Subclasses must specify a ParseClassName attribute.
+ Sets whether users belonging to the given role are allowed to read this object.
+ The role.
+ Whether the role has access.
-
+
- Constructs a new ParseObject with no data in it. A ParseObject constructed in this way will
- not have an ObjectId and will not persist to the database until
- is called.
+ Gets whether users belonging to the role with the given
+ are allowed to read this object. Even if this returns false, the role may still be
+ able to read it if a parent role has read access.
-
- Class names must be alphanumerical plus underscore, and start with a letter. It is recommended
- to name classes in CamelCaseLikeThis.
-
- The className for this ParseObject.
+ The name of the role.
+ Whether the role has access.
-
+
- Sets the value of a property based upon its associated ParseFieldName attribute.
+ Gets whether users belonging to the role are allowed to read this object.
+ Even if this returns false, the role may still be able to read it if a
+ parent role has read access.
- The new value.
- The name of the property.
- The type for the property.
+ The name of the role.
+ Whether the role has access.
-
+
- Gets a relation for a property based upon its associated ParseFieldName attribute.
+ Sets whether users belonging to the role with the given
+ are allowed to write this object.
- The ParseRelation for the property.
- The name of the property.
- The ParseObject subclass type of the ParseRelation.
+ The name of the role.
+ Whether the role has access.
-
+
- Gets the value of a property based upon its associated ParseFieldName attribute.
+ Sets whether users belonging to the given role are allowed to write this object.
- The value of the property.
- The name of the property.
- The return type of the property.
+ The role.
+ Whether the role has access.
-
+
+
+ Gets whether users belonging to the role with the given
+ are allowed to write this object. Even if this returns false, the role may still be
+ able to write it if a parent role has write access.
+
+ The name of the role.
+ Whether the role has access.
+
+
+
+ Gets whether users belonging to the role are allowed to write this object.
+ Even if this returns false, the role may still be able to write it if a
+ parent role has write access.
+
+ The name of the role.
+ Whether the role has access.
+
+
+
+ Gets or sets whether the public is allowed to read this object.
+
+
+
+
+ Gets or sets whether the public is allowed to write this object.
+
+
+
+
+ ParseClient contains static functions that handle global
+ configuration for the Parse library.
+
+
+
+
+ Authenticates this client as belonging to your application. This must be
+ called before your application can use the Parse library. The recommended
+ way is to put a call to ParseFramework.Initialize in your
+ Application startup.
+
+ The Application ID provided in the Parse dashboard.
+
+ The .NET API Key provided in the Parse dashboard.
+
+
+
+
+ Performs a ConvertTo, but returns null if the object can't be
+ converted to that type.
+
+
+
+
+ Converts a value to the requested type -- coercing primitives to
+ the desired type, wrapping lists and dictionaries appropriately,
+ or else passing the object along to the caller unchanged.
+
+ This should be used on any containers that might be coming from a
+ user to normalize the collection types. Collection types coming from
+ JSON deserialization can be safely assumed to be lists or dictionaries of
+ objects.
+
+
+
+
+ Holds a dictionary that maps a cache of interface types for related concrete types.
+ The lookup is slow the first time for each type because it has to enumerate all interface
+ on the object type, but made fast by the cache.
+
+ The map is:
+ (object type, generic interface type) => constructed generic type
+
+
+
+
+ The ParseCloud class provides methods for interacting with Parse Cloud Functions.
+
+
+ For example, this sample code calls the
+ "validateGame" Cloud Function and calls processResponse if the call succeeded
+ and handleError if it failed.
+
+
+ var result =
+ await ParseCloud.CallFunctionAsync<IDictionary<string, object>>("validateGame", parameters);
+
+
+
+
+
+ Calls a cloud function.
+
+ The type of data you will receive from the cloud function. This
+ can be an IDictionary, string, IList, ParseObject, or any other type supported by
+ ParseObject.
+ The cloud function to call.
+ The parameters to send to the cloud function. This
+ dictionary can contain anything that could be passed into a ParseObject except for
+ ParseObjects themselves.
+ The result of the cloud call.
+
+
+
+ Calls a cloud function.
+
+ The type of data you will receive from the cloud function. This
+ can be an IDictionary, string, IList, ParseObject, or any other type supported by
+ ParseObject.
+ The cloud function to call.
+ The parameters to send to the cloud function. This
+ dictionary can contain anything that could be passed into a ParseObject except for
+ ParseObjects themselves.
+ The cancellation token.
+ The result of the cloud call.
+
+
+
+ Exceptions that may occur when sending requests to Parse.
+
+
+
+
+ The Parse error code associated with the exception.
+
+
+
+
+ Error codes that may be delivered in response to requests to Parse.
+
+
+
+
+ Error code indicating that an unknown error or an error unrelated to Parse
+ occurred.
+
+
+
+
+ Error code indicating that something has gone wrong with the server.
+ If you get this error code, it is Parse's fault. Please report the bug to
+ https://parse.com/help.
+
+
+
- Gets the value of a property based upon its associated ParseFieldName attribute.
+ Error code indicating the connection to the Parse servers failed.
- The value of the property.
- The value to return if the property is not present on the ParseObject.
- The name of the property.
- The return type of the property.
-
+
- Allows subclasses to set values for non-pointer construction.
+ Error code indicating the specified object doesn't exist.
-
+
- Gets the appropriate factory for the given class name. If there is no factory for the class,
- a factory that produces a regular ParseObject will be created.
+ Error code indicating you tried to query with a datatype that doesn't
+ support it, like exact matching an array or object.
- The class name for the ParseObjects the factory will create.
-
-
+
- Creates a new ParseObject based upon a class name. If the class name is a special type (e.g.
- for ), then the appropriate type of ParseObject is returned.
+ Error code indicating a missing or invalid classname. Classnames are
+ case-sensitive. They must start with a letter, and a-zA-Z0-9_ are the
+ only valid characters.
- The class of object to create.
- A new ParseObject for the given class name.
-
+
- Creates a reference to an existing ParseObject for use in creating associations between
- ParseObjects. Calling on this object will return
- false until has been called.
- No network request will be made.
+ Error code indicating an unspecified object id.
- The object's class.
- The object id for the referenced object.
- A ParseObject without data.
-
+
- Creates a new ParseObject based upon a given subclass type.
+ Error code indicating an invalid key name. Keys are case-sensitive. They
+ must start with a letter, and a-zA-Z0-9_ are the only valid characters.
- A new ParseObject for the given class name.
-
+
- Creates a reference to an existing ParseObject for use in creating associations between
- ParseObjects. Calling on this object will return
- false until has been called.
- No network request will be made.
+ Error code indicating a malformed pointer. You should not see this unless
+ you have been mucking about changing internal Parse code.
- The object id for the referenced object.
- A ParseObject without data.
-
+
- Registers a custom subclass type with the Parse SDK, enabling strong-typing of those ParseObjects whenever
- they appear. Subclasses must specify the ParseClassName attribute, have a default constructor, and properties
- backed by ParseObject fields should have ParseFieldName attributes supplied.
+ Error code indicating that badly formed JSON was received upstream. This
+ either indicates you have done something unusual with modifying how
+ things encode to JSON, or the network is failing badly.
- The ParseObject subclass type to register.
-
+
- Clears any changes to this object made since the last call to .
+ Error code indicating that the feature you tried to access is only
+ available internally for testing purposes.
-
+
- Updates the JSON cache value for the given object.
+ You must call Parse.initialize before using the Parse library.
-
+
- Inspects to see if a given mutable container owned by this object has
- been mutated, and treats any mutation as a new "set" operation.
+ Error code indicating that a field was set to an inconsistent type.
-
+
- Inspects to see if any mutable container owned by this object has been mutated, and
- treats any mutation as a new 'Set' operation.
+ Error code indicating an invalid channel name. A channel name is either
+ an empty string (the broadcast channel) or contains only a-zA-Z0-9_
+ characters and starts with a letter.
-
+
- Deep traversal of this object to grab a copy of any object referenced by this object.
- These instances may have already been fetched, and we don't want to lose their data when
- refreshing or saving.
+ Error code indicating that push is misconfigured.
- Map of objectId to ParseObject which have been fetched.
-
+
- Pushes new operations onto the queue and returns the current set of operations.
+ Error code indicating that the object is too large.
-
+
- Saves this object to the server.
+ Error code indicating that the operation isn't allowed for clients.
-
+
- Saves this object to the server.
+ Error code indicating the result was not found in the cache.
- The cancellation token.
-
+
- Fetches this object with the data from the server.
+ Error code indicating that an invalid key was used in a nested
+ JSONObject.
- The cancellation token.
-
+
- If this ParseObject has not been fetched (i.e. returns
- false), fetches this object with the data from the server.
+ Error code indicating that an invalid filename was used for ParseFile.
+ A valid file name contains only a-zA-Z0-9_. characters and is between 1
+ and 128 characters.
- The cancellation token.
-
+
- Deletes this object on the server.
+ Error code indicating an invalid ACL was provided.
-
+
- Deletes this object on the server.
+ Error code indicating that the request timed out on the server. Typically
+ this indicates that the request is too expensive to run.
- The cancellation token.
-
+
- Helper version of CollectDirtyChildren so that callers don't have to add the internally
- used parameters.
+ Error code indicating that the email address was invalid.
-
+
- Returns true if the given object can be serialized for saving as a value
- that is pointed to by a ParseObject.
+ Error code indicating that a unique field was given a value that is
+ already taken.
-
+
- Adds a task to the queue for all of the given objects.
+ Error code indicating that a role's name is invalid.
-
+
- Fetches all of the objects that don't have data in the provided list.
+ Error code indicating that an application quota was exceeded. Upgrade to
+ resolve.
- The list passed in for convenience.
-
+
- Fetches all of the objects that don't have data in the provided list.
+ Error code indicating that a Cloud Code script failed.
- The objects to fetch.
- The cancellation token.
- The list passed in for convenience.
-
+
- Fetches all of the objects in the provided list.
+ Error code indicating that a Cloud Code validation failed.
- The objects to fetch.
- The list passed in for convenience.
-
+
- Fetches all of the objects in the provided list.
+ Error code indicating that deleting a file failed.
- The objects to fetch.
- The cancellation token.
- The list passed in for convenience.
-
+
- Fetches all of the objects in the list.
+ Error code indicating that the application has exceeded its request limit.
- The objects to fetch.
- If false, only objects without data will be fetched.
- A task to await before starting.
- The cancellation token.
- The list passed in for convenience.
-
+
- Saves each object in the provided list.
+ Error code indicating that the provided event name is invalid.
- The objects to save.
-
+
- Saves each object in the provided list.
+ Error code indicating that the username is missing or empty.
- The objects to save.
- The cancellation token.
-
+
- Removes a key from the object's data if it exists.
+ Error code indicating that the password is missing or empty.
- The key to remove.
-
+
- Updates the estimated values in the map based on the given set of ParseFieldOperations.
+ Error code indicating that the username has already been taken.
-
+
- Regenerates the estimatedData map from the serverData and operations.
+ Error code indicating that the email has already been taken.
-
+
- PerformOperation is like setting a value at an index, but instead of
- just taking a new value, it takes a ParseFieldOperation that modifies the value.
+ Error code indicating that the email is missing, but must be specified.
-
+
- Override to run validations on key/value pairs. Make sure to still
- call the base version.
+ Error code indicating that a user with the specified email was not found.
-
+
- Perform Set internally which is not gated by mutability check.
+ Error code indicating that a user object without a valid session could
+ not be altered.
- key for the object.
- the value for the key.
-
+
- Atomically increments the given key by 1.
+ Error code indicating that a user can only be created through signup.
- The key to increment.
-
+
- Atomically increments the given key by the given number.
+ Error code indicating that an an account being linked is already linked
+ to another user.
- The key to increment.
- The amount to increment by.
-
+
- Atomically increments the given key by the given number.
+ Error code indicating that the current session token is invalid.
- The key to increment.
- The amount to increment by.
-
+
- Atomically adds an object to the end of the list associated with the given key.
+ Error code indicating that a user cannot be linked to an account because
+ that account's id could not be found.
- The key.
- The object to add.
-
+
- Atomically adds objects to the end of the list associated with the given key.
+ Error code indicating that a user with a linked (e.g. Facebook) account
+ has an invalid session.
- The key.
- The objects to add.
-
+
- Atomically adds an object to the end of the list associated with the given key,
- only if it is not already present in the list. The position of the insert is not
- guaranteed.
+ Error code indicating that a service being linked (e.g. Facebook or
+ Twitter) is unsupported.
- The key.
- The object to add.
-
+
- Atomically adds objects to the end of the list associated with the given key,
- only if they are not already present in the list. The position of the inserts are not
- guaranteed.
+ Provides convenience extension methods for working with collections
+ of ParseObjects so that you can easily save and fetch them in batches.
- The key.
- The objects to add.
-
+
- Atomically removes all instances of the objects in
- from the list associated with the given key.
+ Saves all of the ParseObjects in the enumeration. Equivalent to
+ calling .
- The key.
- The objects to remove.
+ The objects to save.
-
+
- Returns whether this object has a particular key.
+ Saves all of the ParseObjects in the enumeration. Equivalent to
+ calling
+ .
- The key to check for
+ The objects to save.
+ The cancellation token.
-
+
- Gets a value for the key of a particular type.
- The type to convert the value to. Supported types are
- ParseObject and its descendents, Parse types such as ParseRelation and ParseGeopoint,
- primitive types,IList<T>, IDictionary<string, T>, and strings.
- The key of the element to get.
- The property is
- retrieved and is not found.
+ Fetches all of the objects in the enumeration. Equivalent to
+ calling .
+ The objects to save.
-
+
- Access or create a Relation value for a key.
+ Fetches all of the objects in the enumeration. Equivalent to
+ calling
+ .
- The type of object to create a relation for.
- The key for the relation field.
- A ParseRelation for the key.
+ The objects to fetch.
+ The cancellation token.
-
+
- Populates result with the value for the key, if possible.
+ Fetches all of the objects in the enumeration that don't already have
+ data. Equivalent to calling
+ .
- The desired type for the value.
- The key to retrieve a value for.
- The value for the given key, converted to the
- requested type, or null if unsuccessful.
- true if the lookup and conversion succeeded, otherwise
- false.
+ The objects to fetch.
-
+
- A helper function for checking whether two ParseObjects point to
- the same object in the cloud.
+ Fetches all of the objects in the enumeration that don't already have
+ data. Equivalent to calling
+ .
+ The objects to fetch.
+ The cancellation token.
-
+
- Indicates whether key is unsaved for this ParseObject.
+ Constructs a query that is the or of the given queries.
- The key to check for.
- true if the key has been altered and not saved yet, otherwise
- false.
+ The type of ParseObject being queried.
+ An initial query to 'or' with additional queries.
+ The list of ParseQueries to 'or' together.
+ A query that is the or of the given queries.
-
+
- Sets the objectId without marking dirty.
+ Fetches this object with the data from the server.
- The new objectId
-
+
- Adds a value for the given key, throwing an Exception if the key
- already has a value.
+ Fetches this object with the data from the server.
-
- This allows you to use collection initialization syntax when creating ParseObjects,
- such as:
-
- var obj = new ParseObject("MyType")
- {
- {"name", "foo"},
- {"count", 10},
- {"found", false}
- };
-
-
- The key for which a value should be set.
- The value for the key.
+ The ParseObject to fetch.
+ The cancellation token.
-
+
- Gets a for the type of object specified by
-
+ If this ParseObject has not been fetched (i.e. returns
+ false), fetches this object with the data from the server.
- The class name of the object.
- A new .
+ The ParseObjhect to fetch.
-
+
- Raises change notifications for all properties associated with the given
- field names. If fieldNames is null, this will notify for all known field-linked
- properties (e.g. this happens when we recalculate all estimated data from scratch)
+ If this ParseObject has not been fetched (i.e. returns
+ false), fetches this object with the data from the server.
+ The ParseObject to fetch.
+ The cancellation token.
-
+
- Raises change notifications for a property. Passing null or the empty string
- notifies the binding framework that all properties/indexes have changed.
- Passing "Item[]" tells the binding framework that all indexed values
- have changed (but not all properties)
+ Represents a distance between two ParseGeoPoints.
-
+
- Gets or sets a value on the object. It is recommended to name
- keys in partialCamelCaseLikeThis.
+ Creates a ParseGeoDistance.
- The key for the object. Keys must be alphanumeric plus underscore
- and start with a letter.
- The property is
- retrieved and is not found.
- The value for the key.
+ The distance in radians.
-
+
- Gets whether the ParseObject has been fetched.
+ Gets a ParseGeoDistance from a number of miles.
+ The number of miles.
+ A ParseGeoDistance for the given number of miles.
-
+
- Gets a set view of the keys contained in this object. This does not include createdAt,
- updatedAt, or objectId. It does include things like username and ACL.
+ Gets a ParseGeoDistance from a number of kilometers.
+ The number of kilometers.
+ A ParseGeoDistance for the given number of kilometers.
-
+
- Gets or sets the ParseACL governing this object.
+ Gets a ParseGeoDistance from a number of radians.
+ The number of radians.
+ A ParseGeoDistance for the given number of radians.
-
+
- Returns true if this object was created by the Parse server when the
- object might have already been there (e.g. in the case of a Facebook
- login)
+ Gets the distance in radians.
-
+
- Gets the last time this object was updated as the server sees it, so that if you make changes
- to a ParseObject, then wait a while, and then call , the updated time
- will be the time of the call rather than the time the object was
- changed locally.
+ Gets the distance in miles.
-
+
- Gets the first time this object was saved as the server sees it, so that if you create a
- ParseObject, then wait a while, and then call , the
- creation time will be the time of the first call rather than
- the time the object was created locally.
+ Gets the distance in kilometers.
-
+
- Indicates whether this ParseObject has unsaved changes.
+ ParseGeoPoint represents a latitude / longitude point that may be associated
+ with a key in a ParseObject or used as a reference point for geo queries.
+ This allows proximity-based queries on the key.
+
+ Only one key in a class may contain a GeoPoint.
-
+
- Gets or sets the object id. An object id is assigned as soon as an object is
- saved to the server. The combination of a and an
- uniquely identifies an object in your application.
+ Constructs a ParseGeoPoint with the specified latitude and longitude.
+ The point's latitude.
+ The point's longitude.
-
+
- Gets the class name for the ParseObject.
+ Get the distance in radians between this point and another GeoPoint. This is the smallest angular
+ distance between the two points.
+ GeoPoint describing the other point being measured against.
+ The distance in between the two points.
-
+
- Gets the set of fieldName->propertyName mappings for the current class.
+ Gets or sets the latitude of the GeoPoint. Valid range is [-90, 90].
+ Extremes should not be used.
-
+
- Occurs when a property value changes.
+ Gets or sets the longitude. Valid range is [-180, 180].
+ Extremes should not be used.
@@ -1937,7 +2200,7 @@
- Private constructor for composition of queries. A source query is required,
+ Private constructor for composition of queries. A source query is required,
but the remaining values can be null if they won't be changed in this
composition.
@@ -1978,27 +2241,27 @@
A new query with the additional constraint.
-
- Sorts the results in ascending order by the given key, after previous
- ordering has been applied.
+
+ Sorts the results in ascending order by the given key, after previous
+ ordering has been applied.
- This method can only be called if there is already an
- or
- on this query.
-
- The key to order by.
- A new query with the additional constraint.
+ This method can only be called if there is already an
+ or
+ on this query.
+
+ The key to order by.
+ A new query with the additional constraint.
-
- Sorts the results in descending order by the given key, after previous
- ordering has been applied.
+
+ Sorts the results in descending order by the given key, after previous
+ ordering has been applied.
- This method can only be called if there is already an
- or on this query.
-
- The key to order by.
- A new query with the additional constraint.
+ This method can only be called if there is already an
+ or on this query.
+
+ The key to order by.
+ A new query with the additional constraint.
@@ -2019,8 +2282,8 @@
- Skips a number of results before returning. This is useful for pagination
- of large queries. Chaining multiple skips together will cause more results
+ Skips a number of results before returning. This is useful for pagination
+ of large queries. Chaining multiple skips together will cause more results
to be skipped.
The number of results to skip.
@@ -2028,8 +2291,8 @@
- Controls the maximum number of results that are returned. Setting a negative
- limit denotes retrieval without a limit. Chaining multiple limits
+ Controls the maximum number of results that are returned. Setting a negative
+ limit denotes retrieval without a limit. Chaining multiple limits
results in the last limit specified being used. The default limit is
100, with a maximum of 1000 results being returned at a time.
@@ -2073,7 +2336,7 @@
Adds a constraint to the query that requires that a particular key's value
- does not match another ParseQuery. This only works on keys whose values are
+ does not match another ParseQuery. This only works on keys whose values are
ParseObjects or lists of ParseObjects.
The key to check.
@@ -2208,7 +2471,7 @@
Adds a constraint to the query that requires that a particular key's value
- matches another ParseQuery. This only works on keys whose values are
+ matches another ParseQuery. This only works on keys whose values are
ParseObjects or lists of ParseObjects.
The key to check.
@@ -2342,11 +2605,6 @@
The cancellation token.
The ParseObject for the given objectId.
-
-
- For debugging purposes.
-
-
A common base class for ParseRelations.
@@ -2359,7 +2617,7 @@
- Provides access to all of the children of a many-to-many relationship. Each instance of
+ Provides access to all of the children of a many-to-many relationship. Each instance of
ParseRelation is associated with a particular parent and key.
The type of the child objects.
@@ -2372,7 +2630,7 @@
- Removes an object from this relation. The object must already have been saved.
+ Removes an object from this relation. The object must already have been saved.
The object to remove.
@@ -2383,7 +2641,7 @@
- Represents a Role on the Parse server. ParseRoles represent groupings
+ Represents a Role on the Parse server. ParseRoles represent groupings
of s for the purposes of granting permissions (e.g.
specifying a for a . Roles
are specified by their sets of child users and child roles, all of which are granted
@@ -2395,7 +2653,7 @@
- Constructs a new ParseRole. You must assign a name and ACL to the role.
+ Constructs a new ParseRole. You must assign a name and ACL to the role.
@@ -2472,18 +2730,6 @@
Represents a user for a Parse application.
-
-
- Whether the currentUser is known to match the serialized version on disk.
- This is useful for saving a filesystem check if you try to load currentUser
- frequently while there is none on disk.
-
-
-
-
- Constructs a new ParseUser with no data.
-
-
Removes a key from the object's data if it exists.
@@ -2547,15 +2793,19 @@
Logs out the currently logged in user session. This will remove the session from disk, log out of
linked services, and future calls to will return null.
+
+ Typically, you should use , unless you are managing your own threading.
+
Logs out the currently logged in user session. This will remove the session from disk, log out of
linked services, and future calls to will return null.
-
+
+
This is preferable to using , unless your code is already running from a
background thread.
-
+
@@ -2597,14 +2847,14 @@
Requests a password reset email to be sent to the specified email address associated with the
- user account. This email allows the user to securely reset their password on the Parse site.
+ user account. This email allows the user to securely reset their password on the Parse site.
The email address associated with the user that forgot their password.
Requests a password reset email to be sent to the specified email address associated with the
- user account. This email allows the user to securely reset their password on the Parse site.
+ user account. This email allows the user to securely reset their password on the Parse site.
The email address associated with the user that forgot their password.
The cancellation token.
@@ -2631,7 +2881,7 @@
- Whether the ParseUser has been authenticated on this device. Only an authenticated
+ Whether the ParseUser has been authenticated on this device. Only an authenticated
ParseUser can be saved and deleted.
@@ -2666,5 +2916,64 @@
Gets the authData for this user.
+
+
+ Fetchs the config from the server asynchrounously.
+
+ The config async.
+ Session token.
+ Cancellation token.
+
+
+
+ Gets the current config controller.
+
+ The current config controller.
+
+
+
+ Config controller.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the current config async.
+
+ The current config async.
+
+
+
+ Sets the current config async.
+
+ The current config async.
+ Config.
+
+
+
+ Clears the current config async.
+
+ The current config async.
+
+
+
+ Clears the current config in memory async.
+
+ The current config in memory async.
+
+
+
+ Parse current config controller.
+
+
+
+
+ Initializes a new instance of the class.
+
+