Class MetadataV2
- java.lang.Object
-
- com.dropbox.core.v2.files.MetadataV2
-
public final class MetadataV2 extends java.lang.Object
Metadata for a file, folder or other resource types.This class is an open tagged union. Tagged unions instances are always associated to a specific tag. This means only one of the
isAbc()
methods will returntrue
. You can usetag()
to determine the tag associated with this instance.Open unions may be extended in the future with additional tags. If a new tag is introduced that this SDK does not recognized, the
OTHER
value will be used.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MetadataV2.Tag
Discriminating tag type forMetadataV2
.
-
Field Summary
Fields Modifier and Type Field Description static MetadataV2
OTHER
Catch-all used for unknown tag values returned by the Dropbox servers.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object obj)
Metadata
getMetadataValue()
This instance must be tagged asMetadataV2.Tag.METADATA
.int
hashCode()
boolean
isMetadata()
boolean
isOther()
static MetadataV2
metadata(Metadata value)
Returns an instance ofMetadataV2
that has its tag set toMetadataV2.Tag.METADATA
.MetadataV2.Tag
tag()
Returns the tag for this instance.java.lang.String
toString()
java.lang.String
toStringMultiline()
Returns a String representation of this object formatted for easier readability.
-
-
-
Field Detail
-
OTHER
public static final MetadataV2 OTHER
Catch-all used for unknown tag values returned by the Dropbox servers.Receiving a catch-all value typically indicates this SDK version is not up to date. Consider updating your SDK version to handle the new tags.
-
-
Method Detail
-
tag
public MetadataV2.Tag tag()
Returns the tag for this instance.This class is a tagged union. Tagged unions instances are always associated to a specific tag. This means only one of the
isXyz()
methods will returntrue
. Callers are recommended to use the tag value in aswitch
statement to properly handle the different values for thisMetadataV2
.If a tag returned by the server is unrecognized by this SDK, the
MetadataV2.Tag.OTHER
value will be used.- Returns:
- the tag for this instance.
-
isMetadata
public boolean isMetadata()
- Returns:
true
if this instance is tagged asMetadataV2.Tag.METADATA
,false
otherwise.
-
metadata
public static MetadataV2 metadata(Metadata value)
- Parameters:
value
- value to assign to this instance.- Returns:
- Instance of
MetadataV2
with its tag set toMetadataV2.Tag.METADATA
. - Throws:
java.lang.IllegalArgumentException
- ifvalue
isnull
.
-
getMetadataValue
public Metadata getMetadataValue()
This instance must be tagged asMetadataV2.Tag.METADATA
.- Returns:
- The
Metadata
value associated with this instance ifisMetadata()
istrue
. - Throws:
java.lang.IllegalStateException
- IfisMetadata()
isfalse
.
-
isOther
public boolean isOther()
- Returns:
true
if this instance is tagged asMetadataV2.Tag.OTHER
,false
otherwise.
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
toStringMultiline
public java.lang.String toStringMultiline()
Returns a String representation of this object formatted for easier readability.The returned String may contain newlines.
- Returns:
- Formatted, multiline String representation of this object
-
-