public final class UserSelectorArg extends Object
This class is a 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.
Modifier and Type | Class and Description |
---|---|
static class |
UserSelectorArg.Tag
Discriminating tag type for
UserSelectorArg . |
Modifier and Type | Method and Description |
---|---|
static UserSelectorArg |
email(String value)
Returns an instance of
UserSelectorArg that has its tag set to
UserSelectorArg.Tag.EMAIL . |
boolean |
equals(Object obj) |
static UserSelectorArg |
externalId(String value)
Returns an instance of
UserSelectorArg that has its tag set to
UserSelectorArg.Tag.EXTERNAL_ID . |
String |
getEmailValue()
This instance must be tagged as
UserSelectorArg.Tag.EMAIL . |
String |
getExternalIdValue()
This instance must be tagged as
UserSelectorArg.Tag.EXTERNAL_ID . |
String |
getTeamMemberIdValue()
This instance must be tagged as
UserSelectorArg.Tag.TEAM_MEMBER_ID . |
int |
hashCode() |
boolean |
isEmail()
|
boolean |
isExternalId()
|
boolean |
isTeamMemberId()
|
UserSelectorArg.Tag |
tag()
Returns the tag for this instance.
|
static UserSelectorArg |
teamMemberId(String value)
Returns an instance of
UserSelectorArg that has its tag set to
UserSelectorArg.Tag.TEAM_MEMBER_ID . |
String |
toString() |
String |
toStringMultiline()
Returns a String representation of this object formatted for easier
readability.
|
public UserSelectorArg.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 UserSelectorArg
.
public boolean isTeamMemberId()
true
if this instance is tagged as UserSelectorArg.Tag.TEAM_MEMBER_ID
, false
otherwise.public static UserSelectorArg teamMemberId(String value)
UserSelectorArg
that has its tag set to
UserSelectorArg.Tag.TEAM_MEMBER_ID
.
None
value
- value to assign to this instance.UserSelectorArg
with its tag set to UserSelectorArg.Tag.TEAM_MEMBER_ID
.IllegalArgumentException
- if value
is null
.public String getTeamMemberIdValue()
UserSelectorArg.Tag.TEAM_MEMBER_ID
.String
value associated with this instance if isTeamMemberId()
is true
.IllegalStateException
- If isTeamMemberId()
is false
.public boolean isExternalId()
true
if this instance is tagged as UserSelectorArg.Tag.EXTERNAL_ID
, false
otherwise.public static UserSelectorArg externalId(String value)
UserSelectorArg
that has its tag set to
UserSelectorArg.Tag.EXTERNAL_ID
.
None
value
- value to assign to this instance.UserSelectorArg
with its tag set to UserSelectorArg.Tag.EXTERNAL_ID
.IllegalArgumentException
- if value
is longer than 64 or
is null
.public String getExternalIdValue()
UserSelectorArg.Tag.EXTERNAL_ID
.String
value associated with this instance if isExternalId()
is true
.IllegalStateException
- If isExternalId()
is false
.public boolean isEmail()
true
if this instance is tagged as UserSelectorArg.Tag.EMAIL
,
false
otherwise.public static UserSelectorArg email(String value)
value
- value to assign to this instance.UserSelectorArg
with its tag set to UserSelectorArg.Tag.EMAIL
.IllegalArgumentException
- if value
is longer than 255,
does not match pattern "^['&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*.[A-Za-z]{2,15}$
",
or is null
.public String getEmailValue()
UserSelectorArg.Tag.EMAIL
.String
value associated with this instance if isEmail()
is true
.IllegalStateException
- If isEmail()
is false
.public String toStringMultiline()
The returned String may contain newlines.