public final class PathOrLink
extends java.lang.Object
isAbc()
methods will return true
. You can use tag()
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.
Modifier and Type | Class and Description |
---|---|
static class |
PathOrLink.Tag
Discriminating tag type for
PathOrLink . |
Modifier and Type | Field and Description |
---|---|
static PathOrLink |
OTHER
Catch-all used for unknown tag values returned by the Dropbox servers.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object obj) |
SharedLinkFileInfo |
getLinkValue()
This instance must be tagged as
PathOrLink.Tag.LINK . |
java.lang.String |
getPathValue()
This instance must be tagged as
PathOrLink.Tag.PATH . |
int |
hashCode() |
boolean |
isLink()
|
boolean |
isOther()
|
boolean |
isPath()
|
static PathOrLink |
link(SharedLinkFileInfo value)
Returns an instance of
PathOrLink that has its tag set to PathOrLink.Tag.LINK . |
static PathOrLink |
path(java.lang.String value)
Returns an instance of
PathOrLink that has its tag set to PathOrLink.Tag.PATH . |
PathOrLink.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.
|
public static final PathOrLink OTHER
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.
public PathOrLink.Tag tag()
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 return true
. Callers are recommended to use the tag
value in a switch
statement to properly handle the different
values for this PathOrLink
.
If a tag returned by the server is unrecognized by this SDK, the
PathOrLink.Tag.OTHER
value will be used.
public boolean isPath()
true
if this instance is tagged as PathOrLink.Tag.PATH
,
false
otherwise.public static PathOrLink path(java.lang.String value)
value
- value to assign to this instance.PathOrLink
with its tag set to PathOrLink.Tag.PATH
.java.lang.IllegalArgumentException
- if value
does not match pattern
"(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)
"
or is null
.public java.lang.String getPathValue()
PathOrLink.Tag.PATH
.public boolean isLink()
true
if this instance is tagged as PathOrLink.Tag.LINK
,
false
otherwise.public static PathOrLink link(SharedLinkFileInfo value)
value
- value to assign to this instance.PathOrLink
with its tag set to PathOrLink.Tag.LINK
.java.lang.IllegalArgumentException
- if value
is null
.public SharedLinkFileInfo getLinkValue()
PathOrLink.Tag.LINK
.SharedLinkFileInfo
value associated with this
instance if isLink()
is true
.java.lang.IllegalStateException
- If isLink()
is false
.public boolean isOther()
true
if this instance is tagged as PathOrLink.Tag.OTHER
,
false
otherwise.public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String toStringMultiline()
The returned String may contain newlines.