FileDocCategorySizeDatePackage
SyncStats.javaAPI DocAndroid 5.1 API6833Thu Mar 12 22:22:10 GMT 2015android.content

SyncStats

public class SyncStats extends Object implements android.os.Parcelable
Used to record various statistics about the result of a sync operation. The SyncManager gets access to these via a {@link SyncResult} and uses some of them to determine the disposition of the sync. See {@link SyncResult} for further dicussion on how the SyncManager uses these values.

Fields Summary
public long
numAuthExceptions
The SyncAdapter was unable to authenticate the {@link android.accounts.Account} that was specified in the request. The user needs to take some action to resolve before a future request can expect to succeed. This is considered a hard error.
public long
numIoExceptions
The SyncAdapter had a problem, most likely with the network connectivity or a timeout while waiting for a network response. The request may succeed if it is tried again later. This is considered a soft error.
public long
numParseExceptions
The SyncAdapter had a problem with the data it received from the server or the storage later. This problem will likely repeat if the request is tried again. The problem will need to be cleared up by either the server or the storage layer (likely with help from the user). If the SyncAdapter cleans up the data itself then it typically won't increment this value although it may still do so in order to record that it had to perform some cleanup. E.g., if the SyncAdapter received a bad entry from the server when processing a feed of entries, it may choose to drop the entry and thus make progress and still increment this value just so the SyncAdapter can record that an error occurred. This is considered a hard error.
public long
numConflictDetectedExceptions
The SyncAdapter detected that there was an unrecoverable version conflict when it attempted to update or delete a version of a resource on the server. This is expected to clear itself automatically once the new state is retrieved from the server, though it may remain until the user intervenes manually, perhaps by clearing the local storage and starting over frmo scratch. This is considered a hard error.
public long
numInserts
Counter for tracking how many inserts were performed by the sync operation, as defined by the SyncAdapter.
public long
numUpdates
Counter for tracking how many updates were performed by the sync operation, as defined by the SyncAdapter.
public long
numDeletes
Counter for tracking how many deletes were performed by the sync operation, as defined by the SyncAdapter.
public long
numEntries
Counter for tracking how many entries were affected by the sync operation, as defined by the SyncAdapter.
public long
numSkippedEntries
Counter for tracking how many entries, either from the server or the local store, were ignored during the sync operation. This could happen if the SyncAdapter detected some unparsable data but decided to skip it and move on rather than failing immediately.
public static final Creator
CREATOR
Constructors Summary
public SyncStats()

        numAuthExceptions = 0;
        numIoExceptions = 0;
        numParseExceptions = 0;
        numConflictDetectedExceptions = 0;
        numInserts = 0;
        numUpdates = 0;
        numDeletes = 0;
        numEntries = 0;
        numSkippedEntries = 0;
    
public SyncStats(android.os.Parcel in)

        numAuthExceptions = in.readLong();
        numIoExceptions = in.readLong();
        numParseExceptions = in.readLong();
        numConflictDetectedExceptions = in.readLong();
        numInserts = in.readLong();
        numUpdates = in.readLong();
        numDeletes = in.readLong();
        numEntries = in.readLong();
        numSkippedEntries = in.readLong();
    
Methods Summary
public voidclear()
Reset all the counters to 0.

        numAuthExceptions = 0;
        numIoExceptions = 0;
        numParseExceptions = 0;
        numConflictDetectedExceptions = 0;
        numInserts = 0;
        numUpdates = 0;
        numDeletes = 0;
        numEntries = 0;
        numSkippedEntries = 0;
    
public intdescribeContents()

        return 0;
    
public java.lang.StringtoString()

        StringBuilder sb = new StringBuilder();
        sb.append(" stats [");
        if (numAuthExceptions > 0) sb.append(" numAuthExceptions: ").append(numAuthExceptions);
        if (numIoExceptions > 0) sb.append(" numIoExceptions: ").append(numIoExceptions);
        if (numParseExceptions > 0) sb.append(" numParseExceptions: ").append(numParseExceptions);
        if (numConflictDetectedExceptions > 0)
            sb.append(" numConflictDetectedExceptions: ").append(numConflictDetectedExceptions);
        if (numInserts > 0) sb.append(" numInserts: ").append(numInserts);
        if (numUpdates > 0) sb.append(" numUpdates: ").append(numUpdates);
        if (numDeletes > 0) sb.append(" numDeletes: ").append(numDeletes);
        if (numEntries > 0) sb.append(" numEntries: ").append(numEntries);
        if (numSkippedEntries > 0) sb.append(" numSkippedEntries: ").append(numSkippedEntries);
        sb.append("]");
        return sb.toString();
    
public voidwriteToParcel(android.os.Parcel dest, int flags)

        dest.writeLong(numAuthExceptions);
        dest.writeLong(numIoExceptions);
        dest.writeLong(numParseExceptions);
        dest.writeLong(numConflictDetectedExceptions);
        dest.writeLong(numInserts);
        dest.writeLong(numUpdates);
        dest.writeLong(numDeletes);
        dest.writeLong(numEntries);
        dest.writeLong(numSkippedEntries);