Class OptionMapping
CommandInteraction option.
Since values for command options are a union-type you can use this class to coerce the values to the desired target type.
You can use getType() to do dynamic handling as well. Each getter documents the conditions and coercion rules for the specific types.
-
Constructor Summary
ConstructorsConstructorDescriptionOptionMapping(DataObject data, gnu.trove.map.TLongObjectMap<Object> resolved) -
Method Summary
Modifier and TypeMethodDescriptionbooleanThe resolvedAudioChannelfor this option value.booleanThe boolean value.doubleThe double value for this option.The resolvedGuildChannelfor this option value.longThe long value for this option.The resolvedMemberfor this option value.The resolvedIMentionableinstance for this option value.The resolvedGuildMessageChannelfor this option value.The resolvedNewsChannelfor this option value.The resolvedRolefor this option value.The resolvedStageChannelfor this option value.The String representation of this option value.The resolvedTextChannelfor this option value.The resolvedThreadChannelfor this option value.The resolvedUserfor this option value.The resolvedVoiceChannelfor this option value.TheChannelTypefor the resolved channel.ResolvedGuildChannelmentions for aSTRINGoption.getName()The name of this option.getType()TheOptionTypeof this option.inthashCode()toString()
-
Constructor Details
-
OptionMapping
-
-
Method Details
-
getMentionedMembers
ResolvedMembermentions for aSTRINGoption.
If this option is not of typeSTRING, this always returns an empty list. Mentions are sorted by occurrence.This only contains members of the guild. If the user mentions users from other guilds, they will only be provided by
getMentionedUsers().This is not supported for
CommandAutoCompleteInteraction. -
getMentionedUsers
ResolvedUsermentions for aSTRINGoption.
If this option is not of typeSTRING, this always returns an empty list. Mentions are sorted by occurrence.This may also contain users which are not members in the guild!
This is not supported for
CommandAutoCompleteInteraction. -
getMentionedRoles
ResolvedRolementions for aSTRINGoption.
If this option is not of typeSTRING, this always returns an empty list. Mentions are sorted by occurrence.This is not supported for
CommandAutoCompleteInteraction. -
getMentionedChannels
ResolvedGuildChannelmentions for aSTRINGoption.
If this option is not of typeSTRING, this always returns an empty list. Mentions are sorted by occurrence.This is not supported for
CommandAutoCompleteInteraction.- Returns:
ListofGuildChannelthe resolved guild channel mentions in a string option
-
getMentions
All resolvedmentionsfor aSTRINGoption.
If this option is not of typeSTRING, this always returns an empty list. Mentions are sorted by occurrence.This is not supported for
CommandAutoCompleteInteraction. This mergesgetMentionedUsers(),getMentionedMembers(),getMentionedRoles(), andgetMentionedChannels().- Returns:
ListofIMentionablethe resolved mentions in a string option
-
getType
TheOptionTypeof this option.- Returns:
- The
OptionType
-
getName
The name of this option.- Returns:
- The option name
-
getAsString
The String representation of this option value.
This will automatically convert the value to a string if the type is notOptionType.STRING.
This will be the ID of any resolved entity such asRoleorMember.- Returns:
- The String representation of this option value
-
getAsBoolean
public boolean getAsBoolean()The boolean value.- Returns:
- The boolean value
- Throws:
IllegalStateException- If this option is not of typeBOOLEAN
-
getAsLong
public long getAsLong()- Returns:
- The long value
- Throws:
IllegalStateException- If this optiontypecannot be converted to a longNumberFormatException- If this option is of typeSTRINGand could not be parsed to a valid long value
-
getAsDouble
public double getAsDouble()The double value for this option.- Returns:
- The double value
- Throws:
IllegalStateException- If this optiontypecannot be converted to a doubleNumberFormatException- If this option is of typeSTRINGand could not be parsed to a valid double value
-
getAsMentionable
The resolvedIMentionableinstance for this option value.- Returns:
- The resolved
IMentionable - Throws:
IllegalStateException- If the mentioned entity is not resolvable
-
getAsMember
The resolvedMemberfor this option value.
Note thatOptionType.USERcan also accept users that are not members of a guild, in which case this will be null!- Returns:
- The resolved
Member, or null - Throws:
IllegalStateException- If this option is not of typeUSERorMENTIONABLE
-
getAsUser
The resolvedUserfor this option value.- Returns:
- The resolved
User - Throws:
IllegalStateException- If this option is not of typeUSERorMENTIONABLEwithout a resolved user
-
getAsRole
The resolvedRolefor this option value.- Returns:
- The resolved
Role - Throws:
IllegalStateException- If this option is not of typeROLEorMENTIONABLEwithout a resolved role
-
getChannelType
TheChannelTypefor the resolved channel.- Returns:
- The
ChannelType - Throws:
IllegalStateException- If this option is not of typeCHANNEL
-
getAsGuildChannel
The resolvedGuildChannelfor this option value.
Note thatOptionType.CHANNELcan accept channels of any type!- Returns:
- The resolved
GuildChannel - Throws:
IllegalStateException- If this option is not of typeCHANNELor could not be resolved for unexpected reasons
-
getAsMessageChannel
The resolvedGuildMessageChannelfor this option value.
Note thatOptionType.CHANNELcan accept channels of any type!- Returns:
- The resolved
GuildMessageChannel, or null if this was not a message channel - Throws:
IllegalStateException- If this option is not of typeCHANNEL
-
getAsTextChannel
The resolvedTextChannelfor this option value.
Note thatOptionType.CHANNELcan accept channels of any type!- Returns:
- The resolved
TextChannel, or null if this was not a text channel - Throws:
IllegalStateException- If this option is not of typeCHANNEL
-
getAsNewsChannel
The resolvedNewsChannelfor this option value.
Note thatOptionType.CHANNELcan accept channels of any type!- Returns:
- The resolved
NewsChannel, or null if this was not a news channel - Throws:
IllegalStateException- If this option is not of typeCHANNEL
-
getAsThreadChannel
The resolvedThreadChannelfor this option value.
Note thatOptionType.CHANNELcan accept channels of any type!- Returns:
- The resolved
ThreadChannel, or null if this was not a thread channel - Throws:
IllegalStateException- If this option is not of typeCHANNEL
-
getAsAudioChannel
The resolvedAudioChannelfor this option value.
Note thatOptionType.CHANNELcan accept channels of any type!- Returns:
- The resolved
AudioChannel, or null if this was not an audio channel - Throws:
IllegalStateException- If this option is not of typeCHANNEL
-
getAsVoiceChannel
The resolvedVoiceChannelfor this option value.
Note thatOptionType.CHANNELcan accept channels of any type!- Returns:
- The resolved
VoiceChannel, or null if this was not a voice channel - Throws:
IllegalStateException- If this option is not of typeCHANNEL
-
getAsStageChannel
The resolvedStageChannelfor this option value.
Note thatOptionType.CHANNELcan accept channels of any type!- Returns:
- The resolved
StageChannel, or null if this was not a stage channel - Throws:
IllegalStateException- If this option is not of typeCHANNEL
-
toString
-
hashCode
public int hashCode() -
equals
-