Class StatusChangeEvent

java.lang.Object
net.dv8tion.jda.api.events.Event
net.dv8tion.jda.api.events.StatusChangeEvent
All Implemented Interfaces:
GenericEvent, UpdateEvent<JDA, JDA.Status>

public class StatusChangeEvent extends Event implements UpdateEvent<JDA, JDA.Status>
Indicates that our Status changed. (Example: SHUTTING_DOWN -> SHUTDOWN)
Can be used to detect internal status changes. Possibly to log or forward on user's end.

Identifier: status

  • Field Details

  • Constructor Details

    • StatusChangeEvent

      public StatusChangeEvent(@Nonnull JDA api, @Nonnull JDA.Status newStatus, @Nonnull JDA.Status oldStatus)
  • Method Details

    • getNewStatus

      @Nonnull public JDA.Status getNewStatus()
      The status that we changed to
      Returns:
      The new status
    • getOldStatus

      @Nonnull public JDA.Status getOldStatus()
      The previous status
      Returns:
      The previous status
    • getPropertyIdentifier

      @Nonnull public String getPropertyIdentifier()
      Description copied from interface: UpdateEvent
      The field name for the updated property

      Example

      @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:
      getPropertyIdentifier in interface UpdateEvent<JDA, JDA.Status>
      Returns:
      The name of the updated property
    • getEntity

      @Nonnull public JDA getEntity()
      Description copied from interface: UpdateEvent
      The affected entity
      Specified by:
      getEntity in interface UpdateEvent<JDA, JDA.Status>
      Returns:
      The affected entity
    • getOldValue

      @Nonnull public JDA.Status getOldValue()
      Description copied from interface: UpdateEvent
      The old value
      Specified by:
      getOldValue in interface UpdateEvent<JDA, JDA.Status>
      Returns:
      The old value
    • getNewValue

      @Nonnull public JDA.Status getNewValue()
      Description copied from interface: UpdateEvent
      The new value
      Specified by:
      getNewValue in interface UpdateEvent<JDA, JDA.Status>
      Returns:
      The new value