Class GenericUserUpdateEvent<T>
- java.lang.Object
-
- net.dv8tion.jda.api.events.Event
-
- net.dv8tion.jda.api.events.user.GenericUserEvent
-
- net.dv8tion.jda.api.events.user.update.GenericUserUpdateEvent<T>
-
- Type Parameters:
T- The type of the updated value
- All Implemented Interfaces:
GenericEvent,UpdateEvent<User,T>
- Direct Known Subclasses:
UserUpdateActivitiesEvent,UserUpdateActivityOrderEvent,UserUpdateAvatarEvent,UserUpdateDiscriminatorEvent,UserUpdateFlagsEvent,UserUpdateNameEvent,UserUpdateOnlineStatusEvent
public abstract class GenericUserUpdateEvent<T> extends GenericUserEvent implements UpdateEvent<User,T>
Indicates that a user has updated their presence on discord.
This includes name, avatar, and similar visible features of the user.Requirements
These events require the
GUILD_MEMBERSintent to be enabled.createDefault(String)andcreateLight(String)disable this by default!Additionally, these events require the
MemberCachePolicyto cache the updated members. Discord does not specifically tell us about the updates, but merely tells us the member was updated and gives us the updated member object. In order to fire a specific event like this we need to have the old member cached to compare against.
-
-
Constructor Summary
Constructors Constructor Description GenericUserUpdateEvent(JDA api, long responseNumber, User user, T previous, T next, java.lang.String identifier)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description UsergetEntity()The affected entityTgetNewValue()The new valueTgetOldValue()The old valuejava.lang.StringgetPropertyIdentifier()The field name for the updated propertyjava.lang.StringtoString()-
Methods inherited from class net.dv8tion.jda.api.events.user.GenericUserEvent
getUser
-
Methods inherited from class net.dv8tion.jda.api.events.Event
getJDA, getResponseNumber
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.dv8tion.jda.api.events.GenericEvent
getJDA, getResponseNumber
-
Methods inherited from interface net.dv8tion.jda.api.events.UpdateEvent
getEntityType
-
-
-
-
Method Detail
-
getEntity
@Nonnull public User getEntity()
Description copied from interface:UpdateEventThe affected entity- Specified by:
getEntityin interfaceUpdateEvent<User,T>- Returns:
- The affected entity
-
getPropertyIdentifier
@Nonnull public java.lang.String getPropertyIdentifier()
Description copied from interface:UpdateEventThe field name for the updated propertyExample
@Override public void onGenericRoleUpdate(GenericRoleUpdateEvent event) { switch (event.getPropertyIdentifier()) { case RoleUpdateColorEvent.IDENTIFIER: System.out.printf("Updated color for role: %s%n", event); break; case RoleUpdatePositionEvent.IDENTIFIER: RoleUpdatePositionEvent update = (RoleUpdatePositionEvent) event; System.out.printf("Updated position for role: %s raw(%s->%s)%n", event, update.getOldPositionRaw(), update.getNewPositionRaw()); break; default: return; } }- Specified by:
getPropertyIdentifierin interfaceUpdateEvent<User,T>- Returns:
- The name of the updated property
-
getOldValue
@Nullable public T getOldValue()
Description copied from interface:UpdateEventThe old value- Specified by:
getOldValuein interfaceUpdateEvent<User,T>- Returns:
- The old value
-
getNewValue
@Nullable public T getNewValue()
Description copied from interface:UpdateEventThe new value- Specified by:
getNewValuein interfaceUpdateEvent<User,T>- Returns:
- The new value
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-