Package com.dropbox.core.v2.files
Class PathOrLink
- java.lang.Object
-
- com.dropbox.core.v2.files.PathOrLink
-
public final class PathOrLink extends java.lang.Object
This class is an open tagged union. Tagged unions instances are always associated to a specific tag. This means only one of theisAbc()
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
PathOrLink.Tag
Discriminating tag type forPathOrLink
.
-
Field Summary
Fields Modifier and Type Field Description static PathOrLink
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)
SharedLinkFileInfo
getLinkValue()
This instance must be tagged asPathOrLink.Tag.LINK
.java.lang.String
getPathValue()
This instance must be tagged asPathOrLink.Tag.PATH
.int
hashCode()
boolean
isLink()
boolean
isOther()
boolean
isPath()
static PathOrLink
link(SharedLinkFileInfo value)
Returns an instance ofPathOrLink
that has its tag set toPathOrLink.Tag.LINK
.static PathOrLink
path(java.lang.String value)
Returns an instance ofPathOrLink
that has its tag set toPathOrLink.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.
-
-
-
Field Detail
-
OTHER
public static final PathOrLink 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 PathOrLink.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 thisPathOrLink
.If a tag returned by the server is unrecognized by this SDK, the
PathOrLink.Tag.OTHER
value will be used.- Returns:
- the tag for this instance.
-
isPath
public boolean isPath()
- Returns:
true
if this instance is tagged asPathOrLink.Tag.PATH
,false
otherwise.
-
path
public static PathOrLink path(java.lang.String value)
- Parameters:
value
- value to assign to this instance.- Returns:
- Instance of
PathOrLink
with its tag set toPathOrLink.Tag.PATH
. - Throws:
java.lang.IllegalArgumentException
- ifvalue
does not match pattern "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)
" or isnull
.
-
getPathValue
public java.lang.String getPathValue()
This instance must be tagged asPathOrLink.Tag.PATH
.
-
isLink
public boolean isLink()
- Returns:
true
if this instance is tagged asPathOrLink.Tag.LINK
,false
otherwise.
-
link
public static PathOrLink link(SharedLinkFileInfo value)
- Parameters:
value
- value to assign to this instance.- Returns:
- Instance of
PathOrLink
with its tag set toPathOrLink.Tag.LINK
. - Throws:
java.lang.IllegalArgumentException
- ifvalue
isnull
.
-
getLinkValue
public SharedLinkFileInfo getLinkValue()
This instance must be tagged asPathOrLink.Tag.LINK
.- Returns:
- The
SharedLinkFileInfo
value associated with this instance ifisLink()
istrue
. - Throws:
java.lang.IllegalStateException
- IfisLink()
isfalse
.
-
isOther
public boolean isOther()
- Returns:
true
if this instance is tagged asPathOrLink.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
-
-