Search in sources :

Example 1 with ServerLeaveListener

use of de.btobastian.javacord.listener.server.ServerLeaveListener in project Javacord by BtoBastian.

the class GuildDeleteHandler method handle.

@Override
public void handle(JSONObject packet) {
    final Server server = api.getServerById(packet.getString("id"));
    if (server == null) {
        return;
    }
    api.getServerMap().remove(server.getId());
    listenerExecutorService.submit(new Runnable() {

        @Override
        public void run() {
            List<ServerLeaveListener> listeners = api.getListeners(ServerLeaveListener.class);
            synchronized (listeners) {
                for (ServerLeaveListener listener : listeners) {
                    try {
                        listener.onServerLeave(api, server);
                    } catch (Throwable t) {
                        logger.warn("Uncaught exception in ServerLeaveListener!", t);
                    }
                }
            }
        }
    });
}
Also used : Server(de.btobastian.javacord.entities.Server) List(java.util.List) ServerLeaveListener(de.btobastian.javacord.listener.server.ServerLeaveListener)

Aggregations

Server (de.btobastian.javacord.entities.Server)1 ServerLeaveListener (de.btobastian.javacord.listener.server.ServerLeaveListener)1 List (java.util.List)1