A canonical identifier for a Drive resource. The identifier can be converted to a String
representation for storage using encodeToString()
and then later converted back to the ID representation using decodeFromString(String)
. equals(Object)
can be used to see if two different identifiers refer to the same resource.
Constant Summary
int | RESOURCE_TYPE_FILE | A file resource type, meaning the DriveId
corresponds to a file. |
int | RESOURCE_TYPE_FOLDER | A folder resource type, meaning the DriveId
corresponds to a folder. |
int | RESOURCE_TYPE_UNKNOWN | An unknown resource type, meaning the DriveId
corresponds to either a file or a folder. |
Inherited Constant Summary
Field Summary
public static final Creator < DriveId > | CREATOR |
Public Method Summary
DriveFile | asDriveFile
()
|
DriveFolder | asDriveFolder
()
Returns a
DriveFolder
object that can be used to interact with the folder specified by this DriveId
. |
DriveResource | asDriveResource
()
Returns a
DriveResource
object that can be used to interact with the file or folder specified by this DriveId
. |
static DriveId | |
final String | encodeToString
()
Returns a String representation of this
DriveId
that can be safely persisted, and from which an equivalent DriveId
can later be reconstructed using decodeFromString(String)
. |
boolean | |
String | |
int | |
int | hashCode
()
|
final String | |
String | |
void |
Inherited Method Summary
Constants
public static final int RESOURCE_TYPE_FILE
A file resource type, meaning the DriveId
corresponds to a file.
public static final int RESOURCE_TYPE_FOLDER
A folder resource type, meaning the DriveId
corresponds to a folder.
public static final int RESOURCE_TYPE_UNKNOWN
An unknown resource type, meaning the DriveId
corresponds to either a file or a folder.
Fields
Public Methods
public DriveFile asDriveFile ()
Throws
public DriveFolder asDriveFolder ()
Returns a DriveFolder
object that can be used to interact with the folder specified by this DriveId
.
Throws
public DriveResource asDriveResource ()
Returns a DriveResource
object that can be used to interact with the file or folder specified by this DriveId
.
This method is useful when you want to perform actions that are applicable for both
files and folders. You can later cast the returned DriveResource
to a DriveFile
or a DriveFolder
,
depending on the type of this DriveId
.
public static DriveId decodeFromString ( String s)
Decodes the result of encodeToString()
back into a DriveId
.
Throws
public final String encodeToString ()
Returns a String representation of this DriveId
that
can be safely persisted, and from which an equivalent DriveId
can
later be reconstructed using decodeFromString(String)
.
The String representation is not guaranteed to be stable over time for a given
resource so should never be compared for equality. Always use decodeFromString(String)
and then equals(Object)
to compare two identifiers to see if they refer to the same
resource. Otherwise, toInvariantString()
is stable and can be safely used for DriveId
comparison.
public boolean equals ( Object obj)
public String getResourceId ()
Returns the remote Drive resource id associated with the resource. May be null
for local resources that have not yet been synchronized to the Drive
service.
public int getResourceType ()
Returns the resource type corresponding to this DriveId
.
Possible values are RESOURCE_TYPE_FILE
, RESOURCE_TYPE_FOLDER
or RESOURCE_TYPE_UNKNOWN
.
The RESOURCE_TYPE_UNKNOWN
will only be returned if the DriveId
instance has been created using decodeFromString(String)
, with an old string that was generated and
persisted by the client with an old version of Google Play Services. If the client is
not encoding, persisting and decoding DriveId
s,
this method will always return either RESOURCE_TYPE_FILE
or RESOURCE_TYPE_FOLDER
.
public int hashCode ()
public final String toInvariantString ()
Returns an invariant string for this DriveId
. This
is stable over time, so for a given DriveId
, this
value will always remain the same, and is guaranteed to be unique for each DriveId
. The
client can use it directly to compare equality of DriveId
s,
since two DriveId
s are
equal if and only if its invariant string is equal.
Note: This value cannot be used to decodeFromString(String)
, since it's not meant to encode a DriveId
, but
can be useful for client-side string-based DriveId
comparison, or for logging purposes.
public String toString ()
Returns a String representation of the ID. Use encodeToString()
to obtain a String representation that can decoded back to a DriveId
.