public final class

SnapshotContents

extends Object
implements SafeParcelable
java.lang.Object
   ↳ com.google.android.gms.games.snapshot.SnapshotContents

Class Overview

Data interface for a representation of Snapshot contents.

Summary

[Expand]
Inherited Constants
From interface android.os.Parcelable
From interface com.google.android.gms.common.internal.safeparcel.SafeParcelable
Fields
public static final SnapshotContentsCreator CREATOR
Public Methods
int describeContents()
ParcelFileDescriptor getParcelFileDescriptor()
Retrieve the ParcelFileDescriptor associated with the underlying file for this snapshot contents.
boolean isClosed()
boolean modifyBytes(int dstOffset, byte[] content, int srcOffset, int count)
Write the specified data into the snapshot.
byte[] readFully()
Read the contents of a snapshot.
boolean writeBytes(byte[] content)
Write the specified data into the snapshot.
void writeToParcel(Parcel out, int flags)
[Expand]
Inherited Methods
From class java.lang.Object
From interface android.os.Parcelable

Fields

public static final SnapshotContentsCreator CREATOR

Public Methods

public int describeContents ()

public ParcelFileDescriptor getParcelFileDescriptor ()

Retrieve the ParcelFileDescriptor associated with the underlying file for this snapshot contents. This object can be used to update the data of a snapshot, but the snapshot should still be committed using commitAndClose(GoogleApiClient, Snapshot, SnapshotMetadataChange) or resolveConflict(GoogleApiClient, String, Snapshot) (in case of conflict resolution).

If this SnapshotContents was not obtained via getSnapshotContents() or getResolutionSnapshotContents(), or if the contents have already been committed and closed via commitAndClose(GoogleApiClient, Snapshot, SnapshotMetadataChange) or resolveConflict(GoogleApiClient, String, Snapshot), this method will throw an exception.

Returns

public boolean isClosed ()

Returns
  • whether this snapshot contents has been closed.

public boolean modifyBytes (int dstOffset, byte[] content, int srcOffset, int count)

Write the specified data into the snapshot. The contents of the snapshot will be replaced with the data provided in content. The data will be persisted on disk, but is not uploaded to the server until the snapshot is committed via commitAndClose(GoogleApiClient, Snapshot, SnapshotMetadataChange).

Note that this form of the API does not necessarily overwrite the entire contents of the file. If you are writing less data than was previously stored in the snapshot, the excess data will remain. Use writeBytes(byte[]) to fully overwrite the file.

If the snapshot was not opened via open(GoogleApiClient, SnapshotMetadata), or if the contents have already been committed via commitAndClose(GoogleApiClient, Snapshot, SnapshotMetadataChange), this method will throw an exception.

Parameters
dstOffset Position in the snapshot file to start writing data to. 0 indicates the head of the file.
content The data to write.
srcOffset Position in content to start writing from.
count Number of bytes from content to write to this snapshot.
Returns
  • Whether or not the data was successfully written to disk.

public byte[] readFully ()

Read the contents of a snapshot.

If this snapshot was not opened via open(GoogleApiClient, SnapshotMetadata), or if the contents have already been committed via commitAndClose(GoogleApiClient, Snapshot, SnapshotMetadataChange) this method will throw an exception.

Returns
  • The bytes of the snapshot contents.
Throws
IOException if reading the snapshot failed.

public boolean writeBytes (byte[] content)

Write the specified data into the snapshot. The contents of the snapshot will be replaced with the data provided in content. The data will be persisted on disk, but is not uploaded to the server until the snapshot is committed via commitAndClose(GoogleApiClient, Snapshot, SnapshotMetadataChange).

Note that this form of the API will fully overwrite the contents of the file. No previous data will be retained. Use modifyBytes(int, byte[], int, int) to overwrite parts of the file.

If the snapshot was not opened via open(GoogleApiClient, SnapshotMetadata), or if the contents have already been committed via commitAndClose(GoogleApiClient, Snapshot, SnapshotMetadataChange), this method will throw an exception.

Parameters
content The data to write.
Returns
  • Whether or not the data was successfully written to disk.

public void writeToParcel (Parcel out, int flags)