Class PathRoot

java.lang.Object
com.dropbox.core.v2.common.PathRoot

public final class PathRoot extends Object
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 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.

  • Field Details

    • HOME

      public static final PathRoot HOME
      Paths are relative to the authenticating user's home namespace, whether or not that user belongs to a team.
    • OTHER

      public static final PathRoot 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 Details

    • tag

      public PathRoot.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 return true. Callers are recommended to use the tag value in a switch statement to properly handle the different values for this PathRoot.

      If a tag returned by the server is unrecognized by this SDK, the PathRoot.Tag.OTHER value will be used.

      Returns:
      the tag for this instance.
    • isHome

      public boolean isHome()
      Returns true if this instance has the tag PathRoot.Tag.HOME, false otherwise.
      Returns:
      true if this instance is tagged as PathRoot.Tag.HOME, false otherwise.
    • isRoot

      public boolean isRoot()
      Returns true if this instance has the tag PathRoot.Tag.ROOT, false otherwise.
      Returns:
      true if this instance is tagged as PathRoot.Tag.ROOT, false otherwise.
    • root

      public static PathRoot root(String value)
      Returns an instance of PathRoot that has its tag set to PathRoot.Tag.ROOT.

      Paths are relative to the authenticating user's root namespace (This results in PathRootError.getInvalidRootValue() if the user's root namespace has changed.).

      Parameters:
      value - value to assign to this instance.
      Returns:
      Instance of PathRoot with its tag set to PathRoot.Tag.ROOT.
      Throws:
      IllegalArgumentException - if value does not match pattern "[-_0-9a-zA-Z:]+" or is null.
    • getRootValue

      public String getRootValue()
      Paths are relative to the authenticating user's root namespace (This results in PathRootError.getInvalidRootValue() if the user's root namespace has changed.).

      This instance must be tagged as PathRoot.Tag.ROOT.

      Returns:
      The String value associated with this instance if isRoot() is true.
      Throws:
      IllegalStateException - If isRoot() is false.
    • isNamespaceId

      public boolean isNamespaceId()
      Returns true if this instance has the tag PathRoot.Tag.NAMESPACE_ID, false otherwise.
      Returns:
      true if this instance is tagged as PathRoot.Tag.NAMESPACE_ID, false otherwise.
    • namespaceId

      public static PathRoot namespaceId(String value)
      Returns an instance of PathRoot that has its tag set to PathRoot.Tag.NAMESPACE_ID.

      Paths are relative to given namespace id (This results in PathRootError.NO_PERMISSION if you don't have access to this namespace.).

      Parameters:
      value - value to assign to this instance.
      Returns:
      Instance of PathRoot with its tag set to PathRoot.Tag.NAMESPACE_ID.
      Throws:
      IllegalArgumentException - if value does not match pattern "[-_0-9a-zA-Z:]+" or is null.
    • getNamespaceIdValue

      public String getNamespaceIdValue()
      Paths are relative to given namespace id (This results in PathRootError.NO_PERMISSION if you don't have access to this namespace.).

      This instance must be tagged as PathRoot.Tag.NAMESPACE_ID.

      Returns:
      The String value associated with this instance if isNamespaceId() is true.
      Throws:
      IllegalStateException - If isNamespaceId() is false.
    • isOther

      public boolean isOther()
      Returns true if this instance has the tag PathRoot.Tag.OTHER, false otherwise.
      Returns:
      true if this instance is tagged as PathRoot.Tag.OTHER, false otherwise.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toStringMultiline

      public 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