public final class SpaceAllocation 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.
Modifier and Type | Class and Description |
---|---|
static class |
SpaceAllocation.Tag
Discriminating tag type for
SpaceAllocation . |
Modifier and Type | Field and Description |
---|---|
static SpaceAllocation |
OTHER
Catch-all used for unknown tag values returned by the Dropbox servers.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj) |
IndividualSpaceAllocation |
getIndividualValue()
The user's space allocation applies only to their individual account.
|
TeamSpaceAllocation |
getTeamValue()
The user shares space with other members of their team.
|
int |
hashCode() |
static SpaceAllocation |
individual(IndividualSpaceAllocation value)
Returns an instance of
SpaceAllocation that has its tag set to
SpaceAllocation.Tag.INDIVIDUAL . |
boolean |
isIndividual()
|
boolean |
isOther()
|
boolean |
isTeam()
|
SpaceAllocation.Tag |
tag()
Returns the tag for this instance.
|
static SpaceAllocation |
team(TeamSpaceAllocation value)
Returns an instance of
SpaceAllocation that has its tag set to
SpaceAllocation.Tag.TEAM . |
String |
toString() |
String |
toStringMultiline()
Returns a String representation of this object formatted for easier
readability.
|
public static final SpaceAllocation 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 SpaceAllocation.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 SpaceAllocation
.
If a tag returned by the server is unrecognized by this SDK, the
SpaceAllocation.Tag.OTHER
value will be used.
public boolean isIndividual()
true
if this instance is tagged as SpaceAllocation.Tag.INDIVIDUAL
, false
otherwise.public static SpaceAllocation individual(IndividualSpaceAllocation value)
SpaceAllocation
that has its tag set to
SpaceAllocation.Tag.INDIVIDUAL
.
The user's space allocation applies only to their individual account.
value
- value to assign to this instance.SpaceAllocation
with its tag set to SpaceAllocation.Tag.INDIVIDUAL
.IllegalArgumentException
- if value
is null
.public IndividualSpaceAllocation getIndividualValue()
This instance must be tagged as SpaceAllocation.Tag.INDIVIDUAL
.
IndividualSpaceAllocation
value associated with this
instance if isIndividual()
is true
.IllegalStateException
- If isIndividual()
is false
.public boolean isTeam()
true
if this instance is tagged as SpaceAllocation.Tag.TEAM
,
false
otherwise.public static SpaceAllocation team(TeamSpaceAllocation value)
SpaceAllocation
that has its tag set to
SpaceAllocation.Tag.TEAM
.
The user shares space with other members of their team.
value
- value to assign to this instance.SpaceAllocation
with its tag set to SpaceAllocation.Tag.TEAM
.IllegalArgumentException
- if value
is null
.public TeamSpaceAllocation getTeamValue()
This instance must be tagged as SpaceAllocation.Tag.TEAM
.
TeamSpaceAllocation
value associated with this
instance if isTeam()
is true
.IllegalStateException
- If isTeam()
is false
.public boolean isOther()
true
if this instance is tagged as SpaceAllocation.Tag.OTHER
,
false
otherwise.public String toStringMultiline()
The returned String may contain newlines.