Add Discord RPC service

Add injectable Discord RPC service that will broadcast Discord events
through event bus and have API for setting Discord Rich Presence status.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
This commit is contained in:
Tomas Slusny
2018-02-03 20:08:56 +01:00
parent 80aebd1836
commit 15ad949123
14 changed files with 647 additions and 8 deletions

View File

@@ -32,18 +32,18 @@ import com.google.inject.Injector;
import java.applet.Applet;
import java.io.File;
import java.util.Optional;
import java.util.concurrent.ScheduledExecutorService;
import javax.inject.Singleton;
import javax.swing.SwingUtilities;
import joptsimple.OptionParser;
import joptsimple.OptionSet;
import lombok.extern.slf4j.Slf4j;
import net.runelite.api.Client;
import net.runelite.client.events.ClientUILoaded;
import net.runelite.client.account.SessionManager;
import net.runelite.client.chat.ChatMessageManager;
import net.runelite.client.config.ConfigManager;
import net.runelite.client.config.RuneLiteConfig;
import net.runelite.client.discord.DiscordService;
import net.runelite.client.events.ClientUILoaded;
import net.runelite.client.menus.MenuManager;
import net.runelite.client.plugins.PluginManager;
import net.runelite.client.ui.ClientUI;
@@ -78,9 +78,6 @@ public class RuneLite
@Inject
private ChatMessageManager chatMessageManager;
@Inject
private ScheduledExecutorService executor;
@Inject
private OverlayRenderer overlayRenderer;
@@ -90,6 +87,9 @@ public class RuneLite
@Inject
private RuneLiteConfig runeliteConfig;
@Inject
private DiscordService discordService;
Client client;
ClientUI gui;
Notifier notifier;
@@ -133,6 +133,9 @@ public class RuneLite
// Load swing UI
SwingUtilities.invokeAndWait(() -> setGui(ClientUI.create(properties, client)));
// Initialize Discord service
discordService.init();
// Load default configuration
configManager.load();