Package net.dv8tion.jda.api.entities
Class Emoji
- java.lang.Object
-
- net.dv8tion.jda.api.entities.Emoji
-
- All Implemented Interfaces:
java.util.Formattable
,IMentionable
,ISnowflake
,SerializableData
public class Emoji extends java.lang.Object implements SerializableData, IMentionable
Represents a Discord Emoji.
This can either beunicode
orcustom
.If this emoji is unicode, then
getIdLong()
will be0
andISnowflake.getTimeCreated()
will be constant at 2015.- See Also:
getName()
,getAsMention()
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object obj)
static Emoji
fromData(DataObject emoji)
Parses the provided JSON representation to an emoji instance.static Emoji
fromEmote(java.lang.String name, long id, boolean animated)
Creates an emoji with the provided name.static Emoji
fromEmote(Emote emote)
Creates an emoji from the providedEmote
static Emoji
fromMarkdown(java.lang.String code)
Parses the provided markdown formatting to an Emoji instance.static Emoji
fromUnicode(java.lang.String code)
Creates an emoji with the provided unicode.java.lang.String
getAsMention()
Retrieve a Mention for this Entity.long
getIdLong()
The Snowflake id of this entity.java.lang.String
getName()
The name of this emoji.int
hashCode()
boolean
isAnimated()
Whether this emote is animated.boolean
isCustom()
Whether this is a custom emote from a Guild.boolean
isUnicode()
Whether this emoji is a standard unicode emoji.DataObject
toData()
SerializedDataObject
for this object.java.lang.String
toString()
-
Methods inherited from interface net.dv8tion.jda.api.entities.IMentionable
formatTo
-
Methods inherited from interface net.dv8tion.jda.api.entities.ISnowflake
getId, getTimeCreated
-
-
-
-
Method Detail
-
getName
@Nonnull public java.lang.String getName()
The name of this emoji.
This will be the unicode characters if this emoji is notcustom
.- Returns:
- The unicode or custom name
-
getIdLong
public long getIdLong()
Description copied from interface:ISnowflake
The Snowflake id of this entity. This is unique to every entity and will never change.- Specified by:
getIdLong
in interfaceISnowflake
- Returns:
- Long containing the Id.
-
isAnimated
public boolean isAnimated()
Whether this emote is animated.- Returns:
- True, if this emote is animated
-
isUnicode
public boolean isUnicode()
Whether this emoji is a standard unicode emoji.
This meansgetName()
returns the unicode characters of this emoji andISnowflake.getId()
returns 0.- Returns:
- True, if this emoji is standard unicode
-
isCustom
public boolean isCustom()
Whether this is a custom emote from a Guild.- Returns:
- True, if this is a custom emote
-
fromUnicode
@Nonnull public static Emoji fromUnicode(@Nonnull java.lang.String code)
Creates an emoji with the provided unicode.
This has to be the unicode characters rather than the emoji name.- Parameters:
code
- The unicode characters, or codepoint notation such as"U+1f649"
- Returns:
- The new emoji instance
- Throws:
java.lang.IllegalArgumentException
- If the code is null or empty
-
fromEmote
@Nonnull public static Emoji fromEmote(@Nonnull java.lang.String name, long id, boolean animated)
Creates an emoji with the provided name.- Parameters:
name
- The emote nameid
- The emote idanimated
- Whether this emote is animated- Returns:
- The new emoji instance
- Throws:
java.lang.IllegalArgumentException
- If the name is null or empty
-
fromEmote
@Nonnull public static Emoji fromEmote(@Nonnull Emote emote)
Creates an emoji from the providedEmote
- Parameters:
emote
- The emote instance- Returns:
- The new emoji instance
- Throws:
java.lang.IllegalArgumentException
- If the emote is null
-
fromMarkdown
@Nonnull public static Emoji fromMarkdown(@Nonnull java.lang.String code)
Parses the provided markdown formatting to an Emoji instance.Example
// animated custom emoji parseMarkdown("<a:dance:123456789123456789>"); // not animated custom emoji parseMarkdown("<:dog:123456789123456789>"); // unicode emoji, escape codes parseMarkdown("😃"); // unicode emoji parseMarkdown("😃");
- Parameters:
code
- The code to parse- Returns:
- The emoji instance
- Throws:
java.lang.IllegalArgumentException
- If the provided code is null or empty
-
fromData
@Nonnull public static Emoji fromData(@Nonnull DataObject emoji)
Parses the provided JSON representation to an emoji instance.- Parameters:
emoji
- The emoji json- Returns:
- The emoji instance
- Throws:
ParsingException
- If the JSON is not a valid emoji
-
toData
@Nonnull public DataObject toData()
Description copied from interface:SerializableData
SerializedDataObject
for this object.- Specified by:
toData
in interfaceSerializableData
- Returns:
DataObject
-
getAsMention
@Nonnull public java.lang.String getAsMention()
Description copied from interface:IMentionable
Retrieve a Mention for this Entity. For the publicRole
(@everyone), this will return the literal string"@everyone"
.- Specified by:
getAsMention
in interfaceIMentionable
- Returns:
- A resolvable mention.
-
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
-
-