java.lang.Object | |
↳ | android.content.SyncResult |
This class is used to communicate the results of a sync operation to the SyncManager. Based on the values here the SyncManager will determine the disposition of the sync and whether or not a new sync operation needs to be scheduled in the future.
[Expand]
Inherited Constants
|
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From interface
android.os.Parcelable
|
Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
ALREADY_IN_PROGRESS | This instance of a SyncResult is returned by the SyncAdapter in response to a sync request when a sync is already underway. | |||||||||
|
CREATOR | ||||||||||
|
databaseError | Used to indicate that the SyncAdapter experienced a hard error due to an error it received from interacting with the storage layer. | |||||||||
|
delayUntil | Used to indicate to the SyncManager that future sync requests that match the request's Account and authority should be delayed at least this many seconds. | |||||||||
|
fullSyncRequested | If set the SyncManager will request an immediate sync with the same Account and authority (but empty extras Bundle) as was used in the sync request. | |||||||||
|
moreRecordsToGet | This field is ignored by the SyncManager. | |||||||||
|
partialSyncUnavailable | This field is ignored by the SyncManager. | |||||||||
|
stats | Used to hold extras statistics about the sync operation. | |||||||||
|
syncAlreadyInProgress | Used to indicate that the SyncAdapter is already performing a sync operation, though not necessarily for the requested account and authority and that it wasn't able to process this request. | |||||||||
|
tooManyDeletions | Used to indicate that the SyncAdapter determined that it would need to issue too many delete operations to the server in order to satisfy the request (as defined by the SyncAdapter). | |||||||||
|
tooManyRetries | Used to indicate that the SyncAdapter experienced a hard error due to trying the same operation too many times (as defined by the SyncAdapter). |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
Create a "clean" SyncResult.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
Clears the SyncResult to a clean state.
|
||||||||||
|
Describe the kinds of special objects contained in this Parcelable's
marshalled representation.
|
||||||||||
|
A convenience method for determining of the SyncResult indicates that an error occurred.
|
||||||||||
|
Convenience method for determining if the SyncResult indicates that a hard error
occurred.
|
||||||||||
|
Convenience method for determining if the SyncResult indicates that a soft error
occurred.
|
||||||||||
|
Convenience method for determining if the Sync should be rescheduled after failing for some
reason.
|
||||||||||
|
Generates a debugging string indicating the status.
|
||||||||||
|
Returns a string containing a concise, human-readable description of this
object.
|
||||||||||
|
Flatten this object in to a Parcel.
|
[Expand]
Inherited Methods
|
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
|
|||||||||||
From interface
android.os.Parcelable
|
This instance of a SyncResult is returned by the SyncAdapter in response to a sync request when a sync is already underway. The SyncManager will reschedule the sync request to try again later.
Used to indicate that the SyncAdapter experienced a hard error due to an error it received from interacting with the storage layer. The SyncManager will record that the sync request failed and it will not reschedule the request.
Used to indicate to the SyncManager that future sync requests that match the request's Account and authority should be delayed at least this many seconds.
If set the SyncManager will request an immediate sync with the same Account and authority (but empty extras Bundle) as was used in the sync request.
This field is ignored by the SyncManager.
Used to hold extras statistics about the sync operation. Some of these indicate that the sync request resulted in a hard or soft error, others are for purely informational purposes.
Used to indicate that the SyncAdapter is already performing a sync operation, though not necessarily for the requested account and authority and that it wasn't able to process this request. The SyncManager will reschedule the request to run later.
Used to indicate that the SyncAdapter determined that it would need to issue
too many delete operations to the server in order to satisfy the request
(as defined by the SyncAdapter). The SyncManager will record
that the sync request failed and will cause a System Notification to be created
asking the user what they want to do about this. It will give the user a chance to
choose between (1) go ahead even with those deletes, (2) revert the deletes,
or (3) take no action. If the user decides (1) or (2) the SyncManager will issue another
sync request with either
SYNC_EXTRAS_OVERRIDE_TOO_MANY_DELETIONS
or
SYNC_EXTRAS_DISCARD_LOCAL_DELETIONS
set in the extras.
It is then up to the SyncAdapter to decide how to honor that request.
Used to indicate that the SyncAdapter experienced a hard error due to trying the same operation too many times (as defined by the SyncAdapter). The SyncManager will record that the sync request failed and it will not reschedule the request.
Create a "clean" SyncResult. If this is returned without any changes then the SyncManager will consider the sync to have completed successfully. The various fields can be set by the SyncAdapter in order to give the SyncManager more information as to the disposition of the sync.
The errors are classified into two broad categories: hard errors and soft errors.
Soft errors are retried with exponential backoff. Hard errors are not retried (except
when the hard error is for a
SYNC_EXTRAS_UPLOAD
request,
in which the request is retryed without the
SYNC_EXTRAS_UPLOAD
extra set). The SyncManager checks the type of error by calling
hasHardError()
and
hasSoftError()
. If both are
true then the SyncManager treats it as a hard error, not a soft error.
Clears the SyncResult to a clean state. Throws an
UnsupportedOperationException
if this is called when
syncAlreadyInProgress
is set.
Describe the kinds of special objects contained in this Parcelable's marshalled representation.
A convenience method for determining of the SyncResult indicates that an error occurred.
Convenience method for determining if the SyncResult indicates that a hard error
occurred. See
SyncResult()
for an explanation of what the SyncManager does
when it sees a hard error.
A hard error is indicated when any of the following is true:
Convenience method for determining if the SyncResult indicates that a soft error
occurred. See
SyncResult()
for an explanation of what the SyncManager does
when it sees a soft error.
A soft error is indicated when any of the following is true:
Convenience method for determining if the Sync should be rescheduled after failing for some reason.
Generates a debugging string indicating the status. The string consist of a sequence of code letter followed by the count. Code letters are f - fullSyncRequested, r - partialSyncUnavailable, X - hardError, e - numParseExceptions, c - numConflictDetectedExceptions, a - numAuthExceptions, D - tooManyDeletions, R - tooManyRetries, b - databaseError, x - softError, l - syncAlreadyInProgress, I - numIoExceptions
Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:
getClass().getName() + '@' + Integer.toHexString(hashCode())
See
Writing a useful
toString
method
if you intend implementing your own
toString
method.
Flatten this object in to a Parcel.
parcel | The Parcel in which the object should be written. |
---|---|
flags |
Additional flags about how the object should be written.
May be 0 or
PARCELABLE_WRITE_RETURN_VALUE
.
|