Ver código fonte

MBassador.

Change-Id: I2cf35d5859c85c3609002f126241536fda5d588e
Depends-On: I2baa7e986ded54930093768238ed24cab8cf4bf7
Reviewed-on: http://gerrit.dmdirc.com/3770
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Chris Smith <chris@dmdirc.com>
changes/70/3770/5
Greg Holmes 9 anos atrás
pai
commit
87c12df5c0
100 arquivos alterados com 545 adições e 541 exclusões
  1. 1
    0
      ivy.xml
  2. 8
    8
      src/com/dmdirc/addons/contactlist/ContactListListener.java
  3. 3
    3
      src/com/dmdirc/addons/dcc/ChatContainer.java
  4. 6
    6
      src/com/dmdirc/addons/dcc/DCCCommand.java
  5. 2
    2
      src/com/dmdirc/addons/dcc/DCCCommandParser.java
  6. 2
    2
      src/com/dmdirc/addons/dcc/DCCFrameContainer.java
  7. 12
    12
      src/com/dmdirc/addons/dcc/DCCManager.java
  8. 2
    2
      src/com/dmdirc/addons/dcc/PlaceholderContainer.java
  9. 7
    7
      src/com/dmdirc/addons/dcc/TransferContainer.java
  10. 7
    7
      src/com/dmdirc/addons/dcc/ui/TransferPanel.java
  11. 11
    11
      src/com/dmdirc/addons/debug/commands/EventBusViewer.java
  12. 6
    6
      src/com/dmdirc/addons/debug/commands/FakeError.java
  13. 5
    5
      src/com/dmdirc/addons/debug/commands/FirstRun.java
  14. 3
    3
      src/com/dmdirc/addons/debug/commands/ForceUpdate.java
  15. 5
    5
      src/com/dmdirc/addons/exec/ExecCommand.java
  16. 5
    4
      src/com/dmdirc/addons/freedesktop_notifications/FDManager.java
  17. 5
    5
      src/com/dmdirc/addons/identd/IdentClient.java
  18. 10
    10
      src/com/dmdirc/addons/identd/IdentdManager.java
  19. 6
    6
      src/com/dmdirc/addons/identd/IdentdServer.java
  20. 12
    12
      src/com/dmdirc/addons/lagdisplay/LagDisplayManager.java
  21. 2
    2
      src/com/dmdirc/addons/logging/HistoryWindow.java
  22. 31
    32
      src/com/dmdirc/addons/logging/LoggingManager.java
  23. 5
    5
      src/com/dmdirc/addons/mediasource_dbus/DBusMediaSourceManager.java
  24. 6
    6
      src/com/dmdirc/addons/mediasource_linux_title/TitleMediaSource.java
  25. 3
    3
      src/com/dmdirc/addons/mediasource_linux_title/TitleMediaSourceManager.java
  26. 9
    9
      src/com/dmdirc/addons/nickcolours/NickColourManager.java
  27. 9
    9
      src/com/dmdirc/addons/notifications/NotificationsManager.java
  28. 9
    9
      src/com/dmdirc/addons/nowplaying/NowPlayingManager.java
  29. 2
    2
      src/com/dmdirc/addons/parserdebug/DebugWindow.java
  30. 8
    8
      src/com/dmdirc/addons/parserdebug/ParserDebugManager.java
  31. 2
    2
      src/com/dmdirc/addons/redirect/FakeWriteableFrameContainer.java
  32. 3
    3
      src/com/dmdirc/addons/redirect/RedirectCommand.java
  33. 3
    3
      src/com/dmdirc/addons/scriptplugin/ScriptCommand.java
  34. 6
    5
      src/com/dmdirc/addons/scriptplugin/ScriptEngineWrapper.java
  35. 5
    5
      src/com/dmdirc/addons/scriptplugin/ScriptManager.java
  36. 10
    10
      src/com/dmdirc/addons/scriptplugin/ScriptPluginManager.java
  37. 2
    3
      src/com/dmdirc/addons/serverlists/ServerList.java
  38. 3
    3
      src/com/dmdirc/addons/serverlists/service/ServerListServiceProvider.java
  39. 8
    8
      src/com/dmdirc/addons/systray/SystrayManager.java
  40. 3
    3
      src/com/dmdirc/addons/time/TimedCommand.java
  41. 3
    3
      src/com/dmdirc/addons/time/TimerManager.java
  42. 9
    9
      src/com/dmdirc/addons/ui_swing/Apple.java
  43. 6
    6
      src/com/dmdirc/addons/ui_swing/DMDircEventQueue.java
  44. 12
    12
      src/com/dmdirc/addons/ui_swing/MainFrame.java
  45. 3
    3
      src/com/dmdirc/addons/ui_swing/PrefsComponentFactory.java
  46. 5
    5
      src/com/dmdirc/addons/ui_swing/QuitWorker.java
  47. 4
    4
      src/com/dmdirc/addons/ui_swing/SwingLinkHandler.java
  48. 20
    20
      src/com/dmdirc/addons/ui_swing/SwingManager.java
  49. 5
    5
      src/com/dmdirc/addons/ui_swing/SwingUIInitialiser.java
  50. 9
    8
      src/com/dmdirc/addons/ui_swing/SwingWindowFactory.java
  51. 2
    2
      src/com/dmdirc/addons/ui_swing/UIUtilities.java
  52. 5
    5
      src/com/dmdirc/addons/ui_swing/actions/RedoAction.java
  53. 6
    6
      src/com/dmdirc/addons/ui_swing/actions/ReplacePasteAction.java
  54. 5
    5
      src/com/dmdirc/addons/ui_swing/actions/UndoAction.java
  55. 4
    4
      src/com/dmdirc/addons/ui_swing/components/FontPicker.java
  56. 5
    5
      src/com/dmdirc/addons/ui_swing/components/LoggingSwingWorker.java
  57. 7
    7
      src/com/dmdirc/addons/ui_swing/components/MDIBar.java
  58. 2
    2
      src/com/dmdirc/addons/ui_swing/components/TopicBar.java
  59. 3
    3
      src/com/dmdirc/addons/ui_swing/components/TopicBarFactory.java
  60. 5
    5
      src/com/dmdirc/addons/ui_swing/components/addonbrowser/DataLoaderWorker.java
  61. 3
    3
      src/com/dmdirc/addons/ui_swing/components/addonbrowser/DataLoaderWorkerFactory.java
  62. 2
    2
      src/com/dmdirc/addons/ui_swing/components/addonbrowser/InstallWorker.java
  63. 3
    3
      src/com/dmdirc/addons/ui_swing/components/addonbrowser/InstallWorkerFactory.java
  64. 3
    3
      src/com/dmdirc/addons/ui_swing/components/addonpanel/AddonPanel.java
  65. 6
    6
      src/com/dmdirc/addons/ui_swing/components/addonpanel/PluginPanel.java
  66. 2
    2
      src/com/dmdirc/addons/ui_swing/components/addonpanel/ThemePanel.java
  67. 7
    7
      src/com/dmdirc/addons/ui_swing/components/frames/ChannelFrame.java
  68. 4
    4
      src/com/dmdirc/addons/ui_swing/components/frames/ComponentCreator.java
  69. 3
    3
      src/com/dmdirc/addons/ui_swing/components/frames/ComponentFrame.java
  70. 3
    3
      src/com/dmdirc/addons/ui_swing/components/frames/ComponentFrameFactory.java
  71. 3
    3
      src/com/dmdirc/addons/ui_swing/components/frames/ComponentInputFrame.java
  72. 3
    3
      src/com/dmdirc/addons/ui_swing/components/frames/DesktopWindowFrame.java
  73. 6
    6
      src/com/dmdirc/addons/ui_swing/components/frames/InputTextFrame.java
  74. 10
    10
      src/com/dmdirc/addons/ui_swing/components/frames/TextFrame.java
  75. 3
    3
      src/com/dmdirc/addons/ui_swing/components/inputfields/SwingInputHandler.java
  76. 7
    7
      src/com/dmdirc/addons/ui_swing/components/statusbar/InviteLabel.java
  77. 7
    7
      src/com/dmdirc/addons/ui_swing/components/text/WrapEditorKit.java
  78. 2
    2
      src/com/dmdirc/addons/ui_swing/dialogs/about/LicenceLoader.java
  79. 2
    2
      src/com/dmdirc/addons/ui_swing/dialogs/about/LicencesPanel.java
  80. 9
    9
      src/com/dmdirc/addons/ui_swing/dialogs/actionsmanager/ActionsManagerDialog.java
  81. 2
    2
      src/com/dmdirc/addons/ui_swing/dialogs/aliases/AliasManagerDialog.java
  82. 3
    3
      src/com/dmdirc/addons/ui_swing/dialogs/channelsetting/ChannelSettingsDialog.java
  83. 3
    3
      src/com/dmdirc/addons/ui_swing/dialogs/channelsetting/TopicDisplayPane.java
  84. 3
    3
      src/com/dmdirc/addons/ui_swing/dialogs/channelsetting/TopicPane.java
  85. 3
    3
      src/com/dmdirc/addons/ui_swing/dialogs/paste/PasteDialog.java
  86. 3
    3
      src/com/dmdirc/addons/ui_swing/dialogs/paste/PasteDialogFactory.java
  87. 2
    2
      src/com/dmdirc/addons/ui_swing/dialogs/prefs/CategoryLabel.java
  88. 4
    4
      src/com/dmdirc/addons/ui_swing/dialogs/prefs/CategoryPanel.java
  89. 5
    5
      src/com/dmdirc/addons/ui_swing/dialogs/prefs/IconLoader.java
  90. 3
    3
      src/com/dmdirc/addons/ui_swing/dialogs/prefs/PreferencesListCellRenderer.java
  91. 5
    5
      src/com/dmdirc/addons/ui_swing/dialogs/prefs/PrefsCategoryLoader.java
  92. 6
    6
      src/com/dmdirc/addons/ui_swing/dialogs/prefs/SwingPreferencesDialog.java
  93. 5
    5
      src/com/dmdirc/addons/ui_swing/dialogs/prefs/UpdateConfigPanel.java
  94. 3
    3
      src/com/dmdirc/addons/ui_swing/dialogs/updater/SwingUpdaterDialog.java
  95. 9
    8
      src/com/dmdirc/addons/ui_swing/framemanager/buttonbar/ButtonBar.java
  96. 8
    8
      src/com/dmdirc/addons/ui_swing/framemanager/ctrltab/CtrlTabWindowManager.java
  97. 3
    3
      src/com/dmdirc/addons/ui_swing/framemanager/tree/NodeLabel.java
  98. 13
    13
      src/com/dmdirc/addons/ui_swing/framemanager/tree/TreeFrameManager.java
  99. 7
    6
      src/com/dmdirc/addons/ui_swing/framemanager/windowmenu/WindowMenuFrameManager.java
  100. 0
    0
      src/com/dmdirc/addons/ui_swing/injection/DialogModule.java

+ 1
- 0
ivy.xml Ver arquivo

@@ -17,6 +17,7 @@
17 17
         <dependency org="com.squareup.dagger" name="dagger-compiler" rev="1.2.1" conf="build->default" />
18 18
         <dependency org="com.google.code.findbugs" name="jsr305" rev="2.+" conf="main->default" />
19 19
         <dependency org="org.slf4j" name="slf4j-api" rev="1.+" conf="main->default" />
20
+        <dependency org="net.engio" name="mbassador" rev="1.1.10" conf="main->default" />
20 21
 
21 22
         <!-- Main - ui_swing -->
22 23
         <dependency org="com.miglayout" name="miglayout-swing" rev="4.+" conf="main->default" />

+ 8
- 8
src/com/dmdirc/addons/contactlist/ContactListListener.java Ver arquivo

@@ -31,13 +31,13 @@ import com.dmdirc.interfaces.FrameCloseListener;
31 31
 import com.dmdirc.interfaces.NicklistListener;
32 32
 import com.dmdirc.parser.interfaces.ChannelClientInfo;
33 33
 
34
-import com.google.common.eventbus.EventBus;
35
-import com.google.common.eventbus.Subscribe;
36
-
37 34
 import java.util.Collection;
38 35
 
39 36
 import javax.inject.Inject;
40 37
 
38
+import net.engio.mbassy.bus.MBassador;
39
+import net.engio.mbassy.listener.Handler;
40
+
41 41
 /**
42 42
  * Listens for contact list related events.
43 43
  */
@@ -46,7 +46,7 @@ public class ContactListListener implements NicklistListener, FrameCloseListener
46 46
     /** The channel this listener is for. */
47 47
     private final Channel channel;
48 48
     /** Event bus to register listeners with. */
49
-    private final EventBus eventBus;
49
+    private final MBassador eventBus;
50 50
 
51 51
     /**
52 52
      * Creates a new ContactListListener for the specified channel.
@@ -65,7 +65,7 @@ public class ContactListListener implements NicklistListener, FrameCloseListener
65 65
     public void addListeners() {
66 66
         channel.addNicklistListener(this);
67 67
         channel.addCloseListener(this);
68
-        eventBus.register(this);
68
+        eventBus.subscribe(this);
69 69
     }
70 70
 
71 71
     /**
@@ -74,7 +74,7 @@ public class ContactListListener implements NicklistListener, FrameCloseListener
74 74
     public void removeListeners() {
75 75
         channel.removeNicklistListener(this);
76 76
         channel.removeCloseListener(this);
77
-        eventBus.unregister(this);
77
+        eventBus.unsubscribe(this);
78 78
     }
79 79
 
80 80
     @Override
@@ -102,12 +102,12 @@ public class ContactListListener implements NicklistListener, FrameCloseListener
102 102
         // Do nothing
103 103
     }
104 104
 
105
-    @Subscribe
105
+    @Handler
106 106
     public void handleUserAway(final ChannelUserAwayEvent event) {
107 107
         clientAdded(event.getUser());
108 108
     }
109 109
 
110
-    @Subscribe
110
+    @Handler
111 111
     public void handleUserBack(final ChannelUserBackEvent event) {
112 112
         clientAdded(event.getUser());
113 113
     }

+ 3
- 3
src/com/dmdirc/addons/dcc/ChatContainer.java Ver arquivo

@@ -37,7 +37,7 @@ import com.dmdirc.ui.core.components.WindowComponent;
37 37
 import com.dmdirc.ui.input.TabCompleterFactory;
38 38
 import com.dmdirc.util.URLBuilder;
39 39
 
40
-import com.google.common.eventbus.EventBus;
40
+import net.engio.mbassy.bus.MBassador;
41 41
 
42 42
 import java.util.Arrays;
43 43
 
@@ -55,7 +55,7 @@ public class ChatContainer extends DCCFrameContainer implements DCCChatHandler {
55 55
     /** Other Nickname. */
56 56
     private final String otherNickname;
57 57
     /** Event bus to post events on. */
58
-    private final EventBus eventBus;
58
+    private final MBassador eventBus;
59 59
 
60 60
     /**
61 61
      * Creates a new instance of DCCChatWindow with a given DCCChat object.
@@ -83,7 +83,7 @@ public class ChatContainer extends DCCFrameContainer implements DCCChatHandler {
83 83
             final TabCompleterFactory tabCompleterFactory,
84 84
             final MessageSinkManager messageSinkManager,
85 85
             final URLBuilder urlBuilder,
86
-            final EventBus eventBus) {
86
+            final MBassador eventBus) {
87 87
         super(parent, title, "dcc-chat-inactive", configManager,
88 88
                 new DCCCommandParser(configManager, commandController, eventBus),
89 89
                 messageSinkManager,

+ 6
- 6
src/com/dmdirc/addons/dcc/DCCCommand.java Ver arquivo

@@ -49,8 +49,6 @@ import com.dmdirc.ui.input.TabCompleterFactory;
49 49
 import com.dmdirc.ui.input.TabCompletionType;
50 50
 import com.dmdirc.util.URLBuilder;
51 51
 
52
-import com.google.common.eventbus.EventBus;
53
-
54 52
 import java.awt.Window;
55 53
 import java.io.File;
56 54
 import java.util.concurrent.Callable;
@@ -59,6 +57,8 @@ import javax.inject.Inject;
59 57
 import javax.swing.JFileChooser;
60 58
 import javax.swing.JOptionPane;
61 59
 
60
+import net.engio.mbassy.bus.MBassador;
61
+
62 62
 /**
63 63
  * This command allows starting dcc chats/file transfers.
64 64
  */
@@ -81,7 +81,7 @@ public class DCCCommand extends Command implements IntelligentCommand {
81 81
     /** The URL builder to use when finding icons. */
82 82
     private final URLBuilder urlBuilder;
83 83
     /** The bus to dispatch events on. */
84
-    private final EventBus eventBus;
84
+    private final MBassador eventBus;
85 85
 
86 86
     /**
87 87
      * Creates a new instance of DCCCommand.
@@ -104,7 +104,7 @@ public class DCCCommand extends Command implements IntelligentCommand {
104 104
             final WindowManager windowManager,
105 105
             final TabCompleterFactory tabCompleterFactory,
106 106
             final URLBuilder urlBuilder,
107
-            final EventBus eventBus) {
107
+            final MBassador eventBus) {
108 108
         super(controller);
109 109
         this.mainWindow = mainWindow;
110 110
         myPlugin = plugin;
@@ -190,7 +190,7 @@ public class DCCCommand extends Command implements IntelligentCommand {
190 190
             windowManager.addWindow(myPlugin.getContainer(), window);
191 191
             parser.sendCTCP(target, "DCC", "CHAT chat " + DCC.ipToLong(
192 192
                     myPlugin.getListenIP(parser)) + " " + chat.getPort());
193
-            eventBus.post(new DccChatRequestSentEvent(connection, target));
193
+            eventBus.publish(new DccChatRequestSentEvent(connection, target));
194 194
             sendLine(origin, isSilent, "DCCChatStarting", target, chat.getHost(), chat.getPort());
195 195
             window.addLine("DCCChatStarting", target, chat.getHost(), chat.getPort());
196 196
         } else {
@@ -246,7 +246,7 @@ public class DCCCommand extends Command implements IntelligentCommand {
246 246
                         myPlugin.getDomain(), "send.forceturbo"));
247 247
                 send.setType(DCCTransfer.TransferType.SEND);
248 248
 
249
-                eventBus.post(new DccSendRequestEvent(connection, target, selectedFile.
249
+                eventBus.publish(new DccSendRequestEvent(connection, target, selectedFile.
250 250
                         getAbsolutePath()));
251 251
 
252 252
                 sendLine(origin, isSilent, FORMAT_OUTPUT,

+ 2
- 2
src/com/dmdirc/addons/dcc/DCCCommandParser.java Ver arquivo

@@ -27,7 +27,7 @@ import com.dmdirc.commandparser.parsers.GlobalCommandParser;
27 27
 import com.dmdirc.interfaces.CommandController;
28 28
 import com.dmdirc.interfaces.config.AggregateConfigProvider;
29 29
 
30
-import com.google.common.eventbus.EventBus;
30
+import net.engio.mbassy.bus.MBassador;
31 31
 
32 32
 /**
33 33
  * DCC CommandParser.
@@ -47,7 +47,7 @@ public class DCCCommandParser extends GlobalCommandParser {
47 47
     public DCCCommandParser(
48 48
             final AggregateConfigProvider configManager,
49 49
             final CommandController commandController,
50
-            final EventBus eventBus) {
50
+            final MBassador eventBus) {
51 51
         super(configManager, commandController, eventBus);
52 52
     }
53 53
 

+ 2
- 2
src/com/dmdirc/addons/dcc/DCCFrameContainer.java Ver arquivo

@@ -30,7 +30,7 @@ import com.dmdirc.messages.MessageSinkManager;
30 30
 import com.dmdirc.ui.input.TabCompleterFactory;
31 31
 import com.dmdirc.util.URLBuilder;
32 32
 
33
-import com.google.common.eventbus.EventBus;
33
+import net.engio.mbassy.bus.MBassador;
34 34
 
35 35
 import java.util.Collection;
36 36
 
@@ -67,7 +67,7 @@ public abstract class DCCFrameContainer extends FrameContainer {
67 67
             final MessageSinkManager messageSinkManager,
68 68
             final TabCompleterFactory tabCompleterFactory,
69 69
             final URLBuilder urlBuilder,
70
-            final EventBus eventBus,
70
+            final MBassador eventBus,
71 71
             final Collection<String> components) {
72 72
         super(parent, icon, title, title, configManager, urlBuilder, parser,
73 73
                 tabCompleterFactory.getTabCompleter(configManager),

+ 12
- 12
src/com/dmdirc/addons/dcc/DCCManager.java Ver arquivo

@@ -53,9 +53,6 @@ import com.dmdirc.ui.WindowManager;
53 53
 import com.dmdirc.ui.input.TabCompleterFactory;
54 54
 import com.dmdirc.util.URLBuilder;
55 55
 
56
-import com.google.common.eventbus.EventBus;
57
-import com.google.common.eventbus.Subscribe;
58
-
59 56
 import java.awt.Window;
60 57
 import java.io.File;
61 58
 import java.io.IOException;
@@ -70,6 +67,9 @@ import javax.inject.Singleton;
70 67
 import javax.swing.JFileChooser;
71 68
 import javax.swing.JOptionPane;
72 69
 
70
+import net.engio.mbassy.bus.MBassador;
71
+import net.engio.mbassy.listener.Handler;
72
+
73 73
 /**
74 74
  * This plugin adds DCC to DMDirc.
75 75
  */
@@ -95,7 +95,7 @@ public class DCCManager {
95 95
     /** The URL builder to use when finding icons. */
96 96
     private final URLBuilder urlBuilder;
97 97
     /** The bus to dispatch events on. */
98
-    private final EventBus eventBus;
98
+    private final MBassador eventBus;
99 99
 
100 100
     /**
101 101
      * Creates a new instance of this plugin.
@@ -128,7 +128,7 @@ public class DCCManager {
128 128
             final SwingWindowFactory windowFactory,
129 129
             final ComponentFrameFactory componentFrameFactory,
130 130
             final URLBuilder urlBuilder,
131
-            final EventBus eventBus,
131
+            final MBassador eventBus,
132 132
             final GlobalCommandParser commandParser,
133 133
             @Directory(DirectoryType.BASE) final String baseDirectory) {
134 134
         this.mainWindow = mainWindow;
@@ -355,7 +355,7 @@ public class DCCManager {
355 355
         }
356 356
     }
357 357
 
358
-    @Subscribe
358
+    @Handler
359 359
     public void handleServerCtctpEvent(final ServerCtcpEvent event) {
360 360
         final boolean autoAccept = config.getOptionBool(getDomain(), "receive.autoaccept");
361 361
         final String[] ctcpData = event.getContent().split(" ");
@@ -399,7 +399,7 @@ public class DCCManager {
399 399
         if (dontAsk) {
400 400
             handleDCCChat(connection.getParser(), nickname, ctcpData);
401 401
         } else {
402
-            eventBus.post(new DccChatRequestEvent(connection, nickname));
402
+            eventBus.publish(new DccChatRequestEvent(connection, nickname));
403 403
             new ChatRequestDialog(mainWindow, this, connection, nickname, ctcpData).display();
404 404
         }
405 405
     }
@@ -510,7 +510,7 @@ public class DCCManager {
510 510
         if (DCCTransfer.findByToken(token) == null && !dontAsk) {
511 511
             if (token.isEmpty() || port.equals("0")) {
512 512
                 // Make sure this is not a reverse DCC Send that we no longer care about.
513
-                eventBus.post(new DccSendRequestEvent(connection, nickname, filename));
513
+                eventBus.publish(new DccSendRequestEvent(connection, nickname, filename));
514 514
                 new SendRequestDialog(mainWindow, this, token, ipLong, portInt, filename, size,
515 515
                         nickname, connection).display();
516 516
             }
@@ -661,7 +661,7 @@ public class DCCManager {
661 661
                 "receive.savelocation"));
662 662
         if (dir.exists()) {
663 663
             if (!dir.isDirectory()) {
664
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, null,
664
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, null,
665 665
                         "Unable to create download dir (file exists instead)", ""));
666 666
             }
667 667
         } else {
@@ -669,19 +669,19 @@ public class DCCManager {
669 669
                 dir.mkdirs();
670 670
                 dir.createNewFile();
671 671
             } catch (IOException ex) {
672
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, null,
672
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, null,
673 673
                         "Unable to create download dir", ""));
674 674
             }
675 675
         }
676 676
 
677
-        eventBus.register(this);
677
+        eventBus.subscribe(this);
678 678
     }
679 679
 
680 680
     /**
681 681
      * Called when this plugin is Unloaded.
682 682
      */
683 683
     public synchronized void onUnload() {
684
-        eventBus.unregister(this);
684
+        eventBus.unsubscribe(this);
685 685
         if (container != null) {
686 686
             container.close();
687 687
         }

+ 2
- 2
src/com/dmdirc/addons/dcc/PlaceholderContainer.java Ver arquivo

@@ -28,7 +28,7 @@ import com.dmdirc.interfaces.Connection;
28 28
 import com.dmdirc.interfaces.config.AggregateConfigProvider;
29 29
 import com.dmdirc.util.URLBuilder;
30 30
 
31
-import com.google.common.eventbus.EventBus;
31
+import net.engio.mbassy.bus.MBassador;
32 32
 
33 33
 import java.awt.Dialog.ModalityType;
34 34
 import java.awt.Window;
@@ -58,7 +58,7 @@ public class PlaceholderContainer extends FrameContainer {
58 58
             final AggregateConfigProvider config,
59 59
             final Window parentWindow,
60 60
             final URLBuilder urlBuilder,
61
-            final EventBus eventBus) {
61
+            final MBassador eventBus) {
62 62
         super(null, "dcc", "DCCs", "DCCs", config, urlBuilder, eventBus,
63 63
                 Arrays.asList("com.dmdirc.addons.dcc.ui.PlaceholderPanel"));
64 64
         this.plugin = plugin;

+ 7
- 7
src/com/dmdirc/addons/dcc/TransferContainer.java Ver arquivo

@@ -35,8 +35,6 @@ import com.dmdirc.parser.interfaces.Parser;
35 35
 import com.dmdirc.parser.interfaces.callbacks.SocketCloseListener;
36 36
 import com.dmdirc.util.URLBuilder;
37 37
 
38
-import com.google.common.eventbus.EventBus;
39
-
40 38
 import java.awt.Desktop;
41 39
 import java.io.File;
42 40
 import java.util.Arrays;
@@ -44,6 +42,8 @@ import java.util.Date;
44 42
 
45 43
 import javax.swing.JOptionPane;
46 44
 
45
+import net.engio.mbassy.bus.MBassador;
46
+
47 47
 /**
48 48
  * This class links DCC Send objects to a window.
49 49
  */
@@ -74,7 +74,7 @@ public class TransferContainer extends FrameContainer implements
74 74
     private final boolean showOpen = Desktop.isDesktopSupported()
75 75
             && Desktop.getDesktop().isSupported(Desktop.Action.OPEN);
76 76
     /** Event bus to post events on. */
77
-    private final EventBus eventBus;
77
+    private final MBassador eventBus;
78 78
 
79 79
     /**
80 80
      * Creates a new instance of DCCTransferWindow with a given DCCTransfer object.
@@ -91,7 +91,7 @@ public class TransferContainer extends FrameContainer implements
91 91
     public TransferContainer(final DCCManager plugin, final DCCTransfer dcc,
92 92
             final AggregateConfigProvider config, final String title,
93 93
             final String targetNick, final Connection connection,
94
-            final URLBuilder urlBuilder, final EventBus eventBus) {
94
+            final URLBuilder urlBuilder, final MBassador eventBus) {
95 95
         super(plugin.getContainer(), dcc.getType() == DCCTransfer.TransferType.SEND
96 96
                 ? "dcc-send-inactive" : "dcc-receive-inactive",
97 97
                 title, title, config, urlBuilder, eventBus,
@@ -172,7 +172,7 @@ public class TransferContainer extends FrameContainer implements
172 172
             setTitle(title.toString());
173 173
         }
174 174
 
175
-        eventBus.post(new DccSendDatatransferedEvent(this, bytes));
175
+        eventBus.publish(new DccSendDatatransferedEvent(this, bytes));
176 176
     }
177 177
 
178 178
     /**
@@ -265,7 +265,7 @@ public class TransferContainer extends FrameContainer implements
265 265
      */
266 266
     @Override
267 267
     public void socketClosed(final DCCTransfer dcc) {
268
-        eventBus.post(new DccSendSocketclosedEvent(this));
268
+        eventBus.publish(new DccSendSocketclosedEvent(this));
269 269
         if (!windowClosing) {
270 270
             synchronized (this) {
271 271
                 if (transferCount == dcc.getFileSize() - dcc.getFileStart()) {
@@ -286,7 +286,7 @@ public class TransferContainer extends FrameContainer implements
286 286
      */
287 287
     @Override
288 288
     public void socketOpened(final DCCTransfer dcc) {
289
-        eventBus.post(new DccSendSocketopenedEvent(this));
289
+        eventBus.publish(new DccSendSocketopenedEvent(this));
290 290
         timeStarted = System.currentTimeMillis();
291 291
         setIcon(dcc.getType() == DCCTransfer.TransferType.SEND
292 292
                 ? "dcc-send-active" : "dcc-receive-active");

+ 7
- 7
src/com/dmdirc/addons/dcc/ui/TransferPanel.java Ver arquivo

@@ -33,8 +33,6 @@ import com.dmdirc.logger.ErrorLevel;
33 33
 import com.dmdirc.parser.interfaces.Parser;
34 34
 import com.dmdirc.parser.interfaces.callbacks.SocketCloseListener;
35 35
 
36
-import com.google.common.eventbus.EventBus;
37
-
38 36
 import java.awt.Desktop;
39 37
 import java.awt.event.ActionEvent;
40 38
 import java.awt.event.ActionListener;
@@ -49,6 +47,8 @@ import javax.swing.JProgressBar;
49 47
 
50 48
 import net.miginfocom.swing.MigLayout;
51 49
 
50
+import net.engio.mbassy.bus.MBassador;
51
+
52 52
 /**
53 53
  * A panel for displaying the progress of DCC transfers.
54 54
  *
@@ -78,7 +78,7 @@ public class TransferPanel extends JPanel implements ActionListener,
78 78
     /** The transfer that this window is showing. */
79 79
     private final DCCTransfer dcc;
80 80
     /** The event bus to post errors. */
81
-    private final EventBus errorBus;
81
+    private final MBassador errorBus;
82 82
 
83 83
     /**
84 84
      * Creates a new transfer window for the specified UI controller and owner.
@@ -86,7 +86,7 @@ public class TransferPanel extends JPanel implements ActionListener,
86 86
      * @param owner    The frame container that owns this frame
87 87
      * @param errorBus The event bus to post errors to
88 88
      */
89
-    public TransferPanel(final FrameContainer owner, final EventBus errorBus) {
89
+    public TransferPanel(final FrameContainer owner, final MBassador errorBus) {
90 90
         this.transferContainer = (TransferContainer) owner;
91 91
         this.errorBus = errorBus;
92 92
         dcc = transferContainer.getDCC();
@@ -150,18 +150,18 @@ public class TransferPanel extends JPanel implements ActionListener,
150 150
             try {
151 151
                 Desktop.getDesktop().open(file);
152 152
             } catch (IllegalArgumentException ex) {
153
-                errorBus.post(new UserErrorEvent(ErrorLevel.LOW, ex,
153
+                errorBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex,
154 154
                         "Unable to open file: " + file, ""));
155 155
                 openButton.setEnabled(false);
156 156
             } catch (IOException ex) {
157 157
                 try {
158 158
                     Desktop.getDesktop().open(file.getParentFile());
159 159
                 } catch (IllegalArgumentException ex1) {
160
-                    errorBus.post(new UserErrorEvent(ErrorLevel.LOW, ex1, "Unable to open folder: "
160
+                    errorBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex1, "Unable to open folder: "
161 161
                             + file.getParentFile(), ""));
162 162
                     openButton.setEnabled(false);
163 163
                 } catch (IOException ex1) {
164
-                    errorBus.post(new UserErrorEvent(ErrorLevel.LOW, ex1,
164
+                    errorBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex1,
165 165
                             "No associated handler to open file or directory.", ""));
166 166
                     openButton.setEnabled(false);
167 167
                 }

+ 11
- 11
src/com/dmdirc/addons/debug/commands/EventBusViewer.java Ver arquivo

@@ -37,14 +37,14 @@ import com.dmdirc.ui.WindowManager;
37 37
 import com.dmdirc.ui.messages.Styliser;
38 38
 import com.dmdirc.util.URLBuilder;
39 39
 
40
-import com.google.common.eventbus.EventBus;
41
-import com.google.common.eventbus.Subscribe;
42
-
43 40
 import java.lang.reflect.Method;
44 41
 
45 42
 import javax.inject.Inject;
46 43
 import javax.inject.Provider;
47 44
 
45
+import net.engio.mbassy.bus.MBassador;
46
+import net.engio.mbassy.listener.Handler;
47
+
48 48
 /**
49 49
  * Displays events passed on an event bus.
50 50
  */
@@ -53,7 +53,7 @@ public class EventBusViewer extends DebugCommand {
53 53
     private final URLBuilder urlBuilder;
54 54
     private final AggregateConfigProvider globalConfig;
55 55
     private final WindowManager windowManager;
56
-    private final EventBus globalEventBus;
56
+    private final MBassador globalEventBus;
57 57
 
58 58
     /**
59 59
      * Creates a new instance of the command.
@@ -70,7 +70,7 @@ public class EventBusViewer extends DebugCommand {
70 70
             @GlobalConfig final AggregateConfigProvider globalConfig,
71 71
             final URLBuilder urlBuilder,
72 72
             final WindowManager windowManager,
73
-            final EventBus globalEventBus) {
73
+            final MBassador globalEventBus) {
74 74
         super(commandProvider);
75 75
         this.globalConfig = globalConfig;
76 76
         this.urlBuilder = urlBuilder;
@@ -105,9 +105,9 @@ public class EventBusViewer extends DebugCommand {
105 105
             windowManager.addWindow(origin, window);
106 106
         }
107 107
 
108
-        final EventBus eventBus = isGlobal ? globalEventBus : origin.getEventBus();
108
+        final MBassador eventBus = isGlobal ? globalEventBus : origin.getEventBus();
109 109
         final WindowUpdater updater = new WindowUpdater(eventBus, window);
110
-        eventBus.register(updater);
110
+        eventBus.subscribe(updater);
111 111
         window.addCloseListener(updater);
112 112
     }
113 113
 
@@ -116,15 +116,15 @@ public class EventBusViewer extends DebugCommand {
116 116
      */
117 117
     private static class WindowUpdater implements FrameCloseListener {
118 118
 
119
-        private final EventBus eventBus;
119
+        private final MBassador eventBus;
120 120
         private final FrameContainer target;
121 121
 
122
-        WindowUpdater(final EventBus eventBus, final FrameContainer target) {
122
+        WindowUpdater(final MBassador eventBus, final FrameContainer target) {
123 123
             this.eventBus = eventBus;
124 124
             this.target = target;
125 125
         }
126 126
 
127
-        @Subscribe
127
+        @Handler
128 128
         public void handleEvent(final DMDircEvent event) {
129 129
             if (event instanceof ClientLineAddedEvent
130 130
                     && ((ClientLineAddedEvent) event).getFrameContainer() == target) {
@@ -158,7 +158,7 @@ public class EventBusViewer extends DebugCommand {
158 158
 
159 159
         @Override
160 160
         public void windowClosing(final FrameContainer window) {
161
-            eventBus.unregister(this);
161
+            eventBus.unsubscribe(this);
162 162
         }
163 163
 
164 164
     }

+ 6
- 6
src/com/dmdirc/addons/debug/commands/FakeError.java Ver arquivo

@@ -33,18 +33,18 @@ import com.dmdirc.events.UserErrorEvent;
33 33
 import com.dmdirc.logger.ErrorLevel;
34 34
 import com.dmdirc.ui.input.AdditionalTabTargets;
35 35
 
36
-import com.google.common.eventbus.EventBus;
37
-
38 36
 import javax.inject.Inject;
39 37
 import javax.inject.Provider;
40 38
 
39
+import net.engio.mbassy.bus.MBassador;
40
+
41 41
 /**
42 42
  * Creates DMDirc errors with the specified parameters.
43 43
  */
44 44
 public class FakeError extends DebugCommand implements IntelligentCommand {
45 45
 
46 46
     /** The event bus to post errors on . */
47
-    private final EventBus eventBus;
47
+    private final MBassador eventBus;
48 48
 
49 49
     /**
50 50
      * Creates a new instance of the command.
@@ -53,7 +53,7 @@ public class FakeError extends DebugCommand implements IntelligentCommand {
53 53
      * @param eventBus        The event bus to post errors on
54 54
      */
55 55
     @Inject
56
-    public FakeError(final Provider<Debug> commandProvider, final EventBus eventBus) {
56
+    public FakeError(final Provider<Debug> commandProvider, final MBassador eventBus) {
57 57
         super(commandProvider);
58 58
         this.eventBus = eventBus;
59 59
     }
@@ -75,12 +75,12 @@ public class FakeError extends DebugCommand implements IntelligentCommand {
75 75
         if ((args.getArguments().length == 1
76 76
                 || args.getArguments().length == 2)
77 77
                 && args.getArguments()[0].equals("user")) {
78
-            eventBus.post(new UserErrorEvent(getLevel(args.getArguments()),
78
+            eventBus.publishAsync(new UserErrorEvent(getLevel(args.getArguments()),
79 79
                     null, "Debug error message", ""));
80 80
         } else if ((args.getArguments().length == 1
81 81
                 || args.getArguments().length == 2)
82 82
                 && args.getArguments()[0].equals("app")) {
83
-            eventBus.post(new AppErrorEvent(getLevel(args.getArguments()),
83
+            eventBus.publishAsync(new AppErrorEvent(getLevel(args.getArguments()),
84 84
                     new IllegalArgumentException(), "Debug error message", ""));
85 85
         } else {
86 86
             showUsage(origin, args.isSilent(), getName(), getUsage());

+ 5
- 5
src/com/dmdirc/addons/debug/commands/FirstRun.java Ver arquivo

@@ -29,18 +29,18 @@ import com.dmdirc.commandparser.CommandArguments;
29 29
 import com.dmdirc.commandparser.commands.context.CommandContext;
30 30
 import com.dmdirc.events.FirstRunEvent;
31 31
 
32
-import com.google.common.eventbus.EventBus;
33
-
34 32
 import javax.inject.Inject;
35 33
 import javax.inject.Provider;
36 34
 
35
+import net.engio.mbassy.bus.MBassador;
36
+
37 37
 /**
38 38
  * Opens the DMDirc first run wizard.
39 39
  */
40 40
 public class FirstRun extends DebugCommand {
41 41
 
42 42
     /** Event bus to trigger first run event on. */
43
-    private final EventBus eventBus;
43
+    private final MBassador eventBus;
44 44
 
45 45
     /**
46 46
      * Creates a new instance of the command.
@@ -49,7 +49,7 @@ public class FirstRun extends DebugCommand {
49 49
      * @param eventBus        Event bus to trigger first run event on.
50 50
      */
51 51
     @Inject
52
-    public FirstRun(final Provider<Debug> commandProvider, final EventBus eventBus) {
52
+    public FirstRun(final Provider<Debug> commandProvider, final MBassador eventBus) {
53 53
         super(commandProvider);
54 54
 
55 55
         this.eventBus = eventBus;
@@ -68,7 +68,7 @@ public class FirstRun extends DebugCommand {
68 68
     @Override
69 69
     public void execute(final FrameContainer origin,
70 70
             final CommandArguments args, final CommandContext context) {
71
-        eventBus.post(new FirstRunEvent());
71
+        eventBus.publish(new FirstRunEvent());
72 72
     }
73 73
 
74 74
 }

+ 3
- 3
src/com/dmdirc/addons/debug/commands/ForceUpdate.java Ver arquivo

@@ -34,7 +34,7 @@ import com.dmdirc.ui.messages.Styliser;
34 34
 import com.dmdirc.updater.UpdateChecker;
35 35
 import com.dmdirc.updater.manager.CachingUpdateManager;
36 36
 
37
-import com.google.common.eventbus.EventBus;
37
+import net.engio.mbassy.bus.MBassador;
38 38
 
39 39
 import javax.inject.Inject;
40 40
 import javax.inject.Provider;
@@ -51,7 +51,7 @@ public class ForceUpdate extends DebugCommand {
51 51
     /** The update manager to use when forcing an update. */
52 52
     private final CachingUpdateManager updateManager;
53 53
     /** The event bus to post errors to. */
54
-    private final EventBus eventBus;
54
+    private final MBassador eventBus;
55 55
 
56 56
     /**
57 57
      * Creates a new instance of the command.
@@ -68,7 +68,7 @@ public class ForceUpdate extends DebugCommand {
68 68
             @GlobalConfig final AggregateConfigProvider globalConfig,
69 69
             final IdentityController identityController,
70 70
             final CachingUpdateManager updateManager,
71
-            final EventBus eventBus) {
71
+            final MBassador eventBus) {
72 72
         super(commandProvider);
73 73
 
74 74
         this.globalConfig = globalConfig;

+ 5
- 5
src/com/dmdirc/addons/exec/ExecCommand.java Ver arquivo

@@ -34,8 +34,6 @@ import com.dmdirc.logger.ErrorLevel;
34 34
 import com.dmdirc.util.CommandUtils;
35 35
 import com.dmdirc.util.io.StreamReader;
36 36
 
37
-import com.google.common.eventbus.EventBus;
38
-
39 37
 import java.io.File;
40 38
 import java.io.IOException;
41 39
 import java.util.LinkedList;
@@ -43,6 +41,8 @@ import java.util.List;
43 41
 
44 42
 import javax.inject.Inject;
45 43
 
44
+import net.engio.mbassy.bus.MBassador;
45
+
46 46
 /**
47 47
  * A command which allows users execute scripts.
48 48
  */
@@ -53,7 +53,7 @@ public class ExecCommand extends Command {
53 53
             "exec <command> [<parameters>] - executes an external program "
54 54
             + "and displays the output", CommandType.TYPE_GLOBAL);
55 55
     /** Event bus to post errors to. */
56
-    private final EventBus eventBus;
56
+    private final MBassador eventBus;
57 57
 
58 58
     /**
59 59
      * Creates a new instance of this command.
@@ -62,7 +62,7 @@ public class ExecCommand extends Command {
62 62
      * @param eventBus   The event bus to post errors to
63 63
      */
64 64
     @Inject
65
-    public ExecCommand(final CommandController controller, final EventBus eventBus) {
65
+    public ExecCommand(final CommandController controller, final MBassador eventBus) {
66 66
         super(controller);
67 67
         this.eventBus = eventBus;
68 68
     }
@@ -105,7 +105,7 @@ public class ExecCommand extends Command {
105 105
                 }
106 106
             }
107 107
         } catch (IOException ex) {
108
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex, "Unable to run application: "
108
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex, "Unable to run application: "
109 109
                     + ex.getMessage(), ""));
110 110
         }
111 111
     }

+ 5
- 4
src/com/dmdirc/addons/freedesktop_notifications/FDManager.java Ver arquivo

@@ -35,7 +35,6 @@ import com.dmdirc.ui.messages.Styliser;
35 35
 import com.dmdirc.util.io.StreamReader;
36 36
 
37 37
 import com.google.common.base.Strings;
38
-import com.google.common.eventbus.EventBus;
39 38
 import com.google.common.html.HtmlEscapers;
40 39
 
41 40
 import java.io.IOException;
@@ -43,6 +42,8 @@ import java.io.IOException;
43 42
 import javax.inject.Inject;
44 43
 import javax.inject.Singleton;
45 44
 
45
+import net.engio.mbassy.bus.MBassador;
46
+
46 47
 @Singleton
47 48
 public class FDManager implements ConfigChangeListener {
48 49
 
@@ -55,7 +56,7 @@ public class FDManager implements ConfigChangeListener {
55 56
     /** Plugin files helper. */
56 57
     private final PluginFilesHelper filesHelper;
57 58
     /** The event bus to post errors to. */
58
-    private final EventBus eventBus;
59
+    private final MBassador eventBus;
59 60
     /** notification timeout. */
60 61
     private int timeout;
61 62
     /** notification icon. */
@@ -71,7 +72,7 @@ public class FDManager implements ConfigChangeListener {
71 72
             @UserConfig final ConfigProvider userConfig,
72 73
             @PluginDomain(FreeDesktopNotificationsPlugin.class) final String domain,
73 74
             final PluginFilesHelper filesHelper,
74
-            final EventBus eventBus) {
75
+            final MBassador eventBus) {
75 76
         this.domain = domain;
76 77
         this.config = config;
77 78
         this.userConfig = userConfig;
@@ -162,7 +163,7 @@ public class FDManager implements ConfigChangeListener {
162 163
             filesHelper.extractResourcesEndingWith(".py");
163 164
             filesHelper.extractResourcesEndingWith(".png");
164 165
         } catch (IOException ex) {
165
-            eventBus.post(new UserErrorEvent(ErrorLevel.MEDIUM, ex,
166
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.MEDIUM, ex,
166 167
                     "Unable to extract files for Free desktop notifications: " + ex.getMessage(),
167 168
                     ""));
168 169
         }

+ 5
- 5
src/com/dmdirc/addons/identd/IdentClient.java Ver arquivo

@@ -29,21 +29,21 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
29 29
 import com.dmdirc.logger.ErrorLevel;
30 30
 import com.dmdirc.util.io.StreamUtils;
31 31
 
32
-import com.google.common.eventbus.EventBus;
33
-
34 32
 import java.io.BufferedReader;
35 33
 import java.io.IOException;
36 34
 import java.io.InputStreamReader;
37 35
 import java.io.PrintWriter;
38 36
 import java.net.Socket;
39 37
 
38
+import net.engio.mbassy.bus.MBassador;
39
+
40 40
 /**
41 41
  * The IdentClient responds to an ident request.
42 42
  */
43 43
 public class IdentClient implements Runnable {
44 44
 
45 45
     /** The event bus to post errors on. */
46
-    private final EventBus eventBus;
46
+    private final MBassador eventBus;
47 47
     /** The IdentdServer that owns this Client. */
48 48
     private final IdentdServer server;
49 49
     /** The Socket that we are in charge of. */
@@ -67,7 +67,7 @@ public class IdentClient implements Runnable {
67 67
      * @param config        Global config to read settings from
68 68
      * @param domain        This plugin's settings domain
69 69
      */
70
-    public IdentClient(final EventBus eventBus, final IdentdServer server, final Socket socket,
70
+    public IdentClient(final MBassador eventBus, final IdentdServer server, final Socket socket,
71 71
             final ServerManager serverManager, final AggregateConfigProvider config,
72 72
             final String domain) {
73 73
         this.eventBus = eventBus;
@@ -103,7 +103,7 @@ public class IdentClient implements Runnable {
103 103
             }
104 104
         } catch (IOException e) {
105 105
             if (thisThread == thread) {
106
-                eventBus.post(new UserErrorEvent(ErrorLevel.HIGH, e,
106
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.HIGH, e,
107 107
                         "ClientSocket Error: " + e.getMessage(), ""));
108 108
             }
109 109
         } finally {

+ 10
- 10
src/com/dmdirc/addons/identd/IdentdManager.java Ver arquivo

@@ -30,14 +30,14 @@ import com.dmdirc.interfaces.Connection;
30 30
 import com.dmdirc.interfaces.config.AggregateConfigProvider;
31 31
 import com.dmdirc.plugins.PluginDomain;
32 32
 
33
-import com.google.common.eventbus.EventBus;
34
-import com.google.common.eventbus.Subscribe;
35
-
36 33
 import java.util.ArrayList;
37 34
 import java.util.List;
38 35
 
39 36
 import javax.inject.Inject;
40 37
 
38
+import net.engio.mbassy.bus.MBassador;
39
+import net.engio.mbassy.listener.Handler;
40
+
41 41
 public class IdentdManager {
42 42
 
43 43
     /** List of all the connections that need ident replies. */
@@ -49,12 +49,12 @@ public class IdentdManager {
49 49
     /** Ident server. */
50 50
     private final IdentdServer server;
51 51
     /** Event bus to subscribe to events on. */
52
-    private final EventBus eventBus;
52
+    private final MBassador eventBus;
53 53
 
54 54
     @Inject
55 55
     public IdentdManager(@GlobalConfig final AggregateConfigProvider config,
56 56
             @PluginDomain(IdentdPlugin.class) final String domain,
57
-            final IdentdServer server, final EventBus eventBus) {
57
+            final IdentdServer server, final MBassador eventBus) {
58 58
         connections = new ArrayList<>();
59 59
         this.config = config;
60 60
         this.domain = domain;
@@ -67,7 +67,7 @@ public class IdentdManager {
67 67
      */
68 68
     public void onLoad() {
69 69
         // Add action hooks
70
-        eventBus.register(this);
70
+        eventBus.subscribe(this);
71 71
 
72 72
         if (config.getOptionBool(domain, "advanced.alwaysOn")) {
73 73
             server.startServer();
@@ -78,12 +78,12 @@ public class IdentdManager {
78 78
      * Called when this plugin is unloaded.
79 79
      */
80 80
     public void onUnload() {
81
-        eventBus.unregister(this);
81
+        eventBus.unsubscribe(this);
82 82
         server.stopServer();
83 83
         connections.clear();
84 84
     }
85 85
 
86
-    @Subscribe
86
+    @Handler
87 87
     public void handleServerConnecting(final ServerConnectingEvent event) {
88 88
         synchronized (connections) {
89 89
                 if (connections.isEmpty()) {
@@ -93,12 +93,12 @@ public class IdentdManager {
93 93
             }
94 94
     }
95 95
 
96
-    @Subscribe
96
+    @Handler
97 97
     public void handleServerConnected(final ServerConnectedEvent event) {
98 98
         handleServerRemoved(event.getConnection());
99 99
     }
100 100
 
101
-    @Subscribe
101
+    @Handler
102 102
     public void handleServerConnectError(final ServerConnectErrorEvent event) {
103 103
         handleServerRemoved(event.getConnection());
104 104
     }

+ 6
- 6
src/com/dmdirc/addons/identd/IdentdServer.java Ver arquivo

@@ -29,8 +29,6 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
29 29
 import com.dmdirc.logger.ErrorLevel;
30 30
 import com.dmdirc.plugins.PluginDomain;
31 31
 
32
-import com.google.common.eventbus.EventBus;
33
-
34 32
 import java.io.IOException;
35 33
 import java.net.ServerSocket;
36 34
 import java.net.Socket;
@@ -39,13 +37,15 @@ import java.util.List;
39 37
 
40 38
 import javax.inject.Inject;
41 39
 
40
+import net.engio.mbassy.bus.MBassador;
41
+
42 42
 /**
43 43
  * The IdentdServer watches over the ident port when required
44 44
  */
45 45
 public final class IdentdServer implements Runnable {
46 46
 
47 47
     /** The event bus to post errors on. */
48
-    private final EventBus eventBus;
48
+    private final MBassador eventBus;
49 49
     /** The Thread in use for this server */
50 50
     private volatile Thread myThread = null;
51 51
     /** The current socket in use for this server */
@@ -70,7 +70,7 @@ public final class IdentdServer implements Runnable {
70 70
      * @param domain        This plugin's setting domain
71 71
      */
72 72
     @Inject
73
-    public IdentdServer(final EventBus eventBus,
73
+    public IdentdServer(final MBassador eventBus,
74 74
             final ServerManager serverManager,
75 75
             @GlobalConfig final AggregateConfigProvider config,
76 76
             @PluginDomain(IdentdPlugin.class) final String domain) {
@@ -95,7 +95,7 @@ public final class IdentdServer implements Runnable {
95 95
                 addClient(client);
96 96
             } catch (IOException e) {
97 97
                 if (myThread == thisThread) {
98
-                    eventBus.post(new UserErrorEvent(ErrorLevel.HIGH, e,
98
+                    eventBus.publishAsync(new UserErrorEvent(ErrorLevel.HIGH, e,
99 99
                             "Accepting client failed: " + e.getMessage(), ""));
100 100
                 }
101 101
             }
@@ -149,7 +149,7 @@ public final class IdentdServer implements Runnable {
149 149
                 myThread = new Thread(this);
150 150
                 myThread.start();
151 151
             } catch (IOException e) {
152
-                eventBus.post(new UserErrorEvent(ErrorLevel.HIGH, e,
152
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.HIGH, e,
153 153
                         "Unable to start identd server: " + e.getMessage(), ""));
154 154
                 if (e.getMessage().equals("Permission denied")) {
155 155
                     failed = true;

+ 12
- 12
src/com/dmdirc/addons/lagdisplay/LagDisplayManager.java Ver arquivo

@@ -41,9 +41,6 @@ import com.dmdirc.interfaces.config.ConfigChangeListener;
41 41
 import com.dmdirc.plugins.PluginDomain;
42 42
 import com.dmdirc.util.collections.RollingList;
43 43
 
44
-import com.google.common.eventbus.EventBus;
45
-import com.google.common.eventbus.Subscribe;
46
-
47 44
 import java.util.Date;
48 45
 import java.util.HashMap;
49 46
 import java.util.Map;
@@ -53,6 +50,9 @@ import javax.inject.Inject;
53 50
 import javax.inject.Provider;
54 51
 import javax.inject.Singleton;
55 52
 
53
+import net.engio.mbassy.bus.MBassador;
54
+import net.engio.mbassy.listener.Handler;
55
+
56 56
 /**
57 57
  * Manages the lifecycle of the lag display plugin.
58 58
  */
@@ -60,7 +60,7 @@ import javax.inject.Singleton;
60 60
 public class LagDisplayManager implements ConfigChangeListener, SelectionListener {
61 61
 
62 62
     /** Event bus to receive events on. */
63
-    private final EventBus eventBus;
63
+    private final MBassador eventBus;
64 64
     /** Active frame manager. */
65 65
     private final ActiveFrameManager activeFrameManager;
66 66
     /** Status bar to add panels to. */
@@ -85,7 +85,7 @@ public class LagDisplayManager implements ConfigChangeListener, SelectionListene
85 85
 
86 86
     @Inject
87 87
     public LagDisplayManager(
88
-            final EventBus eventBus,
88
+            final MBassador eventBus,
89 89
             final ActiveFrameManager activeFrameManager,
90 90
             final SwingStatusBar statusBar,
91 91
             final Provider<LagDisplayPanel> panelProvider,
@@ -105,14 +105,14 @@ public class LagDisplayManager implements ConfigChangeListener, SelectionListene
105 105
         activeFrameManager.addSelectionListener(this);
106 106
         globalConfig.addChangeListener(domain, this);
107 107
         readConfig();
108
-        eventBus.register(this);
108
+        eventBus.subscribe(this);
109 109
     }
110 110
 
111 111
     public void unload() {
112 112
         statusBar.removeComponent(panel);
113 113
         activeFrameManager.removeSelectionListener(this);
114 114
         globalConfig.removeListener(this);
115
-        eventBus.unregister(this);
115
+        eventBus.unsubscribe(this);
116 116
         panel = null;
117 117
     }
118 118
 
@@ -170,7 +170,7 @@ public class LagDisplayManager implements ConfigChangeListener, SelectionListene
170 170
         panel.refreshDialog();
171 171
     }
172 172
 
173
-    @Subscribe
173
+    @Handler
174 174
     public void handleServerNumeric(final ServerNumericEvent event) {
175 175
         if (event.getNumeric() != 421) {
176 176
             return;
@@ -201,7 +201,7 @@ public class LagDisplayManager implements ConfigChangeListener, SelectionListene
201 201
         }
202 202
     }
203 203
 
204
-    @Subscribe
204
+    @Handler
205 205
     public void handleServerDisconnected(final ServerDisconnectedEvent event) {
206 206
         final TextFrame activeFrame = activeFrameManager.getActiveFrame();
207 207
         final FrameContainer active = activeFrame == null ? null : activeFrame.getContainer();
@@ -215,7 +215,7 @@ public class LagDisplayManager implements ConfigChangeListener, SelectionListene
215 215
             panel.refreshDialog();
216 216
     }
217 217
 
218
-    @Subscribe
218
+    @Handler
219 219
     public void handleServerGotPing(final ServerGotpingEvent event) {
220 220
         if (event.getConnection().getWindowModel().getConfigManager().
221 221
                 getOptionBool(domain, "usealternate")) {
@@ -237,7 +237,7 @@ public class LagDisplayManager implements ConfigChangeListener, SelectionListene
237 237
         panel.refreshDialog();
238 238
     }
239 239
 
240
-    @Subscribe
240
+    @Handler
241 241
     public void handleServerNoPing(final ServerNopingEvent event) {
242 242
         if (event.getConnection().getWindowModel().getConfigManager().
243 243
                 getOptionBool(domain, "usealternate")) {
@@ -258,7 +258,7 @@ public class LagDisplayManager implements ConfigChangeListener, SelectionListene
258 258
         panel.refreshDialog();
259 259
     }
260 260
 
261
-    @Subscribe
261
+    @Handler
262 262
     public void HandleServerPingSent(final ServerPingsentEvent event) {
263 263
         if (!event.getConnection().getWindowModel().getConfigManager().
264 264
                 getOptionBool(domain, "usealternate")) {

+ 2
- 2
src/com/dmdirc/addons/logging/HistoryWindow.java Ver arquivo

@@ -29,7 +29,7 @@ import com.dmdirc.util.URLBuilder;
29 29
 import com.dmdirc.util.io.ReverseFileReader;
30 30
 
31 31
 import com.google.common.base.Optional;
32
-import com.google.common.eventbus.EventBus;
32
+import net.engio.mbassy.bus.MBassador;
33 33
 
34 34
 import java.util.Arrays;
35 35
 
@@ -53,7 +53,7 @@ public class HistoryWindow extends FrameContainer {
53 53
             final ReverseFileReader reader,
54 54
             final FrameContainer parent,
55 55
             final URLBuilder urlBuilder,
56
-            final EventBus eventBus,
56
+            final MBassador eventBus,
57 57
             final int numLines) {
58 58
         super(parent, "raw", title, title, parent.getConfigManager(), urlBuilder, eventBus,
59 59
                 Arrays.asList(WindowComponent.TEXTAREA.getIdentifier()));

+ 31
- 32
src/com/dmdirc/addons/logging/LoggingManager.java Ver arquivo

@@ -44,7 +44,6 @@ import com.dmdirc.events.ChannelTopicChangeEvent;
44 44
 import com.dmdirc.events.QueryClosedEvent;
45 45
 import com.dmdirc.events.QueryOpenedEvent;
46 46
 import com.dmdirc.events.UserErrorEvent;
47
-import com.dmdirc.interfaces.ActionController;
48 47
 import com.dmdirc.interfaces.Connection;
49 48
 import com.dmdirc.interfaces.config.AggregateConfigProvider;
50 49
 import com.dmdirc.interfaces.config.ConfigChangeListener;
@@ -60,9 +59,6 @@ import com.dmdirc.util.URLBuilder;
60 59
 import com.dmdirc.util.io.ReverseFileReader;
61 60
 import com.dmdirc.util.io.StreamUtils;
62 61
 
63
-import com.google.common.eventbus.EventBus;
64
-import com.google.common.eventbus.Subscribe;
65
-
66 62
 import java.awt.Color;
67 63
 import java.io.BufferedWriter;
68 64
 import java.io.File;
@@ -87,6 +83,9 @@ import javax.inject.Inject;
87 83
 import javax.inject.Provider;
88 84
 import javax.inject.Singleton;
89 85
 
86
+import net.engio.mbassy.bus.MBassador;
87
+import net.engio.mbassy.listener.Handler;
88
+
90 89
 /**
91 90
  * Manages logging activities.
92 91
  */
@@ -106,7 +105,7 @@ public class LoggingManager implements ConfigChangeListener {
106 105
     private final Map<String, OpenFile> openFiles = Collections.synchronizedMap(
107 106
             new HashMap<String, OpenFile>());
108 107
     private final URLBuilder urlBuilder;
109
-    private final EventBus eventBus;
108
+    private final MBassador eventBus;
110 109
     private final Provider<String> directoryProvider;
111 110
     /** Timer used to close idle files. */
112 111
     private Timer idleFileTimer;
@@ -130,7 +129,7 @@ public class LoggingManager implements ConfigChangeListener {
130 129
     @Inject
131 130
     public LoggingManager(@PluginDomain(LoggingPlugin.class) final String domain,
132 131
             @GlobalConfig final AggregateConfigProvider globalConfig,
133
-            final WindowManager windowManager, final URLBuilder urlBuilder, final EventBus eventBus,
132
+            final WindowManager windowManager, final URLBuilder urlBuilder, final MBassador eventBus,
134 133
             @Directory(LoggingModule.LOGS_DIRECTORY) final Provider<String> directoryProvider) {
135 134
         this.domain = domain;
136 135
         this.config = globalConfig;
@@ -146,12 +145,12 @@ public class LoggingManager implements ConfigChangeListener {
146 145
         final File dir = new File(directoryProvider.get());
147 146
         if (dir.exists()) {
148 147
             if (!dir.isDirectory()) {
149
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, null,
148
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, null,
150 149
                         "Unable to create logging dir (file exists instead)", ""));
151 150
             }
152 151
         } else {
153 152
             if (!dir.mkdirs()) {
154
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, null,
153
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, null,
155 154
                         "Unable to create logging dir", ""));
156 155
             }
157 156
         }
@@ -168,7 +167,7 @@ public class LoggingManager implements ConfigChangeListener {
168 167
             }
169 168
         }, 3600000);
170 169
 
171
-        eventBus.register(this);
170
+        eventBus.subscribe(this);
172 171
     }
173 172
 
174 173
     public void unload() {
@@ -184,7 +183,7 @@ public class LoggingManager implements ConfigChangeListener {
184 183
             openFiles.clear();
185 184
         }
186 185
 
187
-        eventBus.unregister(this);
186
+        eventBus.unsubscribe(this);
188 187
     }
189 188
 
190 189
     /**
@@ -207,7 +206,7 @@ public class LoggingManager implements ConfigChangeListener {
207 206
         }
208 207
     }
209 208
 
210
-    @Subscribe
209
+    @Handler
211 210
     public void handleQueryOpened(final QueryOpenedEvent event) {
212 211
         final Parser parser = event.getQuery().getConnection().getParser();
213 212
         final ClientInfo client = parser.getClient(event.getQuery().getHost());
@@ -221,7 +220,7 @@ public class LoggingManager implements ConfigChangeListener {
221 220
         appendLine(filename, "");
222 221
     }
223 222
 
224
-    @Subscribe
223
+    @Handler
225 224
     public void handleQueryClosed(final QueryClosedEvent event) {
226 225
         final Parser parser = event.getQuery().getConnection().getParser();
227 226
         final ClientInfo client = parser.getClient(event.getQuery().getHost());
@@ -233,33 +232,33 @@ public class LoggingManager implements ConfigChangeListener {
233 232
         }
234 233
     }
235 234
 
236
-    @Subscribe
235
+    @Handler
237 236
     public void handleQueryActions(final BaseQueryActionEvent event) {
238 237
         final ClientInfo client = event.getClient();
239 238
         final String filename = getLogFile(client);
240 239
         appendLine(filename, "* %s %s", client.getNickname(), event.getMessage());
241 240
     }
242 241
 
243
-    @Subscribe
242
+    @Handler
244 243
     public void handleQueryMessages(final BaseQueryMessageEvent event) {
245 244
         final ClientInfo client = event.getClient();
246 245
         final String filename = getLogFile(client);
247 246
         appendLine(filename, "<%s> %s", client.getNickname(), event.getMessage());
248 247
     }
249 248
 
250
-    @Subscribe
249
+    @Handler
251 250
     public void handleChannelMessage(final BaseChannelMessageEvent event) {
252 251
         final String filename = getLogFile(event.getChannel().getChannelInfo());
253 252
         appendLine(filename, "<%s> %s", getDisplayName(event.getClient()), event.getMessage());
254 253
     }
255 254
 
256
-    @Subscribe
255
+    @Handler
257 256
     public void handleChannelAction(final BaseChannelActionEvent event) {
258 257
         final String filename = getLogFile(event.getChannel().getChannelInfo());
259 258
         appendLine(filename, "* %s %s", getDisplayName(event.getClient()), event.getMessage());
260 259
     }
261 260
 
262
-    @Subscribe
261
+    @Handler
263 262
     public void handleChannelGotTopic(final ChannelGottopicEvent event) {
264 263
         final String filename = getLogFile(event.getChannel().getChannelInfo());
265 264
         final ChannelInfo channel = event.getChannel().getChannelInfo();
@@ -272,7 +271,7 @@ public class LoggingManager implements ConfigChangeListener {
272 271
                 getTopicSetter());
273 272
     }
274 273
 
275
-    @Subscribe
274
+    @Handler
276 275
     public void handleChannelTopicChange(final ChannelTopicChangeEvent event) {
277 276
         final String filename = getLogFile(event.getChannel().getChannelInfo());
278 277
         final ChannelClientInfo channelClient = event.getClient();
@@ -280,7 +279,7 @@ public class LoggingManager implements ConfigChangeListener {
280 279
                 getDisplayName(channelClient), event.getTopic());
281 280
     }
282 281
 
283
-    @Subscribe
282
+    @Handler
284 283
     public void handleChannelJoin(final ChannelJoinEvent event) {
285 284
         final String filename = getLogFile(event.getChannel().getChannelInfo());
286 285
         final ChannelClientInfo channelClient = event.getClient();
@@ -289,7 +288,7 @@ public class LoggingManager implements ConfigChangeListener {
289 288
                 getDisplayName(channelClient), client.toString());
290 289
     }
291 290
 
292
-    @Subscribe
291
+    @Handler
293 292
     public void handleChannelPart(final ChannelPartEvent event) {
294 293
         final String filename = getLogFile(event.getChannel().getChannelInfo());
295 294
         final String message = event.getMessage();
@@ -304,7 +303,7 @@ public class LoggingManager implements ConfigChangeListener {
304 303
         }
305 304
     }
306 305
 
307
-    @Subscribe
306
+    @Handler
308 307
     public void handleChannelQuit(final ChannelQuitEvent event) {
309 308
         final String filename = getLogFile(event.getChannel().getChannelInfo());
310 309
         final String reason = event.getMessage();
@@ -319,7 +318,7 @@ public class LoggingManager implements ConfigChangeListener {
319 318
         }
320 319
     }
321 320
 
322
-    @Subscribe
321
+    @Handler
323 322
     public void handleChannelKick(final ChannelKickEvent event) {
324 323
         final ChannelClientInfo victim = event.getVictim();
325 324
         final ChannelClientInfo perpetrator = event.getClient();
@@ -335,14 +334,14 @@ public class LoggingManager implements ConfigChangeListener {
335 334
         }
336 335
     }
337 336
 
338
-    @Subscribe
337
+    @Handler
339 338
     public void handleNickChange(final ChannelNickchangeEvent event) {
340 339
         final String filename = getLogFile(event.getChannel().getChannelInfo());
341 340
         appendLine(filename, "*** %s is now %s", getDisplayName(event.getClient(),
342 341
                 event.getOldNick()), getDisplayName(event.getClient()));
343 342
     }
344 343
 
345
-    @Subscribe
344
+    @Handler
346 345
     public void handleModeChange(final ChannelModechangeEvent event) {
347 346
         final String filename = getLogFile(event.getChannel().getChannelInfo());
348 347
         if (event.getClient().getClient().getNickname().isEmpty()) {
@@ -358,7 +357,7 @@ public class LoggingManager implements ConfigChangeListener {
358 357
         setCachedSettings();
359 358
     }
360 359
 
361
-    @Subscribe
360
+    @Handler
362 361
     public void handleChannelOpened(final ChannelOpenedEvent event) {
363 362
         final String filename = getLogFile(event.getChannel());
364 363
 
@@ -370,7 +369,7 @@ public class LoggingManager implements ConfigChangeListener {
370 369
         appendLine(filename, "");
371 370
     }
372 371
 
373
-    @Subscribe
372
+    @Handler
374 373
     public void handleChannelClosed(final ChannelClosedEvent event) {
375 374
         final String filename = getLogFile(event.getChannel());
376 375
 
@@ -389,7 +388,7 @@ public class LoggingManager implements ConfigChangeListener {
389 388
      */
390 389
     protected void showBackBuffer(final FrameContainer frame, final String filename) {
391 390
         if (frame == null) {
392
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, null, "Given a null frame", ""));
391
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, null, "Given a null frame", ""));
393 392
             return;
394 393
         }
395 394
 
@@ -409,7 +408,7 @@ public class LoggingManager implements ConfigChangeListener {
409 408
                 frame.addLine(getColouredString(colour, "--- End of backbuffer\n"),
410 409
                         backbufferTimestamp);
411 410
             } catch (IOException | SecurityException e) {
412
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, e,
411
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, e,
413 412
                         "Unable to show backbuffer (Filename: " + filename + "): " + e.getMessage(),
414 413
                         ""));
415 414
             }
@@ -485,7 +484,7 @@ public class LoggingManager implements ConfigChangeListener {
485 484
                 final DateFormat dateFormat = new SimpleDateFormat("[dd/MM/yyyy HH:mm:ss]");
486 485
                 dateString = dateFormat.format(new Date()).trim();
487 486
 
488
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, iae,
487
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, iae,
489 488
                         "Dateformat String '" + timestamp + "' is invalid. For more information: "
490 489
                         + "http://java.sun.com/javase/6/docs/api/java/text/SimpleDateFormat.html",
491 490
                         ""));
@@ -602,7 +601,7 @@ public class LoggingManager implements ConfigChangeListener {
602 601
 
603 602
             if (!new File(directory.toString()).exists() && !(new File(directory.toString())).
604 603
                     mkdirs()) {
605
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, null,
604
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, null,
606 605
                         "Unable to create date dirs", ""));
607 606
             }
608 607
         }
@@ -654,12 +653,12 @@ public class LoggingManager implements ConfigChangeListener {
654 653
         final File dir = new File(directory.toString() + network + System.getProperty(
655 654
                 "file.separator"));
656 655
         if (dir.exists() && !dir.isDirectory()) {
657
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, null,
656
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, null,
658 657
                     "Unable to create networkfolders dir (file exists instead)", ""));
659 658
             // Prepend network name to file instead.
660 659
             prependNetwork = true;
661 660
         } else if (!dir.exists() && !dir.mkdirs()) {
662
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, null,
661
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, null,
663 662
                     "Unable to create networkfolders dir", ""));
664 663
             prependNetwork = true;
665 664
         }

+ 5
- 5
src/com/dmdirc/addons/mediasource_dbus/DBusMediaSourceManager.java Ver arquivo

@@ -26,8 +26,6 @@ import com.dmdirc.addons.nowplaying.MediaSource;
26 26
 import com.dmdirc.events.UserErrorEvent;
27 27
 import com.dmdirc.logger.ErrorLevel;
28 28
 
29
-import com.google.common.eventbus.EventBus;
30
-
31 29
 import java.io.BufferedReader;
32 30
 import java.io.File;
33 31
 import java.io.IOException;
@@ -39,6 +37,8 @@ import java.util.Map;
39 37
 
40 38
 import javax.inject.Inject;
41 39
 
40
+import net.engio.mbassy.bus.MBassador;
41
+
42 42
 /**
43 43
  * Provides a media source for DBUS players.
44 44
  */
@@ -47,14 +47,14 @@ public class DBusMediaSourceManager {
47 47
     /** A map of discovered mpris sources. */
48 48
     private final Map<String, MediaSource> mprisSources;
49 49
     /** The event bus to post errors to. */
50
-    private final EventBus eventBus;
50
+    private final MBassador eventBus;
51 51
     /** The sources used by this media source. */
52 52
     private final List<MediaSource> sources;
53 53
     /** The path to qdbus. */
54 54
     private String qdbus;
55 55
 
56 56
     @Inject
57
-    public DBusMediaSourceManager(final EventBus eventBus) {
57
+    public DBusMediaSourceManager(final MBassador eventBus) {
58 58
         this.eventBus = eventBus;
59 59
         sources = new ArrayList<>();
60 60
         mprisSources = new HashMap<>();
@@ -146,7 +146,7 @@ public class DBusMediaSourceManager {
146 146
                 }
147 147
             }
148 148
         } catch (IOException ex) {
149
-            eventBus.post(new UserErrorEvent(ErrorLevel.HIGH, ex, "Unable to get DBUS info", ""));
149
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.HIGH, ex, "Unable to get DBUS info", ""));
150 150
         } finally {
151 151
             if (process != null) {
152 152
                 process.destroy();

+ 6
- 6
src/com/dmdirc/addons/mediasource_linux_title/TitleMediaSource.java Ver arquivo

@@ -27,19 +27,19 @@ import com.dmdirc.addons.nowplaying.MediaSourceState;
27 27
 import com.dmdirc.events.UserErrorEvent;
28 28
 import com.dmdirc.logger.ErrorLevel;
29 29
 
30
-import com.google.common.eventbus.EventBus;
31
-
32 30
 import java.io.BufferedReader;
33 31
 import java.io.IOException;
34 32
 import java.io.InputStreamReader;
35 33
 
34
+import net.engio.mbassy.bus.MBassador;
35
+
36 36
 /**
37 37
  * Provides a media source for Linux players using the `xwininfo` command.
38 38
  */
39 39
 public class TitleMediaSource implements MediaSource {
40 40
 
41 41
     /** The event bus to post errors to. */
42
-    private final EventBus eventBus;
42
+    private final MBassador eventBus;
43 43
     /** The command to use to get the title. */
44 44
     private final String command;
45 45
     /** The name of the player we're retrieving. */
@@ -52,7 +52,7 @@ public class TitleMediaSource implements MediaSource {
52 52
      * @param command  The command to be executed
53 53
      * @param name     The name of the media source
54 54
      */
55
-    public TitleMediaSource(final EventBus eventBus, final String command, final String name) {
55
+    public TitleMediaSource(final MBassador eventBus, final String command, final String name) {
56 56
         this.eventBus = eventBus;
57 57
         this.command = command;
58 58
         this.name = name;
@@ -127,11 +127,11 @@ public class TitleMediaSource implements MediaSource {
127 127
                     return line;
128 128
                 }
129 129
             } catch (IOException ex) {
130
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex,
130
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex,
131 131
                         "Unable to retrieve media source info", ""));
132 132
             }
133 133
         } catch (IOException ex) {
134
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex,
134
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex,
135 135
                             "Unable to retrieve media source info", ""));
136 136
         }
137 137
 

+ 3
- 3
src/com/dmdirc/addons/mediasource_linux_title/TitleMediaSourceManager.java Ver arquivo

@@ -24,7 +24,7 @@ package com.dmdirc.addons.mediasource_linux_title;
24 24
 
25 25
 import com.dmdirc.addons.nowplaying.MediaSource;
26 26
 
27
-import com.google.common.eventbus.EventBus;
27
+import net.engio.mbassy.bus.MBassador;
28 28
 
29 29
 import java.util.ArrayList;
30 30
 import java.util.List;
@@ -40,10 +40,10 @@ public class TitleMediaSourceManager {
40 40
     /** The sources to be returned. */
41 41
     private List<MediaSource> sources = null;
42 42
     /** The event bus to post errors to. */
43
-    private final EventBus eventBus;
43
+    private final MBassador eventBus;
44 44
 
45 45
     @Inject
46
-    public TitleMediaSourceManager(final EventBus eventBus) {
46
+    public TitleMediaSourceManager(final MBassador eventBus) {
47 47
         this.eventBus = eventBus;
48 48
     }
49 49
 

+ 9
- 9
src/com/dmdirc/addons/nickcolours/NickColourManager.java Ver arquivo

@@ -35,9 +35,6 @@ import com.dmdirc.plugins.PluginDomain;
35 35
 import com.dmdirc.ui.Colour;
36 36
 import com.dmdirc.ui.messages.ColourManager;
37 37
 
38
-import com.google.common.eventbus.EventBus;
39
-import com.google.common.eventbus.Subscribe;
40
-
41 38
 import java.util.ArrayList;
42 39
 import java.util.List;
43 40
 import java.util.Map;
@@ -45,6 +42,9 @@ import java.util.Map;
45 42
 import javax.inject.Inject;
46 43
 import javax.inject.Singleton;
47 44
 
45
+import net.engio.mbassy.bus.MBassador;
46
+import net.engio.mbassy.listener.Handler;
47
+
48 48
 /**
49 49
  * Provides various features related to nickname colouring.
50 50
  */
@@ -58,7 +58,7 @@ public class NickColourManager implements ConfigChangeListener {
58 58
     /** Plugin's setting domain. */
59 59
     private final String domain;
60 60
     /** Event bus to subscribe to events on . */
61
-    private final EventBus eventBus;
61
+    private final MBassador eventBus;
62 62
     /** "Random" colours to use to colour nicknames. */
63 63
     private String[] randColours = new String[]{
64 64
         "E90E7F", "8E55E9", "B30E0E", "18B33C", "58ADB3", "9E54B3", "B39875", "3176B3",};
@@ -71,14 +71,14 @@ public class NickColourManager implements ConfigChangeListener {
71 71
     @Inject
72 72
     public NickColourManager(final ColourManager colourManager,
73 73
             @PluginDomain(NickColourPlugin.class) final String domain,
74
-            @GlobalConfig final AggregateConfigProvider globalConfig, final EventBus eventBus) {
74
+            @GlobalConfig final AggregateConfigProvider globalConfig, final MBassador eventBus) {
75 75
         this.domain = domain;
76 76
         this.globalConfig = globalConfig;
77 77
         this.colourManager = colourManager;
78 78
         this.eventBus = eventBus;
79 79
     }
80 80
 
81
-    @Subscribe
81
+    @Handler
82 82
     public void handleChannelNames(final ChannelGotnamesEvent event) {
83 83
         final ChannelInfo chanInfo = event.getChannel().getChannelInfo();
84 84
         final String network = event.getChannel().getConnection().getNetwork();
@@ -88,7 +88,7 @@ public class NickColourManager implements ConfigChangeListener {
88 88
         }
89 89
     }
90 90
 
91
-    @Subscribe
91
+    @Handler
92 92
     public void handleChannelJoin(final ChannelJoinEvent event) {
93 93
         final String network = event.getChannel().getConnection().getNetwork();
94 94
         colourClient(network, event.getClient());
@@ -240,14 +240,14 @@ public class NickColourManager implements ConfigChangeListener {
240 240
      */
241 241
     public void onLoad() {
242 242
         setCachedSettings();
243
-        eventBus.register(this);
243
+        eventBus.subscribe(this);
244 244
     }
245 245
 
246 246
     /**
247 247
      * Unloads this plugin.
248 248
      */
249 249
     public void onUnload() {
250
-        eventBus.unregister(this);
250
+        eventBus.unsubscribe(this);
251 251
     }
252 252
 
253 253
     /**

+ 9
- 9
src/com/dmdirc/addons/notifications/NotificationsManager.java Ver arquivo

@@ -30,14 +30,14 @@ import com.dmdirc.plugins.PluginDomain;
30 30
 import com.dmdirc.plugins.PluginInfo;
31 31
 import com.dmdirc.plugins.PluginManager;
32 32
 
33
-import com.google.common.eventbus.EventBus;
34
-import com.google.common.eventbus.Subscribe;
35
-
36 33
 import java.util.ArrayList;
37 34
 import java.util.List;
38 35
 
39 36
 import javax.inject.Inject;
40 37
 
38
+import net.engio.mbassy.bus.MBassador;
39
+import net.engio.mbassy.listener.Handler;
40
+
41 41
 public class NotificationsManager {
42 42
 
43 43
     /** The notification methods that we know of. */
@@ -51,11 +51,11 @@ public class NotificationsManager {
51 51
     /** Plugin manager. */
52 52
     private final PluginManager pluginManager;
53 53
     /** Event bus to listen for events on. */
54
-    private final EventBus eventBus;
54
+    private final MBassador eventBus;
55 55
 
56 56
     @Inject
57 57
     public NotificationsManager(@PluginDomain(NotificationsPlugin.class) final String domain,
58
-            @GlobalConfig final AggregateConfigProvider globalConfig, final EventBus eventBus,
58
+            @GlobalConfig final AggregateConfigProvider globalConfig, final MBassador eventBus,
59 59
             final PluginManager pluginManager) {
60 60
         this.domain = domain;
61 61
         this.globalConfig = globalConfig;
@@ -66,7 +66,7 @@ public class NotificationsManager {
66 66
     public void onLoad() {
67 67
         methods.clear();
68 68
         loadSettings();
69
-        eventBus.register(this);
69
+        eventBus.subscribe(this);
70 70
         for (PluginInfo target : pluginManager.getPluginInfos()) {
71 71
             if (target.isLoaded()) {
72 72
                 addPlugin(target);
@@ -76,15 +76,15 @@ public class NotificationsManager {
76 76
 
77 77
     public void onUnload() {
78 78
         methods.clear();
79
-        eventBus.unregister(this);
79
+        eventBus.unsubscribe(this);
80 80
     }
81 81
 
82
-    @Subscribe
82
+    @Handler
83 83
     public void handlePluginLoaded(final PluginLoadedEvent event) {
84 84
         addPlugin(event.getPlugin());
85 85
     }
86 86
 
87
-    @Subscribe
87
+    @Handler
88 88
     public void handlePluginUnloaded(final PluginUnloadedEvent event) {
89 89
         removePlugin(event.getPlugin());
90 90
     }

+ 9
- 9
src/com/dmdirc/addons/nowplaying/NowPlayingManager.java Ver arquivo

@@ -31,15 +31,15 @@ import com.dmdirc.plugins.PluginDomain;
31 31
 import com.dmdirc.plugins.PluginInfo;
32 32
 import com.dmdirc.plugins.PluginManager;
33 33
 
34
-import com.google.common.eventbus.EventBus;
35
-import com.google.common.eventbus.Subscribe;
36
-
37 34
 import java.util.ArrayList;
38 35
 import java.util.Collections;
39 36
 import java.util.List;
40 37
 
41 38
 import javax.inject.Inject;
42 39
 
40
+import net.engio.mbassy.bus.MBassador;
41
+import net.engio.mbassy.listener.Handler;
42
+
43 43
 public class NowPlayingManager {
44 44
 
45 45
     /** Plugin manager to get plugins from. */
@@ -47,7 +47,7 @@ public class NowPlayingManager {
47 47
     /** Global configuration to read settings from. */
48 48
     private final AggregateConfigProvider globalConfig;
49 49
     /** Event bus to subscribe to events on. */
50
-    private final EventBus eventBus;
50
+    private final MBassador eventBus;
51 51
     /** This plugin's settings domain. */
52 52
     private final String domain;
53 53
     /** The sources that we know of. */
@@ -58,7 +58,7 @@ public class NowPlayingManager {
58 58
     private List<String> order;
59 59
 
60 60
     @Inject
61
-    public NowPlayingManager(final PluginManager pluginManager, final EventBus eventBus,
61
+    public NowPlayingManager(final PluginManager pluginManager, final MBassador eventBus,
62 62
             @GlobalConfig final AggregateConfigProvider globalConfig,
63 63
             @PluginDomain(NowPlayingPlugin.class) final String domain) {
64 64
         this.pluginManager = pluginManager;
@@ -74,7 +74,7 @@ public class NowPlayingManager {
74 74
         sources.clear();
75 75
         managers.clear();
76 76
         order = getSettings();
77
-        eventBus.register(this);
77
+        eventBus.subscribe(this);
78 78
         for (PluginInfo target : pluginManager.getPluginInfos()) {
79 79
             if (target.isLoaded()) {
80 80
                 addPlugin(target);
@@ -88,15 +88,15 @@ public class NowPlayingManager {
88 88
     public void onUnload() {
89 89
         sources.clear();
90 90
         managers.clear();
91
-        eventBus.unregister(this);
91
+        eventBus.unsubscribe(this);
92 92
     }
93 93
 
94
-    @Subscribe
94
+    @Handler
95 95
     public void handlePluginLoaded(final PluginLoadedEvent event) {
96 96
         addPlugin(event.getPlugin());
97 97
     }
98 98
 
99
-    @Subscribe
99
+    @Handler
100 100
     public void handlePluginUnloaded(final PluginUnloadedEvent event) {
101 101
         removePlugin(event.getPlugin());
102 102
     }

+ 2
- 2
src/com/dmdirc/addons/parserdebug/DebugWindow.java Ver arquivo

@@ -29,7 +29,7 @@ import com.dmdirc.parser.interfaces.callbacks.DebugInfoListener;
29 29
 import com.dmdirc.ui.core.components.WindowComponent;
30 30
 import com.dmdirc.util.URLBuilder;
31 31
 
32
-import com.google.common.eventbus.EventBus;
32
+import net.engio.mbassy.bus.MBassador;
33 33
 
34 34
 import java.util.Arrays;
35 35
 
@@ -61,7 +61,7 @@ public class DebugWindow extends FrameContainer {
61 61
             final Parser parser,
62 62
             final Connection connection,
63 63
             final URLBuilder urlBuilder,
64
-            final EventBus eventBus) {
64
+            final MBassador eventBus) {
65 65
         super(connection.getWindowModel(), "raw", "Parser Debug", title,
66 66
                 connection.getWindowModel().getConfigManager(),
67 67
                 urlBuilder, eventBus, Arrays.asList(WindowComponent.TEXTAREA.getIdentifier()));

+ 8
- 8
src/com/dmdirc/addons/parserdebug/ParserDebugManager.java Ver arquivo

@@ -30,19 +30,19 @@ import com.dmdirc.parser.interfaces.callbacks.DebugInfoListener;
30 30
 import com.dmdirc.ui.WindowManager;
31 31
 import com.dmdirc.util.URLBuilder;
32 32
 
33
-import com.google.common.eventbus.EventBus;
34
-import com.google.common.eventbus.Subscribe;
35
-
36 33
 import java.util.Date;
37 34
 import java.util.HashMap;
38 35
 import java.util.Map;
39 36
 
40 37
 import javax.inject.Inject;
41 38
 
39
+import net.engio.mbassy.bus.MBassador;
40
+import net.engio.mbassy.listener.Handler;
41
+
42 42
 public class ParserDebugManager implements DebugInfoListener {
43 43
 
44 44
     /** Event bus to subscribe to events on. */
45
-    private final EventBus eventBus;
45
+    private final MBassador eventBus;
46 46
     /** Map of parsers registered. */
47 47
     protected final Map<Parser, DebugWindow> registeredParsers;
48 48
     /** URL Builder. */
@@ -54,7 +54,7 @@ public class ParserDebugManager implements DebugInfoListener {
54 54
     public ParserDebugManager(
55 55
             final URLBuilder urlBuilder,
56 56
             final WindowManager windowManager,
57
-            final EventBus eventBus) {
57
+            final MBassador eventBus) {
58 58
         this.urlBuilder = urlBuilder;
59 59
         this.windowManager = windowManager;
60 60
         this.eventBus = eventBus;
@@ -65,14 +65,14 @@ public class ParserDebugManager implements DebugInfoListener {
65 65
      * Adds action listener.
66 66
      */
67 67
     public void addActionListener() {
68
-        eventBus.register(this);
68
+        eventBus.subscribe(this);
69 69
     }
70 70
 
71 71
     /**
72 72
      * Remove action listener.
73 73
      */
74 74
     public void removeActionListener() {
75
-        eventBus.unregister(this);
75
+        eventBus.unsubscribe(this);
76 76
     }
77 77
 
78 78
     /**
@@ -146,7 +146,7 @@ public class ParserDebugManager implements DebugInfoListener {
146 146
         }
147 147
     }
148 148
 
149
-    @Subscribe
149
+    @Handler
150 150
     public void handleServerDisconnected(final ServerDisconnectedEvent event) {
151 151
             final Parser parser = event.getConnection().getParser();
152 152
             if (registeredParsers.containsKey(parser)) {

+ 2
- 2
src/com/dmdirc/addons/redirect/FakeWriteableFrameContainer.java Ver arquivo

@@ -28,7 +28,7 @@ import com.dmdirc.messages.MessageSinkManager;
28 28
 import com.dmdirc.ui.messages.Formatter;
29 29
 import com.dmdirc.util.URLBuilder;
30 30
 
31
-import com.google.common.eventbus.EventBus;
31
+import net.engio.mbassy.bus.MBassador;
32 32
 
33 33
 import java.util.Collections;
34 34
 import java.util.Date;
@@ -52,7 +52,7 @@ public class FakeWriteableFrameContainer extends FrameContainer {
52 52
     public FakeWriteableFrameContainer(
53 53
             final FrameContainer target,
54 54
             final MessageSinkManager messageSinkManager,
55
-            final EventBus eventBus,
55
+            final MBassador eventBus,
56 56
             final URLBuilder urlBuilder) {
57 57
         super(target, target.getIcon(), target.getName(), target.getTitle(),
58 58
                 target.getConfigManager(), urlBuilder, target.getCommandParser(),

+ 3
- 3
src/com/dmdirc/addons/redirect/RedirectCommand.java Ver arquivo

@@ -36,7 +36,7 @@ import com.dmdirc.ui.input.AdditionalTabTargets;
36 36
 import com.dmdirc.ui.input.TabCompleter;
37 37
 import com.dmdirc.util.URLBuilder;
38 38
 
39
-import com.google.common.eventbus.EventBus;
39
+import net.engio.mbassy.bus.MBassador;
40 40
 
41 41
 import javax.inject.Inject;
42 42
 
@@ -56,7 +56,7 @@ public class RedirectCommand extends Command implements IntelligentCommand {
56 56
     /** The URL builder to use when finding icons. */
57 57
     private final URLBuilder urlBuilder;
58 58
     /** The bus to dispatch events on. */
59
-    private final EventBus eventBus;
59
+    private final MBassador eventBus;
60 60
 
61 61
     /**
62 62
      * Creates a new instance of this command.
@@ -71,7 +71,7 @@ public class RedirectCommand extends Command implements IntelligentCommand {
71 71
             final CommandController controller,
72 72
             final MessageSinkManager messageSinkManager,
73 73
             final URLBuilder urlBuilder,
74
-            final EventBus eventBus) {
74
+            final MBassador eventBus) {
75 75
         super(controller);
76 76
         this.messageSinkManager = messageSinkManager;
77 77
         this.urlBuilder = urlBuilder;

+ 3
- 3
src/com/dmdirc/addons/scriptplugin/ScriptCommand.java Ver arquivo

@@ -37,7 +37,7 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
37 37
 import com.dmdirc.plugins.PluginDomain;
38 38
 import com.dmdirc.ui.input.AdditionalTabTargets;
39 39
 
40
-import com.google.common.eventbus.EventBus;
40
+import net.engio.mbassy.bus.MBassador;
41 41
 
42 42
 import java.io.File;
43 43
 import java.io.FileNotFoundException;
@@ -69,7 +69,7 @@ public class ScriptCommand extends Command implements IntelligentCommand {
69 69
     /** Script manager to handle scripts. */
70 70
     private final ScriptManager scriptManager;
71 71
     /** The event bus to post errors to. */
72
-    private final EventBus eventBus;
72
+    private final MBassador eventBus;
73 73
 
74 74
     /**
75 75
      * Creates a new instance of this command.
@@ -84,7 +84,7 @@ public class ScriptCommand extends Command implements IntelligentCommand {
84 84
      */
85 85
     @Inject
86 86
     public ScriptCommand(final ScriptManager scriptManager,
87
-            final EventBus eventBus,
87
+            final MBassador eventBus,
88 88
             @Directory(ScriptModule.SCRIPTS) final String scriptDirectory,
89 89
             @GlobalConfig final AggregateConfigProvider globalConfig,
90 90
             final CommandController commandController,

+ 6
- 5
src/com/dmdirc/addons/scriptplugin/ScriptEngineWrapper.java Ver arquivo

@@ -26,7 +26,6 @@ import com.dmdirc.events.UserErrorEvent;
26 26
 import com.dmdirc.logger.ErrorLevel;
27 27
 
28 28
 import com.google.common.base.Preconditions;
29
-import com.google.common.eventbus.EventBus;
30 29
 
31 30
 import java.io.File;
32 31
 import java.io.FileNotFoundException;
@@ -38,13 +37,15 @@ import javax.script.ScriptEngine;
38 37
 import javax.script.ScriptEngineManager;
39 38
 import javax.script.ScriptException;
40 39
 
40
+import net.engio.mbassy.bus.MBassador;
41
+
41 42
 /**
42 43
  * Class to create script engines!
43 44
  */
44 45
 public class ScriptEngineWrapper {
45 46
 
46 47
     /** The event bus to post errors to. */
47
-    private final EventBus eventBus;
48
+    private final MBassador eventBus;
48 49
     /** The Script Engine this wrapper wraps */
49 50
     private ScriptEngine engine;
50 51
     /** The File this script is from */
@@ -65,7 +66,7 @@ public class ScriptEngineWrapper {
65 66
      * @throws javax.script.ScriptException  If there was an error during creation
66 67
      */
67 68
     protected ScriptEngineWrapper(final ScriptEngineManager scriptEngineManager,
68
-            final EventBus eventBus, final String filename)
69
+            final MBassador eventBus, final String filename)
69 70
             throws FileNotFoundException, ScriptException {
70 71
         Preconditions.checkNotNull(filename, "File cannot be null");
71 72
         this.eventBus = eventBus;
@@ -141,7 +142,7 @@ public class ScriptEngineWrapper {
141 142
             // and do nothing rather that add an error every time a method is called
142 143
             // that doesn't exist (such as the action_* methods)
143 144
         } catch (ScriptException e) {
144
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, e,
145
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, e,
145 146
                     "Error calling '" + functionName + "' in '" + file.getPath() + "': " +
146 147
                             e.getMessage(), ""));
147 148
         }
@@ -162,7 +163,7 @@ public class ScriptEngineWrapper {
162 163
             // Tell it that it has been rehashed
163 164
             callFunction("onRehashSucess");
164 165
         } catch (ScriptException e) {
165
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, e,
166
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, e,
166 167
                     "Reloading '" + file.getPath() + "' failed: " + e.getMessage(), ""));
167 168
             // Tell it that its rehash failed
168 169
             callFunction("onRehashFailed", e);

+ 5
- 5
src/com/dmdirc/addons/scriptplugin/ScriptManager.java Ver arquivo

@@ -26,8 +26,6 @@ import com.dmdirc.commandline.CommandLineOptionsModule.Directory;
26 26
 import com.dmdirc.events.UserErrorEvent;
27 27
 import com.dmdirc.logger.ErrorLevel;
28 28
 
29
-import com.google.common.eventbus.EventBus;
30
-
31 29
 import java.io.File;
32 30
 import java.io.FileNotFoundException;
33 31
 import java.util.Arrays;
@@ -40,6 +38,8 @@ import javax.inject.Inject;
40 38
 import javax.script.ScriptEngineManager;
41 39
 import javax.script.ScriptException;
42 40
 
41
+import net.engio.mbassy.bus.MBassador;
42
+
43 43
 public class ScriptManager {
44 44
 
45 45
     /** Script engine manager. */
@@ -49,12 +49,12 @@ public class ScriptManager {
49 49
     /** Store Script State Name,Engine */
50 50
     private final Map<String, ScriptEngineWrapper> scripts = new HashMap<>();
51 51
     /** The event bus to post events to. */
52
-    private final EventBus eventBus;
52
+    private final MBassador eventBus;
53 53
 
54 54
     @Inject
55 55
     public ScriptManager(final ScriptEngineManager scriptEngineManager,
56 56
             @Directory(ScriptModule.SCRIPTS) final String scriptDirectory,
57
-            final EventBus eventBus) {
57
+            final MBassador eventBus) {
58 58
         this.scriptEngineManager = scriptEngineManager;
59 59
         this.scriptDirectory = scriptDirectory;
60 60
         this.eventBus = eventBus;
@@ -105,7 +105,7 @@ public class ScriptManager {
105 105
                         eventBus, scriptFilename);
106 106
                 scripts.put(scriptFilename, wrapper);
107 107
             } catch (FileNotFoundException | ScriptException e) {
108
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, e,
108
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, e,
109 109
                         "Error loading '" + scriptFilename + "': " + e.getMessage(), ""));
110 110
                 return false;
111 111
             }

+ 10
- 10
src/com/dmdirc/addons/scriptplugin/ScriptPluginManager.java Ver arquivo

@@ -29,9 +29,6 @@ import com.dmdirc.events.PluginUnloadedEvent;
29 29
 import com.dmdirc.events.UserErrorEvent;
30 30
 import com.dmdirc.logger.ErrorLevel;
31 31
 
32
-import com.google.common.eventbus.EventBus;
33
-import com.google.common.eventbus.Subscribe;
34
-
35 32
 import java.io.File;
36 33
 import java.io.FileInputStream;
37 34
 import java.io.FileOutputStream;
@@ -43,15 +40,18 @@ import java.util.List;
43 40
 import javax.inject.Inject;
44 41
 import javax.script.ScriptEngineManager;
45 42
 
43
+import net.engio.mbassy.bus.MBassador;
44
+import net.engio.mbassy.listener.Handler;
45
+
46 46
 public class ScriptPluginManager {
47 47
 
48
-    private final EventBus eventBus;
48
+    private final MBassador eventBus;
49 49
     private final String scriptDir;
50 50
     private final ScriptManager scriptManager;
51 51
     private final TypedProperties globalVariables;
52 52
 
53 53
     @Inject
54
-    public ScriptPluginManager(final EventBus eventBus,
54
+    public ScriptPluginManager(final MBassador eventBus,
55 55
             @Directory(ScriptModule.SCRIPTS) final String scriptDir,
56 56
             final ScriptManager scriptManager,
57 57
             final ScriptEngineManager scriptEngineManager) {
@@ -64,7 +64,7 @@ public class ScriptPluginManager {
64 64
     public void onLoad() {
65 65
         // Register the plugin_loaded action initially, this will be called
66 66
         // after this method finishes for us to register the rest.
67
-        eventBus.register(this);
67
+        eventBus.subscribe(this);
68 68
 
69 69
         // Make sure our scripts dir exists
70 70
         final File newDir = new File(scriptDir);
@@ -77,7 +77,7 @@ public class ScriptPluginManager {
77 77
             try (FileInputStream fis = new FileInputStream(savedVariables)) {
78 78
                 globalVariables.load(fis);
79 79
             } catch (IOException e) {
80
-                eventBus.post(new UserErrorEvent(ErrorLevel.LOW, e,
80
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, e,
81 81
                         "Error reading savedVariables from '" + savedVariables.getPath() + "': "
82 82
                                 + e.getMessage(), ""));
83 83
             }
@@ -85,18 +85,18 @@ public class ScriptPluginManager {
85 85
     }
86 86
 
87 87
     public void onUnLoad() {
88
-        eventBus.unregister(this);
88
+        eventBus.unsubscribe(this);
89 89
 
90 90
         final File savedVariables = new File(scriptDir + "storedVariables");
91 91
         try (FileOutputStream fos = new FileOutputStream(savedVariables)) {
92 92
             globalVariables.store(fos, "# DMDirc Script Plugin savedVariables");
93 93
         } catch (IOException e) {
94
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, e,"Error reading savedVariables to '"
94
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, e,"Error reading savedVariables to '"
95 95
                     + savedVariables.getPath() + "': " + e.getMessage(), ""));
96 96
         }
97 97
     }
98 98
 
99
-    @Subscribe
99
+    @Handler
100 100
     public void handlePluginLoadEvent(final DMDircEvent event) throws ReflectiveOperationException {
101 101
         if (event instanceof PluginLoadedEvent || event instanceof PluginUnloadedEvent) {
102 102
             return;

+ 2
- 3
src/com/dmdirc/addons/serverlists/ServerList.java Ver arquivo

@@ -33,9 +33,8 @@ import com.dmdirc.interfaces.config.IdentityController;
33 33
 import com.dmdirc.interfaces.config.IdentityFactory;
34 34
 import com.dmdirc.plugins.PluginManager;
35 35
 
36
-import com.google.common.eventbus.EventBus;
36
+import net.engio.mbassy.bus.MBassador;
37 37
 
38
-import java.io.IOException;
39 38
 import java.util.Collection;
40 39
 import java.util.Collections;
41 40
 import java.util.HashMap;
@@ -75,7 +74,7 @@ public class ServerList implements ConfigProviderListener {
75 74
             final ServerManager serverManager,
76 75
             final IdentityController identityController,
77 76
             final IdentityFactory identityFactory,
78
-            final EventBus eventBus) {
77
+            final MBassador eventBus) {
79 78
         this.serverManager = serverManager;
80 79
         this.identityController = identityController;
81 80
         this.identityFactory = identityFactory;

+ 3
- 3
src/com/dmdirc/addons/serverlists/service/ServerListServiceProvider.java Ver arquivo

@@ -33,7 +33,7 @@ import com.dmdirc.plugins.PluginManager;
33 33
 import com.dmdirc.plugins.Service;
34 34
 import com.dmdirc.plugins.ServiceProvider;
35 35
 
36
-import com.google.common.eventbus.EventBus;
36
+import net.engio.mbassy.bus.MBassador;
37 37
 
38 38
 import java.net.URI;
39 39
 import java.util.Arrays;
@@ -54,7 +54,7 @@ public class ServerListServiceProvider implements ServiceProvider {
54 54
     /** Plugin Manager */
55 55
     private final PluginManager pluginManager;
56 56
     /** The event bus to post errors to. */
57
-    private final EventBus eventBus;
57
+    private final MBassador eventBus;
58 58
 
59 59
     /**
60 60
      * Creates a new server list service provider.
@@ -64,7 +64,7 @@ public class ServerListServiceProvider implements ServiceProvider {
64 64
      * @param eventBus      The event bus to post errors to
65 65
      */
66 66
     public ServerListServiceProvider(final PluginManager pluginManager, final ServerList serverList,
67
-            final EventBus eventBus) {
67
+            final MBassador eventBus) {
68 68
         this.serverList = serverList;
69 69
         this.pluginManager = pluginManager;
70 70
         this.eventBus = eventBus;

+ 8
- 8
src/com/dmdirc/addons/systray/SystrayManager.java Ver arquivo

@@ -30,9 +30,6 @@ import com.dmdirc.plugins.PluginDomain;
30 30
 import com.dmdirc.ui.IconManager;
31 31
 import com.dmdirc.ui.messages.Styliser;
32 32
 
33
-import com.google.common.eventbus.EventBus;
34
-import com.google.common.eventbus.Subscribe;
35
-
36 33
 import java.awt.AWTException;
37 34
 import java.awt.Frame;
38 35
 import java.awt.MenuItem;
@@ -46,6 +43,9 @@ import java.awt.event.MouseListener;
46 43
 
47 44
 import javax.inject.Inject;
48 45
 
46
+import net.engio.mbassy.bus.MBassador;
47
+import net.engio.mbassy.listener.Handler;
48
+
49 49
 public class SystrayManager implements ActionListener, MouseListener {
50 50
 
51 51
     /** Main frame instance. */
@@ -57,7 +57,7 @@ public class SystrayManager implements ActionListener, MouseListener {
57 57
     /** Icon manager to get images from. */
58 58
     private final IconManager iconManager;
59 59
     /** The event bus to listen to events on. */
60
-    private final EventBus eventBus;
60
+    private final MBassador eventBus;
61 61
     /** The tray icon we're currently using. */
62 62
     private TrayIcon icon;
63 63
 
@@ -67,7 +67,7 @@ public class SystrayManager implements ActionListener, MouseListener {
67 67
             @PluginDomain(SystrayPlugin.class) final String domain,
68 68
             final MainFrame mainFrame,
69 69
             @GlobalConfig final IconManager iconManager,
70
-            final EventBus eventBus) {
70
+            final MBassador eventBus) {
71 71
         this.globalConfig = globalConfig;
72 72
         this.domain = domain;
73 73
         this.mainFrame = mainFrame;
@@ -92,7 +92,7 @@ public class SystrayManager implements ActionListener, MouseListener {
92 92
 
93 93
         try {
94 94
             SystemTray.getSystemTray().add(icon);
95
-            eventBus.register(this);
95
+            eventBus.subscribe(this);
96 96
         } catch (AWTException ex) {
97 97
             throw new IllegalStateException("Unable to load plugin", ex);
98 98
         }
@@ -100,7 +100,7 @@ public class SystrayManager implements ActionListener, MouseListener {
100 100
 
101 101
     public void unload() {
102 102
         SystemTray.getSystemTray().remove(icon);
103
-        eventBus.unregister(this);
103
+        eventBus.unsubscribe(this);
104 104
         icon = null;
105 105
     }
106 106
 
@@ -151,7 +151,7 @@ public class SystrayManager implements ActionListener, MouseListener {
151 151
         }
152 152
     }
153 153
 
154
-    @Subscribe
154
+    @Handler
155 155
     public void handleClientMinimised(final ClientMinimisedEvent event) {
156 156
         if (globalConfig.getOptionBool(domain, "autominimise")) {
157 157
             mainFrame.setVisible(false);

+ 3
- 3
src/com/dmdirc/addons/time/TimedCommand.java Ver arquivo

@@ -27,7 +27,7 @@ import com.dmdirc.commandparser.parsers.CommandParser;
27 27
 import com.dmdirc.commandparser.parsers.GlobalCommandParser;
28 28
 import com.dmdirc.interfaces.CommandController;
29 29
 
30
-import com.google.common.eventbus.EventBus;
30
+import net.engio.mbassy.bus.MBassador;
31 31
 
32 32
 import java.util.Timer;
33 33
 import java.util.TimerTask;
@@ -52,7 +52,7 @@ public class TimedCommand extends TimerTask {
52 52
     /** The command controller to use when executing global commands. */
53 53
     private final CommandController commandController;
54 54
     /** Event bus to post events on. */
55
-    private final EventBus eventBus;
55
+    private final MBassador eventBus;
56 56
 
57 57
     /**
58 58
      * Creates a new instance of TimedCommand.
@@ -74,7 +74,7 @@ public class TimedCommand extends TimerTask {
74 74
             final int delay,
75 75
             final String command,
76 76
             final FrameContainer origin,
77
-            final EventBus eventBus) {
77
+            final MBassador eventBus) {
78 78
         this.commandController = commandController;
79 79
         this.timerKey = timerKey;
80 80
         this.repetitions = repetitions;

+ 3
- 3
src/com/dmdirc/addons/time/TimerManager.java Ver arquivo

@@ -26,7 +26,7 @@ import com.dmdirc.FrameContainer;
26 26
 import com.dmdirc.interfaces.ActionController;
27 27
 import com.dmdirc.interfaces.CommandController;
28 28
 
29
-import com.google.common.eventbus.EventBus;
29
+import net.engio.mbassy.bus.MBassador;
30 30
 
31 31
 import java.util.Calendar;
32 32
 import java.util.HashMap;
@@ -50,7 +50,7 @@ public class TimerManager {
50 50
     /** Action controller. */
51 51
     private final ActionController actionController;
52 52
     /** Event bus to post events on . */
53
-    private final EventBus eventBus;
53
+    private final MBassador eventBus;
54 54
     /** Have we registered our types already? */
55 55
     private static boolean registered;
56 56
     /** The timer to use for scheduling. */
@@ -59,7 +59,7 @@ public class TimerManager {
59 59
     @Inject
60 60
     public TimerManager(final CommandController commandController,
61 61
             final ActionController actionController,
62
-            final EventBus eventBus) {
62
+            final MBassador eventBus) {
63 63
         this.commandController = commandController;
64 64
         this.actionController = actionController;
65 65
         this.eventBus = eventBus;

+ 9
- 9
src/com/dmdirc/addons/ui_swing/Apple.java Ver arquivo

@@ -32,9 +32,6 @@ import com.dmdirc.logger.ErrorLevel;
32 32
 import com.dmdirc.util.InvalidURIException;
33 33
 import com.dmdirc.util.URIParser;
34 34
 
35
-import com.google.common.eventbus.EventBus;
36
-import com.google.common.eventbus.Subscribe;
37
-
38 35
 import java.awt.Image;
39 36
 import java.awt.PopupMenu;
40 37
 import java.awt.event.ActionEvent;
@@ -54,6 +51,9 @@ import javax.swing.JMenuBar;
54 51
 import javax.swing.JMenuItem;
55 52
 import javax.swing.UIManager;
56 53
 
54
+import net.engio.mbassy.bus.MBassador;
55
+import net.engio.mbassy.listener.Handler;
56
+
57 57
 /**
58 58
  * Integrate DMDirc with OS X better.
59 59
  */
@@ -75,7 +75,7 @@ public class Apple implements InvocationHandler {
75 75
     /** The server manager to use to connect to URLs. */
76 76
     private final ServerManager serverManager;
77 77
     /** Event bus. */
78
-    private final EventBus eventBus;
78
+    private final MBassador eventBus;
79 79
 
80 80
     /**
81 81
      * Creates a new instance of {@link Apple}.
@@ -91,7 +91,7 @@ public class Apple implements InvocationHandler {
91 91
     public Apple(
92 92
             @GlobalConfig final AggregateConfigProvider configManager,
93 93
             final ServerManager serverManager,
94
-            final EventBus eventBus) {
94
+            final MBassador eventBus) {
95 95
         this.configManager = configManager;
96 96
         this.serverManager = serverManager;
97 97
         this.eventBus = eventBus;
@@ -102,9 +102,9 @@ public class Apple implements InvocationHandler {
102 102
             try {
103 103
                 System.loadLibrary("DMDirc-Apple"); // NOPMD
104 104
                 registerOpenURLCallback();
105
-                eventBus.register(this);
105
+                eventBus.subscribe(this);
106 106
             } catch (UnsatisfiedLinkError ule) {
107
-                eventBus.post(new UserErrorEvent(ErrorLevel.MEDIUM,
107
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.MEDIUM,
108 108
                         ule, "Unable to load JNI library", ""));
109 109
             }
110 110
         }
@@ -136,7 +136,7 @@ public class Apple implements InvocationHandler {
136 136
                     : classes);
137 137
             return method.invoke(obj, objects == null ? new Object[0] : objects);
138 138
         } catch (ReflectiveOperationException ex) {
139
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex, "Unable to find OS X classes.", ""));
139
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex, "Unable to find OS X classes.", ""));
140 140
         }
141 141
 
142 142
         return null;
@@ -444,7 +444,7 @@ public class Apple implements InvocationHandler {
444 444
      *
445 445
      * @param event The event describing the client opening.
446 446
      */
447
-    @Subscribe
447
+    @Handler
448 448
     public void handleClientOpened(final ClientOpenedEvent event) {
449 449
         synchronized (addresses) {
450 450
             clientOpened = true;

+ 6
- 6
src/com/dmdirc/addons/ui_swing/DMDircEventQueue.java Ver arquivo

@@ -28,8 +28,6 @@ import com.dmdirc.addons.ui_swing.actions.PasteAction;
28 28
 import com.dmdirc.addons.ui_swing.events.SwingWindowEvent;
29 29
 import com.dmdirc.events.ClientKeyPressedEvent;
30 30
 
31
-import com.google.common.eventbus.EventBus;
32
-
33 31
 import java.awt.AWTEvent;
34 32
 import java.awt.Component;
35 33
 import java.awt.EventQueue;
@@ -47,6 +45,8 @@ import javax.swing.MenuSelectionManager;
47 45
 import javax.swing.SwingUtilities;
48 46
 import javax.swing.text.JTextComponent;
49 47
 
48
+import net.engio.mbassy.bus.MBassador;
49
+
50 50
 /**
51 51
  * Custom event queue to add common functionality to certain components.
52 52
  */
@@ -54,12 +54,12 @@ import javax.swing.text.JTextComponent;
54 54
 public class DMDircEventQueue extends EventQueue {
55 55
 
56 56
     /** Event bus to dispatch events to. */
57
-    private final EventBus eventBus;
57
+    private final MBassador eventBus;
58 58
     /** Clipboard to copy and paste from. */
59 59
     private final Clipboard clipboard;
60 60
 
61 61
     @Inject
62
-    public DMDircEventQueue(final EventBus eventBus, final Clipboard clipboard) {
62
+    public DMDircEventQueue(final MBassador eventBus, final Clipboard clipboard) {
63 63
         this.eventBus = eventBus;
64 64
         this.clipboard = clipboard;
65 65
     }
@@ -74,7 +74,7 @@ public class DMDircEventQueue extends EventQueue {
74 74
         } else if (event instanceof KeyEvent) {
75 75
             handleKeyEvent((KeyEvent) event);
76 76
         } else if (event instanceof WindowEvent) {
77
-            eventBus.post(new SwingWindowEvent((WindowEvent) event));
77
+            eventBus.publish(new SwingWindowEvent((WindowEvent) event));
78 78
         }
79 79
     }
80 80
 
@@ -102,7 +102,7 @@ public class DMDircEventQueue extends EventQueue {
102 102
      * @param ke Key event
103 103
      */
104 104
     private void handleKeyEvent(final KeyEvent ke) {
105
-        eventBus.post(new ClientKeyPressedEvent(
105
+        eventBus.publishAsync(new ClientKeyPressedEvent(
106 106
                 KeyStroke.getKeyStroke(ke.getKeyChar(), ke.getModifiers())));
107 107
     }
108 108
 

+ 12
- 12
src/com/dmdirc/addons/ui_swing/MainFrame.java Ver arquivo

@@ -50,9 +50,6 @@ import com.dmdirc.ui.IconManager;
50 50
 import com.dmdirc.util.collections.ListenerList;
51 51
 import com.dmdirc.util.collections.QueuedLinkedHashSet;
52 52
 
53
-import com.google.common.eventbus.EventBus;
54
-import com.google.common.eventbus.Subscribe;
55
-
56 53
 import java.awt.Dimension;
57 54
 import java.awt.event.WindowEvent;
58 55
 import java.awt.event.WindowFocusListener;
@@ -68,6 +65,9 @@ import javax.swing.WindowConstants;
68 65
 
69 66
 import net.miginfocom.swing.MigLayout;
70 67
 
68
+import net.engio.mbassy.bus.MBassador;
69
+import net.engio.mbassy.listener.Handler;
70
+
71 71
 import static com.dmdirc.addons.ui_swing.SwingPreconditions.checkOnEDT;
72 72
 
73 73
 /**
@@ -99,7 +99,7 @@ public class MainFrame extends JFrame implements WindowListener,
99 99
     /** Provider of frame managers. */
100 100
     private final Provider<FrameManager> frameManagerProvider;
101 101
     /** The bus to despatch events on. */
102
-    private final EventBus eventBus;
102
+    private final MBassador eventBus;
103 103
     /** The main application icon. */
104 104
     private ImageIcon imageIcon;
105 105
     /** The frame manager that's being used. */
@@ -143,7 +143,7 @@ public class MainFrame extends JFrame implements WindowListener,
143 143
             final Provider<QuitWorker> quitWorker,
144 144
             final IconManager iconManager,
145 145
             final Provider<FrameManager> frameManagerProvider,
146
-            final EventBus eventBus) {
146
+            final MBassador eventBus) {
147 147
         checkOnEDT();
148 148
         this.apple = apple;
149 149
         this.lifecycleController = lifecycleController;
@@ -176,12 +176,12 @@ public class MainFrame extends JFrame implements WindowListener,
176 176
 
177 177
                 @Override
178 178
                 public void windowGainedFocus(final WindowEvent e) {
179
-                    eventBus.post(new ClientFocusGainedEvent());
179
+                    eventBus.publishAsync(new ClientFocusGainedEvent());
180 180
                 }
181 181
 
182 182
                 @Override
183 183
                 public void windowLostFocus(final WindowEvent e) {
184
-                    eventBus.post(new ClientFocusLostEvent());
184
+                    eventBus.publishAsync(new ClientFocusLostEvent());
185 185
                 }
186 186
             });
187 187
 
@@ -260,7 +260,7 @@ public class MainFrame extends JFrame implements WindowListener,
260 260
 
261 261
     @Override
262 262
     public void windowIconified(final WindowEvent windowEvent) {
263
-        eventBus.post(new ClientMinimisedEvent());
263
+        eventBus.publishAsync(new ClientMinimisedEvent());
264 264
     }
265 265
 
266 266
     /**
@@ -270,7 +270,7 @@ public class MainFrame extends JFrame implements WindowListener,
270 270
      */
271 271
     @Override
272 272
     public void windowDeiconified(final WindowEvent windowEvent) {
273
-        eventBus.post(new ClientUnminimisedEvent());
273
+        eventBus.publishAsync(new ClientUnminimisedEvent());
274 274
     }
275 275
 
276 276
     /**
@@ -587,7 +587,7 @@ public class MainFrame extends JFrame implements WindowListener,
587 587
         listeners.remove(SelectionListener.class, listener);
588 588
     }
589 589
 
590
-    @Subscribe
590
+    @Handler
591 591
     public void doWindowAdded(final SwingWindowAddedEvent event) {
592 592
         final TextFrame window = event.getChildWindow();
593 593
         if (activeFrame == null) {
@@ -595,7 +595,7 @@ public class MainFrame extends JFrame implements WindowListener,
595 595
         }
596 596
     }
597 597
 
598
-    @Subscribe
598
+    @Handler
599 599
     public void doWindowDeleted(final SwingWindowDeletedEvent event) {
600 600
         final TextFrame window = event.getChildWindow();
601 601
         if (window == null) {
@@ -621,7 +621,7 @@ public class MainFrame extends JFrame implements WindowListener,
621 621
         }
622 622
     }
623 623
 
624
-    @Subscribe
624
+    @Handler
625 625
     public void titleChanged(final FrameTitleChangedEvent event) {
626 626
         if (activeFrame != null && activeFrame.getContainer().equals(event.getContainer())) {
627 627
             setTitle(event.getTitle());

+ 3
- 3
src/com/dmdirc/addons/ui_swing/PrefsComponentFactory.java Ver arquivo

@@ -39,7 +39,7 @@ import com.dmdirc.util.validators.NumericalValidator;
39 39
 import com.dmdirc.util.validators.OptionalValidator;
40 40
 import com.dmdirc.util.validators.Validator;
41 41
 
42
-import com.google.common.eventbus.EventBus;
42
+import net.engio.mbassy.bus.MBassador;
43 43
 
44 44
 import java.awt.Dimension;
45 45
 import java.awt.Font;
@@ -78,7 +78,7 @@ public final class PrefsComponentFactory {
78 78
     /** The colour manager to use for colour preferences. */
79 79
     private final ColourManager colourManager;
80 80
     /** The global event bus. */
81
-    private final EventBus eventBus;
81
+    private final MBassador eventBus;
82 82
 
83 83
     /**
84 84
      * Creates a new instance of PrefsComponentFactory.
@@ -89,7 +89,7 @@ public final class PrefsComponentFactory {
89 89
      */
90 90
     @Inject
91 91
     public PrefsComponentFactory(
92
-            final EventBus eventBus,
92
+            final MBassador eventBus,
93 93
             @GlobalConfig final IconManager iconManager,
94 94
             final ColourManager colourManager) {
95 95
         this.iconManager = iconManager;

+ 5
- 5
src/com/dmdirc/addons/ui_swing/QuitWorker.java Ver arquivo

@@ -28,11 +28,11 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
28 28
 import com.dmdirc.interfaces.config.ConfigProvider;
29 29
 import com.dmdirc.interfaces.config.IdentityController;
30 30
 
31
-import com.google.common.eventbus.EventBus;
32
-
33 31
 import javax.inject.Inject;
34 32
 import javax.swing.SwingWorker;
35 33
 
34
+import net.engio.mbassy.bus.MBassador;
35
+
36 36
 /**
37 37
  * Worker which handles quitting the application on behalf of a {@link MainFrame}.
38 38
  */
@@ -47,7 +47,7 @@ public class QuitWorker extends SwingWorker<Void, Void> {
47 47
     /** The main frame to interact with. */
48 48
     private final MainFrame mainFrame;
49 49
     /** Bus to dispatch events on. */
50
-    private final EventBus eventBus;
50
+    private final MBassador eventBus;
51 51
 
52 52
     /**
53 53
      * Creates a new {@link QuitWorker}.
@@ -62,7 +62,7 @@ public class QuitWorker extends SwingWorker<Void, Void> {
62 62
             final IdentityController identityController,
63 63
             final ServerManager serverManager,
64 64
             final MainFrame mainFrame,
65
-            final EventBus eventBus) {
65
+            final MBassador eventBus) {
66 66
         this.globalIdentity = identityController.getUserSettings();
67 67
         this.globalConfig = identityController.getGlobalConfiguration();
68 68
         this.serverManager = serverManager;
@@ -72,7 +72,7 @@ public class QuitWorker extends SwingWorker<Void, Void> {
72 72
 
73 73
     @Override
74 74
     protected Void doInBackground() {
75
-        eventBus.post(new ClientClosingEvent());
75
+        eventBus.publishAsync(new ClientClosingEvent());
76 76
         serverManager.closeAll(globalConfig.getOption("general", "closemessage"));
77 77
         globalIdentity.setOption("ui", "frameManagerSize",
78 78
                 String.valueOf(mainFrame.getFrameManagerSize()));

+ 4
- 4
src/com/dmdirc/addons/ui_swing/SwingLinkHandler.java Ver arquivo

@@ -31,7 +31,7 @@ import com.dmdirc.interfaces.Connection;
31 31
 import com.dmdirc.parser.common.ChannelJoinRequest;
32 32
 import com.dmdirc.ui.core.util.URLHandler;
33 33
 
34
-import com.google.common.eventbus.Subscribe;
34
+import net.engio.mbassy.listener.Handler;
35 35
 
36 36
 import javax.inject.Inject;
37 37
 import javax.inject.Singleton;
@@ -56,7 +56,7 @@ public class SwingLinkHandler {
56 56
         this.windowFactory = windowFactory;
57 57
     }
58 58
 
59
-    @Subscribe
59
+    @Handler
60 60
     public void handleChannelClick(final LinkChannelClickedEvent event) {
61 61
         final FrameContainer container = event.getWindow().getContainer();
62 62
         final Connection connection = container.getConnection();
@@ -65,12 +65,12 @@ public class SwingLinkHandler {
65 65
         }
66 66
     }
67 67
 
68
-    @Subscribe
68
+    @Handler
69 69
     public void handleLinkClick(final LinkUrlClickedEvent event) {
70 70
         urlHandler.launchApp(event.getTarget());
71 71
     }
72 72
 
73
-    @Subscribe
73
+    @Handler
74 74
     public void handleNicknameClick(final LinkNicknameClickedEvent event) {
75 75
         final FrameContainer container = event.getWindow().getContainer();
76 76
         final Connection connection = container.getConnection();

+ 20
- 20
src/com/dmdirc/addons/ui_swing/SwingManager.java Ver arquivo

@@ -41,9 +41,6 @@ import com.dmdirc.logger.ErrorManager;
41 41
 import com.dmdirc.ui.WindowManager;
42 42
 import com.dmdirc.ui.core.components.StatusBarManager;
43 43
 
44
-import com.google.common.eventbus.EventBus;
45
-import com.google.common.eventbus.Subscribe;
46
-
47 44
 import java.awt.Window;
48 45
 
49 46
 import javax.inject.Inject;
@@ -51,6 +48,9 @@ import javax.inject.Provider;
51 48
 import javax.inject.Singleton;
52 49
 import javax.swing.SwingUtilities;
53 50
 
51
+import net.engio.mbassy.bus.MBassador;
52
+import net.engio.mbassy.listener.Handler;
53
+
54 54
 /**
55 55
  * Manages swing components and dependencies.
56 56
  */
@@ -76,9 +76,9 @@ public class SwingManager {
76 76
     /** Link handler for swing links. */
77 77
     private final SwingLinkHandler linkHandler;
78 78
     /** Bus to listen on for events. */
79
-    private final EventBus eventBus;
79
+    private final MBassador eventBus;
80 80
     /** The event bus for this plugin. */
81
-    private final EventBus swingEventBus;
81
+    private final MBassador swingEventBus;
82 82
     /** The provider to use to create tree-based frame managers. */
83 83
     private final TreeFrameManagerProvider treeProvider;
84 84
     /** The provider to use to create button-based frame managers. */
@@ -128,8 +128,8 @@ public class SwingManager {
128 128
             final Provider<FeedbackNag> feedbackNagProvider,
129 129
             final URLDialogFactory urlDialogFactory,
130 130
             final SwingLinkHandler linkHandler,
131
-            final EventBus eventBus,
132
-            @SwingEventBus final EventBus swingEventBus,
131
+            final MBassador eventBus,
132
+            @SwingEventBus final MBassador swingEventBus,
133 133
             final TreeFrameManagerProvider treeProvider,
134 134
             final ButtonBarProvider buttonProvider,
135 135
             final Provider<SwingWindowManager> swingWindowManager,
@@ -165,14 +165,14 @@ public class SwingManager {
165 165
         this.mainFrame.setWindowManager(ctrlTabManager);
166 166
         this.mainFrame.setStatusBar(statusBar.get());
167 167
         this.mainFrame.initComponents();
168
-        swingEventBus.register(mainFrame);
169
-        swingEventBus.register(ctrlTabManager);
168
+        swingEventBus.subscribe(mainFrame);
169
+        swingEventBus.subscribe(ctrlTabManager);
170 170
 
171 171
         windowManager.addListenerAndSync(windowFactory.get());
172 172
         statusBarManager.registerStatusBar(statusBar.get());
173
-        eventBus.register(this);
174
-        eventBus.register(mainFrame);
175
-        eventBus.register(linkHandler);
173
+        eventBus.subscribe(this);
174
+        eventBus.subscribe(mainFrame);
175
+        eventBus.subscribe(linkHandler);
176 176
         SwingUtilities.invokeLater(new Runnable() {
177 177
 
178 178
             @Override
@@ -198,13 +198,13 @@ public class SwingManager {
198 198
                 errorListDialogProvider.get().dispose();
199 199
             }
200 200
         });
201
-        swingEventBus.unregister(mainFrame);
202
-        swingEventBus.unregister(ctrlTabManager);
201
+        swingEventBus.unsubscribe(mainFrame);
202
+        swingEventBus.unsubscribe(ctrlTabManager);
203 203
         mainFrame.dispose();
204 204
         statusBarManager.unregisterStatusBar(statusBar.get());
205
-        eventBus.unregister(this);
206
-        eventBus.unregister(mainFrame);
207
-        eventBus.unregister(linkHandler);
205
+        eventBus.unsubscribe(this);
206
+        eventBus.unsubscribe(mainFrame);
207
+        eventBus.unsubscribe(linkHandler);
208 208
         uiInitialiser.unload();
209 209
     }
210 210
 
@@ -228,7 +228,7 @@ public class SwingManager {
228 228
         return buttonProvider;
229 229
     }
230 230
 
231
-    @Subscribe
231
+    @Handler
232 232
     public void showFirstRunWizard(final FirstRunEvent event) {
233 233
         if (!event.isHandled()) {
234 234
             firstRunExecutor.get().showWizardAndWait();
@@ -236,7 +236,7 @@ public class SwingManager {
236 236
         }
237 237
     }
238 238
 
239
-    @Subscribe
239
+    @Handler
240 240
     public void showURLDialog(final UnknownURLEvent event) {
241 241
         if (!event.isHandled()) {
242 242
             event.setHandled(true);
@@ -250,7 +250,7 @@ public class SwingManager {
250 250
         }
251 251
     }
252 252
 
253
-    @Subscribe
253
+    @Handler
254 254
     public void showFeedbackNag(final FeedbackNagEvent event) {
255 255
         UIUtilities.invokeLater(new Runnable() {
256 256
 

+ 5
- 5
src/com/dmdirc/addons/ui_swing/SwingUIInitialiser.java Ver arquivo

@@ -30,8 +30,6 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
30 30
 import com.dmdirc.interfaces.config.ConfigProvider;
31 31
 import com.dmdirc.logger.ErrorLevel;
32 32
 
33
-import com.google.common.eventbus.EventBus;
34
-
35 33
 import java.awt.Font;
36 34
 import java.awt.KeyboardFocusManager;
37 35
 import java.awt.Toolkit;
@@ -42,6 +40,8 @@ import javax.swing.UnsupportedLookAndFeelException;
42 40
 
43 41
 import net.miginfocom.layout.PlatformDefaults;
44 42
 
43
+import net.engio.mbassy.bus.MBassador;
44
+
45 45
 /**
46 46
  * Initialises swing and system UI settings.
47 47
  */
@@ -52,10 +52,10 @@ public class SwingUIInitialiser {
52 52
     private final ConfigProvider addonConfig;
53 53
     private final DialogKeyListener dialogKeyListener;
54 54
     private final DMDircEventQueue eventQueue;
55
-    private final EventBus eventBus;
55
+    private final MBassador eventBus;
56 56
 
57 57
     @Inject
58
-    public SwingUIInitialiser(final EventBus eventBus, final Apple apple,
58
+    public SwingUIInitialiser(final MBassador eventBus, final Apple apple,
59 59
             @GlobalConfig final AggregateConfigProvider globalConfig,
60 60
             @AddonConfig final ConfigProvider addonConfig,
61 61
             final DialogKeyListener dialogKeyListener,
@@ -126,7 +126,7 @@ public class SwingUIInitialiser {
126 126
                             Font.PLAIN, 12));
127 127
                 } catch (UnsupportedOperationException | UnsupportedLookAndFeelException |
128 128
                         IllegalAccessException | InstantiationException | ClassNotFoundException ex) {
129
-                    eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex,
129
+                    eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex,
130 130
                             "Unable to set UI Settings", ""));
131 131
                 }
132 132
 

+ 9
- 8
src/com/dmdirc/addons/ui_swing/SwingWindowFactory.java Ver arquivo

@@ -37,7 +37,6 @@ import com.dmdirc.interfaces.ui.FrameListener;
37 37
 import com.dmdirc.logger.ErrorLevel;
38 38
 
39 39
 import com.google.common.base.Optional;
40
-import com.google.common.eventbus.EventBus;
41 40
 
42 41
 import java.util.Collection;
43 42
 import java.util.HashMap;
@@ -49,6 +48,8 @@ import javax.inject.Inject;
49 48
 import javax.inject.Provider;
50 49
 import javax.inject.Singleton;
51 50
 
51
+import net.engio.mbassy.bus.MBassador;
52
+
52 53
 /**
53 54
  * Handles creation of windows in the Swing UI.
54 55
  *
@@ -64,9 +65,9 @@ public class SwingWindowFactory implements FrameListener {
64 65
     /** Active window manager. */
65 66
     private final Provider<ActiveFrameManager> activeFrameManager;
66 67
     /** The event bus to post errors to. */
67
-    private final EventBus eventBus;
68
+    private final MBassador eventBus;
68 69
     /** The swing event bus. */
69
-    private final EventBus swingEventBus;
70
+    private final MBassador swingEventBus;
70 71
 
71 72
     /**
72 73
      * Creates a new window factory for the specified controller.
@@ -86,8 +87,8 @@ public class SwingWindowFactory implements FrameListener {
86 87
             final CustomInputFrameFactory customInputFrameFactory,
87 88
             final ServerFrameFactory serverFrameFactory,
88 89
             final ChannelFrameFactory channelFrameFactory,
89
-            final EventBus eventBus,
90
-            @SwingEventBus final EventBus swingEventBus) {
90
+            final MBassador eventBus,
91
+            @SwingEventBus final MBassador swingEventBus) {
91 92
         this.activeFrameManager = activeFrameManager;
92 93
         this.eventBus = eventBus;
93 94
         this.swingEventBus = swingEventBus;
@@ -124,7 +125,7 @@ public class SwingWindowFactory implements FrameListener {
124 125
      */
125 126
     protected TextFrame doAddWindow(final FrameContainer window) {
126 127
         if (!implementations.containsKey(window.getComponents())) {
127
-            eventBus.post(new UserErrorEvent(ErrorLevel.HIGH, null,
128
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.HIGH, null,
128 129
                     "Unable to create window: Unknown type.", ""));
129 130
             return null;
130 131
         }
@@ -166,7 +167,7 @@ public class SwingWindowFactory implements FrameListener {
166 167
                 if (childWindow == null) {
167 168
                     return;
168 169
                 }
169
-                swingEventBus.post(new SwingWindowAddedEvent(
170
+                swingEventBus.publish(new SwingWindowAddedEvent(
170 171
                         Optional.fromNullable(parentWindow), childWindow));
171 172
 
172 173
                 if (focus) {
@@ -184,7 +185,7 @@ public class SwingWindowFactory implements FrameListener {
184 185
             public void run() {
185 186
                 final TextFrame parentWindow = getSwingWindow(parent);
186 187
                 final TextFrame childWindow = getSwingWindow(window);
187
-                swingEventBus.post(new SwingWindowDeletedEvent(
188
+                swingEventBus.publish(new SwingWindowDeletedEvent(
188 189
                         Optional.fromNullable(parentWindow), childWindow));
189 190
 
190 191
                 windows.remove(window);

+ 2
- 2
src/com/dmdirc/addons/ui_swing/UIUtilities.java Ver arquivo

@@ -27,7 +27,7 @@ import com.dmdirc.addons.ui_swing.actions.UndoAction;
27 27
 import com.dmdirc.addons.ui_swing.components.DMDircUndoableEditListener;
28 28
 import com.dmdirc.ui.Colour;
29 29
 
30
-import com.google.common.eventbus.EventBus;
30
+import net.engio.mbassy.bus.MBassador;
31 31
 
32 32
 import java.awt.Color;
33 33
 import java.awt.Font;
@@ -91,7 +91,7 @@ public final class UIUtilities {
91 91
      * @param eventBus  The event bus to post errors to
92 92
      * @param component The text component to add an undo manager to
93 93
      */
94
-    public static void addUndoManager(final EventBus eventBus, final JTextComponent component) {
94
+    public static void addUndoManager(final MBassador eventBus, final JTextComponent component) {
95 95
         final UndoManager undoManager = new UndoManager();
96 96
 
97 97
         // Listen for undo and redo events

+ 5
- 5
src/com/dmdirc/addons/ui_swing/actions/RedoAction.java Ver arquivo

@@ -25,14 +25,14 @@ package com.dmdirc.addons.ui_swing.actions;
25 25
 import com.dmdirc.events.UserErrorEvent;
26 26
 import com.dmdirc.logger.ErrorLevel;
27 27
 
28
-import com.google.common.eventbus.EventBus;
29
-
30 28
 import java.awt.event.ActionEvent;
31 29
 
32 30
 import javax.swing.AbstractAction;
33 31
 import javax.swing.undo.CannotUndoException;
34 32
 import javax.swing.undo.UndoManager;
35 33
 
34
+import net.engio.mbassy.bus.MBassador;
35
+
36 36
 /**
37 37
  * Handles redo's on text components.
38 38
  */
@@ -43,7 +43,7 @@ public final class RedoAction extends AbstractAction {
43 43
     /** Undo manager. */
44 44
     private final UndoManager undoManager;
45 45
     /** The event bus to post errors to. */
46
-    private final EventBus eventBus;
46
+    private final MBassador eventBus;
47 47
 
48 48
     /**
49 49
      * Creates a new instance of RedoAction.
@@ -51,7 +51,7 @@ public final class RedoAction extends AbstractAction {
51 51
      * @param eventBus    The event bus to post errors to
52 52
      * @param undoManager UndoManager to use for this redo action
53 53
      */
54
-    public RedoAction(final EventBus eventBus, final UndoManager undoManager) {
54
+    public RedoAction(final MBassador eventBus, final UndoManager undoManager) {
55 55
         super("Undo");
56 56
 
57 57
         this.undoManager = undoManager;
@@ -65,7 +65,7 @@ public final class RedoAction extends AbstractAction {
65 65
                 undoManager.redo();
66 66
             }
67 67
         } catch (CannotUndoException ex) {
68
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex, "Unable to redo", ""));
68
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex, "Unable to redo", ""));
69 69
         }
70 70
     }
71 71
 

+ 6
- 6
src/com/dmdirc/addons/ui_swing/actions/ReplacePasteAction.java Ver arquivo

@@ -25,8 +25,6 @@ package com.dmdirc.addons.ui_swing.actions;
25 25
 import com.dmdirc.events.UserErrorEvent;
26 26
 import com.dmdirc.logger.ErrorLevel;
27 27
 
28
-import com.google.common.eventbus.EventBus;
29
-
30 28
 import java.awt.datatransfer.Clipboard;
31 29
 import java.awt.datatransfer.DataFlavor;
32 30
 import java.awt.datatransfer.UnsupportedFlavorException;
@@ -36,6 +34,8 @@ import java.io.IOException;
36 34
 import javax.swing.AbstractAction;
37 35
 import javax.swing.text.JTextComponent;
38 36
 
37
+import net.engio.mbassy.bus.MBassador;
38
+
39 39
 /**
40 40
  * Paste action that replaces matching regexes.
41 41
  */
@@ -50,7 +50,7 @@ public final class ReplacePasteAction extends AbstractAction {
50 50
     /** Replacement string. */
51 51
     private final String replacementString;
52 52
     /** The event bus to post errors to. */
53
-    private final EventBus eventBus;
53
+    private final MBassador eventBus;
54 54
 
55 55
     /**
56 56
      * Creates a new instance of regex replacement paste action.
@@ -60,7 +60,7 @@ public final class ReplacePasteAction extends AbstractAction {
60 60
      * @param replacementRegex  Regex to match for replacement
61 61
      * @param replacementString Replacement string
62 62
      */
63
-    public ReplacePasteAction(final EventBus eventBus, final Clipboard clipboard,
63
+    public ReplacePasteAction(final MBassador eventBus, final Clipboard clipboard,
64 64
             final String replacementRegex, final String replacementString) {
65 65
         super("NoSpacesPasteAction");
66 66
 
@@ -85,10 +85,10 @@ public final class ReplacePasteAction extends AbstractAction {
85 85
                     ((String) clipboard.getData(DataFlavor.stringFlavor))
86 86
                             .replaceAll(replacementRegex, replacementString));
87 87
         } catch (IOException ex) {
88
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex,
88
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex,
89 89
                     "Unable to get clipboard contents: " + ex.getMessage(), ""));
90 90
         } catch (UnsupportedFlavorException ex) {
91
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex,
91
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex,
92 92
                     "Unable to get clipboard contents", ""));
93 93
         }
94 94
     }

+ 5
- 5
src/com/dmdirc/addons/ui_swing/actions/UndoAction.java Ver arquivo

@@ -25,14 +25,14 @@ package com.dmdirc.addons.ui_swing.actions;
25 25
 import com.dmdirc.events.UserErrorEvent;
26 26
 import com.dmdirc.logger.ErrorLevel;
27 27
 
28
-import com.google.common.eventbus.EventBus;
29
-
30 28
 import java.awt.event.ActionEvent;
31 29
 
32 30
 import javax.swing.AbstractAction;
33 31
 import javax.swing.undo.CannotUndoException;
34 32
 import javax.swing.undo.UndoManager;
35 33
 
34
+import net.engio.mbassy.bus.MBassador;
35
+
36 36
 /**
37 37
  * Handles undo's on text components.
38 38
  */
@@ -43,7 +43,7 @@ public final class UndoAction extends AbstractAction {
43 43
     /** Undo manager. */
44 44
     private final UndoManager undoManager;
45 45
     /** The event bus to post errors to. */
46
-    private final EventBus eventBus;
46
+    private final MBassador eventBus;
47 47
 
48 48
     /**
49 49
      * Creates a new instance of UndoAction.
@@ -51,7 +51,7 @@ public final class UndoAction extends AbstractAction {
51 51
      * @param eventBus    The event bus to post errors to
52 52
      * @param undoManager UndoManager to use for this redo action
53 53
      */
54
-    public UndoAction(final EventBus eventBus, final UndoManager undoManager) {
54
+    public UndoAction(final MBassador eventBus, final UndoManager undoManager) {
55 55
         super("Undo");
56 56
 
57 57
         this.undoManager = undoManager;
@@ -65,7 +65,7 @@ public final class UndoAction extends AbstractAction {
65 65
                 undoManager.undo();
66 66
             }
67 67
         } catch (CannotUndoException ex) {
68
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex, "Unable to undo", ""));
68
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex, "Unable to undo", ""));
69 69
         }
70 70
     }
71 71
 

+ 4
- 4
src/com/dmdirc/addons/ui_swing/components/FontPicker.java Ver arquivo

@@ -26,8 +26,6 @@ import com.dmdirc.addons.ui_swing.components.renderers.FontListCellRenderer;
26 26
 import com.dmdirc.events.UserErrorEvent;
27 27
 import com.dmdirc.logger.ErrorLevel;
28 28
 
29
-import com.google.common.eventbus.EventBus;
30
-
31 29
 import java.awt.Font;
32 30
 import java.awt.GraphicsEnvironment;
33 31
 import java.util.concurrent.ExecutionException;
@@ -36,6 +34,8 @@ import javax.swing.DefaultComboBoxModel;
36 34
 import javax.swing.JComboBox;
37 35
 import javax.swing.SwingUtilities;
38 36
 
37
+import net.engio.mbassy.bus.MBassador;
38
+
39 39
 /**
40 40
  * System font picking component.
41 41
  */
@@ -52,7 +52,7 @@ public class FontPicker extends JComboBox<Object> {
52 52
      * @param eventBus   The event bus to post errors to
53 53
      * @param fontFamily Font family
54 54
      */
55
-    public FontPicker(final EventBus eventBus, final String fontFamily) {
55
+    public FontPicker(final MBassador eventBus, final String fontFamily) {
56 56
         super(new DefaultComboBoxModel<>());
57 57
         this.fontFamily = fontFamily;
58 58
 
@@ -72,7 +72,7 @@ public class FontPicker extends JComboBox<Object> {
72 72
                 } catch (InterruptedException ex) {
73 73
                     //Ignore
74 74
                 } catch (ExecutionException ex) {
75
-                    eventBus.post(new UserErrorEvent(ErrorLevel.MEDIUM, ex, ex.getMessage(), ""));
75
+                    eventBus.publishAsync(new UserErrorEvent(ErrorLevel.MEDIUM, ex, ex.getMessage(), ""));
76 76
                 }
77 77
             }
78 78
         }.execute();

+ 5
- 5
src/com/dmdirc/addons/ui_swing/components/LoggingSwingWorker.java Ver arquivo

@@ -25,12 +25,12 @@ package com.dmdirc.addons.ui_swing.components;
25 25
 import com.dmdirc.events.UserErrorEvent;
26 26
 import com.dmdirc.logger.ErrorLevel;
27 27
 
28
-import com.google.common.eventbus.EventBus;
29
-
30 28
 import java.util.concurrent.ExecutionException;
31 29
 
32 30
 import javax.swing.SwingWorker;
33 31
 
32
+import net.engio.mbassy.bus.MBassador;
33
+
34 34
 /**
35 35
  * Logging swing worker.
36 36
  *
@@ -39,14 +39,14 @@ import javax.swing.SwingWorker;
39 39
  */
40 40
 public abstract class LoggingSwingWorker<T, V> extends SwingWorker<T, V> {
41 41
 
42
-    private final EventBus eventBus;
42
+    private final MBassador eventBus;
43 43
 
44 44
     /**
45 45
      * Creates a new logging swing worker.
46 46
      *
47 47
      * @param eventBus Event bus to post errors to.
48 48
      */
49
-    public LoggingSwingWorker(final EventBus eventBus) {
49
+    public LoggingSwingWorker(final MBassador eventBus) {
50 50
         this.eventBus = eventBus;
51 51
     }
52 52
 
@@ -60,7 +60,7 @@ public abstract class LoggingSwingWorker<T, V> extends SwingWorker<T, V> {
60 60
         } catch (InterruptedException ex) {
61 61
             //Ignore
62 62
         } catch (ExecutionException ex) {
63
-            eventBus.post(new UserErrorEvent(ErrorLevel.MEDIUM, ex, ex.getMessage(), ""));
63
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.MEDIUM, ex, ex.getMessage(), ""));
64 64
         }
65 65
     }
66 66
 

+ 7
- 7
src/com/dmdirc/addons/ui_swing/components/MDIBar.java Ver arquivo

@@ -35,9 +35,6 @@ import com.dmdirc.interfaces.config.ConfigChangeListener;
35 35
 import com.dmdirc.plugins.PluginDomain;
36 36
 import com.dmdirc.ui.IconManager;
37 37
 
38
-import com.google.common.eventbus.EventBus;
39
-import com.google.common.eventbus.Subscribe;
40
-
41 38
 import java.awt.event.ActionEvent;
42 39
 import java.awt.event.ActionListener;
43 40
 
@@ -48,6 +45,9 @@ import javax.swing.SwingUtilities;
48 45
 
49 46
 import net.miginfocom.swing.MigLayout;
50 47
 
48
+import net.engio.mbassy.bus.MBassador;
49
+import net.engio.mbassy.listener.Handler;
50
+
51 51
 /**
52 52
  * Provides an MDI style bar for closing frames.
53 53
  */
@@ -84,7 +84,7 @@ public class MDIBar extends JPanel implements SelectionListener, ActionListener,
84 84
             @GlobalConfig final IconManager iconManager,
85 85
             @PluginDomain(SwingController.class) final String domain,
86 86
             final ActiveFrameManager activeFrameManager,
87
-            @SwingEventBus final EventBus eventBus) {
87
+            @SwingEventBus final MBassador eventBus) {
88 88
         this.activeFrameManager = activeFrameManager;
89 89
         config = globalConfig;
90 90
         configDomain = domain;
@@ -96,7 +96,7 @@ public class MDIBar extends JPanel implements SelectionListener, ActionListener,
96 96
         setLayout(new MigLayout("hmax 17, ins 1 0 0 0, fill"));
97 97
         add(closeButton, "w 17!, h 17!, right");
98 98
 
99
-        eventBus.register(this);
99
+        eventBus.subscribe(this);
100 100
 
101 101
         activeFrameManager.addSelectionListener(this);
102 102
         closeButton.addActionListener(this);
@@ -123,12 +123,12 @@ public class MDIBar extends JPanel implements SelectionListener, ActionListener,
123 123
         });
124 124
     }
125 125
 
126
-    @Subscribe
126
+    @Handler
127 127
     public void windowAdded(final SwingWindowAddedEvent event) {
128 128
         check();
129 129
     }
130 130
 
131
-    @Subscribe
131
+    @Handler
132 132
     public void windowDeleted(final SwingWindowDeletedEvent event) {
133 133
         check();
134 134
     }

+ 2
- 2
src/com/dmdirc/addons/ui_swing/components/TopicBar.java Ver arquivo

@@ -40,7 +40,7 @@ import com.dmdirc.ui.messages.ColourManager;
40 40
 import com.dmdirc.ui.messages.Styliser;
41 41
 
42 42
 import com.google.common.base.Optional;
43
-import com.google.common.eventbus.EventBus;
43
+import net.engio.mbassy.bus.MBassador;
44 44
 
45 45
 import java.awt.Color;
46 46
 import java.awt.Window;
@@ -131,7 +131,7 @@ public class TopicBar extends JComponent implements ActionListener, ConfigChange
131 131
             final Channel channel,
132 132
             final ChannelFrame window,
133 133
             final IconManager iconManager,
134
-            final EventBus eventBus) {
134
+            final MBassador eventBus) {
135 135
         this.channel = channel;
136 136
         this.domain = domain;
137 137
         this.colourManager = colourManager;

+ 3
- 3
src/com/dmdirc/addons/ui_swing/components/TopicBarFactory.java Ver arquivo

@@ -33,7 +33,7 @@ import com.dmdirc.plugins.PluginManager;
33 33
 import com.dmdirc.ui.IconManager;
34 34
 import com.dmdirc.ui.messages.ColourManager;
35 35
 
36
-import com.google.common.eventbus.EventBus;
36
+import net.engio.mbassy.bus.MBassador;
37 37
 
38 38
 import java.awt.Window;
39 39
 import java.awt.datatransfer.Clipboard;
@@ -57,7 +57,7 @@ public class TopicBarFactory {
57 57
     private final PluginManager pluginManager;
58 58
     private final Clipboard clipboard;
59 59
     private final CommandController commandController;
60
-    private final EventBus eventBus;
60
+    private final MBassador eventBus;
61 61
 
62 62
     @Inject
63 63
     public TopicBarFactory(
@@ -68,7 +68,7 @@ public class TopicBarFactory {
68 68
             final PluginManager pluginManager,
69 69
             final Clipboard clipboard,
70 70
             final CommandController commandController,
71
-            final EventBus eventBus) {
71
+            final MBassador eventBus) {
72 72
         this.parentWindow = parentWindow;
73 73
         this.globalConfig = globalConfig;
74 74
         this.domain = domain;

+ 5
- 5
src/com/dmdirc/addons/ui_swing/components/addonbrowser/DataLoaderWorker.java Ver arquivo

@@ -38,8 +38,6 @@ import com.dmdirc.util.io.DownloadListener;
38 38
 import com.dmdirc.util.io.Downloader;
39 39
 import com.dmdirc.util.io.InvalidConfigFileException;
40 40
 
41
-import com.google.common.eventbus.EventBus;
42
-
43 41
 import java.io.IOException;
44 42
 import java.util.ArrayList;
45 43
 import java.util.Collection;
@@ -56,6 +54,8 @@ import javax.swing.text.StyleConstants;
56 54
 
57 55
 import net.miginfocom.swing.MigLayout;
58 56
 
57
+import net.engio.mbassy.bus.MBassador;
58
+
59 59
 /**
60 60
  * Loads the addon data feed into the addon browser.
61 61
  */
@@ -86,7 +86,7 @@ public class DataLoaderWorker
86 86
     /** Downloader to download files. */
87 87
     private final Downloader downloader;
88 88
     /** The event bus to post errors to. */
89
-    private final EventBus eventBus;
89
+    private final MBassador eventBus;
90 90
 
91 91
     /**
92 92
      * Creates a new data loader worker.
@@ -110,7 +110,7 @@ public class DataLoaderWorker
110 110
             final InstallWorkerFactory workerFactory,
111 111
             final UpdateManager updateManager,
112 112
             @Directory(DirectoryType.TEMPORARY) final String tempDirectory,
113
-            final EventBus eventBus,
113
+            final MBassador eventBus,
114 114
             final AddonTable table,
115 115
             final boolean download,
116 116
             final BrowserWindow browserWindow,
@@ -180,7 +180,7 @@ public class DataLoaderWorker
180 180
         } catch (final InterruptedException ex) {
181 181
             data = Collections.<AddonInfo>emptyList();
182 182
         } catch (final ExecutionException ex) {
183
-            eventBus.post(new UserErrorEvent(ErrorLevel.MEDIUM, ex, ex.getMessage(), ""));
183
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.MEDIUM, ex, ex.getMessage(), ""));
184 184
             data = Collections.<AddonInfo>emptyList();
185 185
         }
186 186
         final int selectedRow;

+ 3
- 3
src/com/dmdirc/addons/ui_swing/components/addonbrowser/DataLoaderWorkerFactory.java Ver arquivo

@@ -29,7 +29,7 @@ import com.dmdirc.updater.manager.UpdateManager;
29 29
 import com.dmdirc.util.URLBuilder;
30 30
 import com.dmdirc.util.io.Downloader;
31 31
 
32
-import com.google.common.eventbus.EventBus;
32
+import net.engio.mbassy.bus.MBassador;
33 33
 
34 34
 import javax.inject.Inject;
35 35
 import javax.swing.JScrollPane;
@@ -45,7 +45,7 @@ public class DataLoaderWorkerFactory {
45 45
     private final InstallWorkerFactory workerFactory;
46 46
     private final UpdateManager updateManager;
47 47
     private final String tempDirectory;
48
-    private final EventBus eventBus;
48
+    private final MBassador eventBus;
49 49
 
50 50
     @Inject
51 51
     public DataLoaderWorkerFactory(final Downloader downloader,
@@ -53,7 +53,7 @@ public class DataLoaderWorkerFactory {
53 53
             final URLBuilder urlBuilder,
54 54
             final InstallWorkerFactory workerFactory,
55 55
             final UpdateManager updateManager,
56
-            final EventBus eventBus,
56
+            final MBassador eventBus,
57 57
             @CommandLineOptionsModule.Directory(CommandLineOptionsModule.DirectoryType.TEMPORARY) final String tempDirectory) {
58 58
         this.downloader = downloader;
59 59
         this.globalConfig = globalConfig;

+ 2
- 2
src/com/dmdirc/addons/ui_swing/components/addonbrowser/InstallWorker.java Ver arquivo

@@ -29,7 +29,7 @@ import com.dmdirc.commandline.CommandLineOptionsModule.DirectoryType;
29 29
 import com.dmdirc.plugins.PluginManager;
30 30
 import com.dmdirc.util.io.Downloader;
31 31
 
32
-import com.google.common.eventbus.EventBus;
32
+import net.engio.mbassy.bus.MBassador;
33 33
 
34 34
 import java.io.File;
35 35
 import java.io.IOException;
@@ -61,7 +61,7 @@ public class InstallWorker extends LoggingSwingWorker<String, Void> {
61 61
             @Directory(DirectoryType.PLUGINS) final String pluginDirectory,
62 62
             @Directory(DirectoryType.THEMES) final String themeDirectory,
63 63
             final PluginManager pluginManager,
64
-            final EventBus eventBus,
64
+            final MBassador eventBus,
65 65
             final AddonInfo info,
66 66
             final InstallerWindow window) {
67 67
         super(eventBus);

+ 3
- 3
src/com/dmdirc/addons/ui_swing/components/addonbrowser/InstallWorkerFactory.java Ver arquivo

@@ -26,7 +26,7 @@ import com.dmdirc.commandline.CommandLineOptionsModule;
26 26
 import com.dmdirc.plugins.PluginManager;
27 27
 import com.dmdirc.util.io.Downloader;
28 28
 
29
-import com.google.common.eventbus.EventBus;
29
+import net.engio.mbassy.bus.MBassador;
30 30
 
31 31
 import javax.inject.Inject;
32 32
 
@@ -40,14 +40,14 @@ public class InstallWorkerFactory {
40 40
     private final String pluginDirectory;
41 41
     private final String themeDirectory;
42 42
     private final PluginManager pluginManager;
43
-    private final EventBus eventBus;
43
+    private final MBassador eventBus;
44 44
 
45 45
     @Inject
46 46
     public InstallWorkerFactory(final Downloader downloader,
47 47
             @CommandLineOptionsModule.Directory(CommandLineOptionsModule.DirectoryType.TEMPORARY) final String tempDirectory,
48 48
             @CommandLineOptionsModule.Directory(CommandLineOptionsModule.DirectoryType.PLUGINS) final String pluginDirectory,
49 49
             @CommandLineOptionsModule.Directory(CommandLineOptionsModule.DirectoryType.THEMES) final String themeDirectory,
50
-            final PluginManager pluginManager, final EventBus eventBus) {
50
+            final PluginManager pluginManager, final MBassador eventBus) {
51 51
         this.downloader = downloader;
52 52
         this.tempDirectory = tempDirectory;
53 53
         this.pluginDirectory = pluginDirectory;

+ 3
- 3
src/com/dmdirc/addons/ui_swing/components/addonpanel/AddonPanel.java Ver arquivo

@@ -30,7 +30,7 @@ import com.dmdirc.addons.ui_swing.components.renderers.AddonCellRenderer;
30 30
 import com.dmdirc.addons.ui_swing.components.text.TextLabel;
31 31
 import com.dmdirc.config.prefs.PreferencesInterface;
32 32
 
33
-import com.google.common.eventbus.EventBus;
33
+import net.engio.mbassy.bus.MBassador;
34 34
 
35 35
 import java.awt.Window;
36 36
 
@@ -63,7 +63,7 @@ public abstract class AddonPanel extends JPanel implements AddonToggleListener,
63 63
     /** The factory to use to produce data loader workers. */
64 64
     private final DataLoaderWorkerFactory workerFactory;
65 65
     /** The event bus to post errors to. */
66
-    private final EventBus eventBus;
66
+    private final MBassador eventBus;
67 67
     /** Addon list scroll pane. */
68 68
     private JScrollPane scrollPane;
69 69
     /** Blurb label. */
@@ -83,7 +83,7 @@ public abstract class AddonPanel extends JPanel implements AddonToggleListener,
83 83
      * @param eventBus      The event bus to post errors to.
84 84
      */
85 85
     public AddonPanel(final Window parentWindow, final DataLoaderWorkerFactory workerFactory,
86
-            final EventBus eventBus) {
86
+            final MBassador eventBus) {
87 87
         this.parentWindow = parentWindow;
88 88
         this.workerFactory = workerFactory;
89 89
         this.eventBus = eventBus;

+ 6
- 6
src/com/dmdirc/addons/ui_swing/components/addonpanel/PluginPanel.java Ver arquivo

@@ -34,9 +34,6 @@ import com.dmdirc.plugins.PluginManager;
34 34
 import com.dmdirc.ui.IconManager;
35 35
 import com.dmdirc.updater.manager.CachingUpdateManager;
36 36
 
37
-import com.google.common.eventbus.EventBus;
38
-import com.google.common.eventbus.Subscribe;
39
-
40 37
 import java.awt.Window;
41 38
 import java.util.ArrayList;
42 39
 import java.util.Collections;
@@ -46,6 +43,9 @@ import javax.inject.Inject;
46 43
 import javax.swing.JTable;
47 44
 import javax.swing.table.DefaultTableModel;
48 45
 
46
+import net.engio.mbassy.bus.MBassador;
47
+import net.engio.mbassy.listener.Handler;
48
+
49 49
 /**
50 50
  * Lists known plugins, enabling the end user to enable/disable these as well as download new ones.
51 51
  */
@@ -75,7 +75,7 @@ public class PluginPanel extends AddonPanel {
75 75
      */
76 76
     @Inject
77 77
     public PluginPanel(
78
-            final EventBus eventBus,
78
+            final MBassador eventBus,
79 79
             @MainWindow final Window parentWindow,
80 80
             final PluginManager pluginManager,
81 81
             final DataLoaderWorkerFactory workerFactory,
@@ -87,7 +87,7 @@ public class PluginPanel extends AddonPanel {
87 87
         this.iconManager = iconManager;
88 88
         this.updateManager = updateManager;
89 89
         this.userConfig = userConfig;
90
-        eventBus.register(this);
90
+        eventBus.subscribe(this);
91 91
         pluginManager.refreshPlugins();
92 92
         load();
93 93
     }
@@ -133,7 +133,7 @@ public class PluginPanel extends AddonPanel {
133 133
         return table;
134 134
     }
135 135
 
136
-    @Subscribe
136
+    @Handler
137 137
     public void handlePluginRefresh(final PluginRefreshEvent event) {
138 138
         populateList(addonList);
139 139
     }

+ 2
- 2
src/com/dmdirc/addons/ui_swing/components/addonpanel/ThemePanel.java Ver arquivo

@@ -33,7 +33,7 @@ import com.dmdirc.ui.themes.Theme;
33 33
 import com.dmdirc.ui.themes.ThemeManager;
34 34
 import com.dmdirc.updater.manager.CachingUpdateManager;
35 35
 
36
-import com.google.common.eventbus.EventBus;
36
+import net.engio.mbassy.bus.MBassador;
37 37
 
38 38
 import java.awt.Window;
39 39
 import java.util.ArrayList;
@@ -79,7 +79,7 @@ public class ThemePanel extends AddonPanel {
79 79
             @GlobalConfig final IconManager iconManager,
80 80
             final CachingUpdateManager updateManager,
81 81
             @UserConfig final ConfigProvider userConfig,
82
-            final EventBus eventBus) {
82
+            final MBassador eventBus) {
83 83
         super(parentWindow, workerFactory, eventBus);
84 84
         this.themeManager = themeManager;
85 85
         this.iconManager = iconManager;

+ 7
- 7
src/com/dmdirc/addons/ui_swing/components/frames/ChannelFrame.java Ver arquivo

@@ -39,9 +39,6 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
39 39
 import com.dmdirc.interfaces.config.ConfigProvider;
40 40
 import com.dmdirc.interfaces.config.IdentityFactory;
41 41
 
42
-import com.google.common.eventbus.EventBus;
43
-import com.google.common.eventbus.Subscribe;
44
-
45 42
 import java.awt.Dimension;
46 43
 import java.awt.event.ActionEvent;
47 44
 import java.awt.event.ActionListener;
@@ -53,6 +50,9 @@ import javax.swing.JSplitPane;
53 50
 
54 51
 import net.miginfocom.swing.MigLayout;
55 52
 
53
+import net.engio.mbassy.bus.MBassador;
54
+import net.engio.mbassy.listener.Handler;
55
+
56 56
 /**
57 57
  * The channel frame is the GUI component that represents a channel to the user.
58 58
  */
@@ -71,7 +71,7 @@ public final class ChannelFrame extends InputTextFrame implements ActionListener
71 71
     /** Topic bar. */
72 72
     private TopicBar topicBar;
73 73
     /** Event bus to dispatch events on. */
74
-    private final EventBus eventBus;
74
+    private final MBassador eventBus;
75 75
     /** Config to read settings from. */
76 76
     private final AggregateConfigProvider globalConfig;
77 77
     /** The domain to read settings from. */
@@ -113,7 +113,7 @@ public final class ChannelFrame extends InputTextFrame implements ActionListener
113 113
 
114 114
         globalConfig.addChangeListener("ui", "channelSplitPanePosition", this);
115 115
         globalConfig.addChangeListener(domain, "shownicklist", this);
116
-        eventBus.register(this);
116
+        eventBus.subscribe(this);
117 117
 
118 118
         identity = identityFactory.createChannelConfig(owner.getConnection().getNetwork(),
119 119
                 owner.getChannelInfo().getName());
@@ -217,7 +217,7 @@ public final class ChannelFrame extends InputTextFrame implements ActionListener
217 217
         }
218 218
     }
219 219
 
220
-    @Subscribe
220
+    @Handler
221 221
     public void handleClientClosing(final ClientClosingEvent event) {
222 222
         saveSplitPanePosition();
223 223
     }
@@ -284,7 +284,7 @@ public final class ChannelFrame extends InputTextFrame implements ActionListener
284 284
 
285 285
     @Override
286 286
     public void dispose() {
287
-        eventBus.unregister(this);
287
+        eventBus.unsubscribe(this);
288 288
         globalConfig.removeListener(this);
289 289
         super.dispose();
290 290
     }

+ 4
- 4
src/com/dmdirc/addons/ui_swing/components/frames/ComponentCreator.java Ver arquivo

@@ -32,13 +32,13 @@ import com.dmdirc.ui.core.components.WindowComponent;
32 32
 import com.dmdirc.util.SimpleInjector;
33 33
 import com.dmdirc.util.URLBuilder;
34 34
 
35
-import com.google.common.eventbus.EventBus;
36
-
37 35
 import java.util.HashSet;
38 36
 import java.util.Set;
39 37
 
40 38
 import javax.swing.JComponent;
41 39
 
40
+import net.engio.mbassy.bus.MBassador;
41
+
42 42
 /**
43 43
  * Utility class to create frame components.
44 44
  *
@@ -64,7 +64,7 @@ public class ComponentCreator {
64 64
     public Set<JComponent> initFrameComponents(
65 65
             final Object frame,
66 66
             final SwingController controller,
67
-            final EventBus eventBus,
67
+            final MBassador eventBus,
68 68
             final URLBuilder urlBuilder,
69 69
             final FrameContainer owner) {
70 70
         final SimpleInjector injector = new SimpleInjector();
@@ -93,7 +93,7 @@ public class ComponentCreator {
93 93
                 object = injector.createInstance(clazz);
94 94
             } catch (ClassNotFoundException | IllegalArgumentException ex) {
95 95
                 object = null;
96
-                eventBus.post(new UserErrorEvent(ErrorLevel.HIGH, ex,
96
+                eventBus.publishAsync(new UserErrorEvent(ErrorLevel.HIGH, ex,
97 97
                         "Unable to create component: " + ex.getMessage(), ""));
98 98
             }
99 99
             if (object instanceof JComponent) {

+ 3
- 3
src/com/dmdirc/addons/ui_swing/components/frames/ComponentFrame.java Ver arquivo

@@ -28,7 +28,7 @@ import com.dmdirc.commandparser.PopupType;
28 28
 import com.dmdirc.commandparser.parsers.CommandParser;
29 29
 import com.dmdirc.util.URLBuilder;
30 30
 
31
-import com.google.common.eventbus.EventBus;
31
+import net.engio.mbassy.bus.MBassador;
32 32
 
33 33
 import javax.swing.JComponent;
34 34
 import javax.swing.JPopupMenu;
@@ -49,7 +49,7 @@ public class ComponentFrame extends TextFrame {
49 49
     /** Parent controller. */
50 50
     private final SwingController controller;
51 51
     /** The global event bus. */
52
-    private final EventBus eventBus;
52
+    private final MBassador eventBus;
53 53
 
54 54
     /**
55 55
      * Creates a new instance of CustomFrame.
@@ -61,7 +61,7 @@ public class ComponentFrame extends TextFrame {
61 61
      * @param commandParser The parser to use to process commands.
62 62
      */
63 63
     public ComponentFrame(
64
-            final EventBus eventBus,
64
+            final MBassador eventBus,
65 65
             final TextFrameDependencies deps,
66 66
             final URLBuilder urlBuilder,
67 67
             final FrameContainer owner,

+ 3
- 3
src/com/dmdirc/addons/ui_swing/components/frames/ComponentFrameFactory.java Ver arquivo

@@ -26,7 +26,7 @@ import com.dmdirc.FrameContainer;
26 26
 import com.dmdirc.commandparser.parsers.CommandParser;
27 27
 import com.dmdirc.util.URLBuilder;
28 28
 
29
-import com.google.common.eventbus.EventBus;
29
+import net.engio.mbassy.bus.MBassador;
30 30
 
31 31
 import javax.inject.Inject;
32 32
 import javax.inject.Singleton;
@@ -39,13 +39,13 @@ import static com.dmdirc.addons.ui_swing.components.frames.TextFrame.TextFrameDe
39 39
 @Singleton
40 40
 public class ComponentFrameFactory {
41 41
 
42
-    private final EventBus eventBus;
42
+    private final MBassador eventBus;
43 43
     private final TextFrameDependencies dependencies;
44 44
     private final URLBuilder urlBuilder;
45 45
 
46 46
     @Inject
47 47
     public ComponentFrameFactory(
48
-            final EventBus eventBus,
48
+            final MBassador eventBus,
49 49
             final TextFrameDependencies dependencies,
50 50
             final URLBuilder urlBuilder) {
51 51
         this.eventBus = eventBus;

+ 3
- 3
src/com/dmdirc/addons/ui_swing/components/frames/ComponentInputFrame.java Ver arquivo

@@ -28,7 +28,7 @@ import com.dmdirc.addons.ui_swing.components.inputfields.SwingInputField;
28 28
 import com.dmdirc.commandparser.PopupType;
29 29
 import com.dmdirc.util.URLBuilder;
30 30
 
31
-import com.google.common.eventbus.EventBus;
31
+import net.engio.mbassy.bus.MBassador;
32 32
 
33 33
 import javax.inject.Provider;
34 34
 import javax.swing.JComponent;
@@ -50,7 +50,7 @@ public class ComponentInputFrame extends InputTextFrame {
50 50
     /** Parent controller. */
51 51
     private final SwingController controller;
52 52
     /** The global event bus. */
53
-    private final EventBus eventBus;
53
+    private final MBassador eventBus;
54 54
 
55 55
     /**
56 56
      * Creates a new instance of CustomInputFrame.
@@ -62,7 +62,7 @@ public class ComponentInputFrame extends InputTextFrame {
62 62
      * @param owner              The frame container that owns this frame
63 63
      */
64 64
     public ComponentInputFrame(
65
-            final EventBus eventBus,
65
+            final MBassador eventBus,
66 66
             final TextFrameDependencies deps,
67 67
             final Provider<SwingInputField> inputFieldProvider,
68 68
             final URLBuilder urlBuilder,

+ 3
- 3
src/com/dmdirc/addons/ui_swing/components/frames/DesktopWindowFrame.java Ver arquivo

@@ -28,7 +28,7 @@ import com.dmdirc.events.FrameIconChangedEvent;
28 28
 import com.dmdirc.events.FrameTitleChangedEvent;
29 29
 import com.dmdirc.interfaces.FrameCloseListener;
30 30
 
31
-import com.google.common.eventbus.Subscribe;
31
+import net.engio.mbassy.listener.Handler;
32 32
 
33 33
 import java.awt.Point;
34 34
 import java.awt.event.WindowAdapter;
@@ -96,7 +96,7 @@ public class DesktopWindowFrame extends JFrame implements FrameCloseListener {
96 96
         });
97 97
     }
98 98
 
99
-    @Subscribe
99
+    @Handler
100 100
     public void iconChanged(final FrameIconChangedEvent event) {
101 101
         UIUtilities.invokeLater(new Runnable() {
102 102
 
@@ -109,7 +109,7 @@ public class DesktopWindowFrame extends JFrame implements FrameCloseListener {
109 109
         });
110 110
     }
111 111
 
112
-    @Subscribe
112
+    @Handler
113 113
     public void titleChanged(final FrameTitleChangedEvent event) {
114 114
         UIUtilities.invokeLater(new Runnable() {
115 115
 

+ 6
- 6
src/com/dmdirc/addons/ui_swing/components/frames/InputTextFrame.java Ver arquivo

@@ -42,8 +42,6 @@ import com.dmdirc.plugins.PluginManager;
42 42
 import com.dmdirc.ui.input.InputHandler;
43 43
 import com.dmdirc.ui.messages.ColourManager;
44 44
 
45
-import com.google.common.eventbus.EventBus;
46
-
47 45
 import java.awt.BorderLayout;
48 46
 import java.awt.Point;
49 47
 import java.awt.Toolkit;
@@ -63,6 +61,8 @@ import javax.swing.KeyStroke;
63 61
 
64 62
 import net.miginfocom.layout.PlatformDefaults;
65 63
 
64
+import net.engio.mbassy.bus.MBassador;
65
+
66 66
 /**
67 67
  * Frame with an input field.
68 68
  */
@@ -100,7 +100,7 @@ public abstract class InputTextFrame extends TextFrame implements InputWindow,
100 100
     /** The controller to use to retrieve command information. */
101 101
     private final CommandController commandController;
102 102
     /** The bus to dispatch input events on. */
103
-    private final EventBus eventBus;
103
+    private final MBassador eventBus;
104 104
 
105 105
     /**
106 106
      * Creates a new instance of InputFrame.
@@ -282,7 +282,7 @@ public abstract class InputTextFrame extends TextFrame implements InputWindow,
282 282
                 return;
283 283
             }
284 284
         } catch (final IllegalStateException ex) {
285
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex,
285
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex,
286 286
                     "Unable to past from clipboard.", ""));
287 287
             return;
288 288
         }
@@ -293,10 +293,10 @@ public abstract class InputTextFrame extends TextFrame implements InputWindow,
293 293
             doPaste((String) Toolkit.getDefaultToolkit()
294 294
                     .getSystemClipboard().getData(DataFlavor.stringFlavor));
295 295
         } catch (final IOException ex) {
296
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex,
296
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex,
297 297
                     "Unable to get clipboard contents: " + ex.getMessage(), ""));
298 298
         } catch (final UnsupportedFlavorException ex) {
299
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex,
299
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex,
300 300
                     "Unsupported clipboard type", ""));
301 301
         }
302 302
     }

+ 10
- 10
src/com/dmdirc/addons/ui_swing/components/frames/TextFrame.java Ver arquivo

@@ -63,8 +63,6 @@ import com.dmdirc.plugins.PluginManager;
63 63
 import com.dmdirc.ui.IconManager;
64 64
 import com.dmdirc.ui.messages.ColourManager;
65 65
 
66
-import com.google.common.eventbus.EventBus;
67
-
68 66
 import java.awt.Point;
69 67
 import java.awt.Window;
70 68
 import java.awt.datatransfer.Clipboard;
@@ -84,6 +82,8 @@ import javax.swing.SwingUtilities;
84 82
 
85 83
 import net.miginfocom.swing.MigLayout;
86 84
 
85
+import net.engio.mbassy.bus.MBassador;
86
+
87 87
 /**
88 88
  * Implements a generic (internal) frame.
89 89
  */
@@ -105,7 +105,7 @@ public abstract class TextFrame extends JPanel implements com.dmdirc.interfaces.
105 105
     /** Manager to use for building popups. */
106 106
     private final PopupManager popupManager;
107 107
     /** Bus to despatch events on. */
108
-    private final EventBus eventBus;
108
+    private final MBassador eventBus;
109 109
     /** Clipboard to copy and paste from. */
110 110
     private final Clipboard clipboard;
111 111
     /** Boolean to determine if this frame should be popped out of main client. */
@@ -167,12 +167,12 @@ public abstract class TextFrame extends JPanel implements com.dmdirc.interfaces.
167 167
         if (popout) {
168 168
             popoutPlaceholder = new DesktopPlaceHolderFrame();
169 169
             popoutFrame = new DesktopWindowFrame(this);
170
-            eventBus.register(popoutFrame);
170
+            eventBus.subscribe(popoutFrame);
171 171
             popoutFrame.display();
172 172
         } else if (popoutFrame != null) {
173 173
             popoutPlaceholder = null;
174 174
             popoutFrame.dispose();
175
-            eventBus.unregister(popoutFrame);
175
+            eventBus.unsubscribe(popoutFrame);
176 176
             popoutFrame = null;
177 177
         }
178 178
         // Call setActiveFrame again so the contents of the frame manager are updated.
@@ -308,13 +308,13 @@ public abstract class TextFrame extends JPanel implements com.dmdirc.interfaces.
308 308
         if (eventType == MouseEventType.CLICK && event.getButton() == MouseEvent.BUTTON1) {
309 309
             switch (clicktype.getType()) {
310 310
                 case CHANNEL:
311
-                    eventBus.post(new LinkChannelClickedEvent(this, clicktype.getValue()));
311
+                    eventBus.publishAsync(new LinkChannelClickedEvent(this, clicktype.getValue()));
312 312
                     break;
313 313
                 case NICKNAME:
314
-                    eventBus.post(new LinkNicknameClickedEvent(this, clicktype.getValue()));
314
+                    eventBus.publishAsync(new LinkNicknameClickedEvent(this, clicktype.getValue()));
315 315
                     break;
316 316
                 case HYPERLINK:
317
-                    eventBus.post(new LinkUrlClickedEvent(this, clicktype.getValue()));
317
+                    eventBus.publishAsync(new LinkUrlClickedEvent(this, clicktype.getValue()));
318 318
                     break;
319 319
             }
320 320
         }
@@ -546,7 +546,7 @@ public abstract class TextFrame extends JPanel implements com.dmdirc.interfaces.
546 546
         final SwingController controller;
547 547
         final Provider<Window> mainWindow;
548 548
         final PopupManager popupManager;
549
-        final EventBus eventBus;
549
+        final MBassador eventBus;
550 550
         final AggregateConfigProvider globalConfig;
551 551
         final PasteDialogFactory pasteDialog;
552 552
         final PluginManager pluginManager;
@@ -561,7 +561,7 @@ public abstract class TextFrame extends JPanel implements com.dmdirc.interfaces.
561 561
                 final SwingController controller,
562 562
                 @MainWindow final Provider<Window> mainWindow,
563 563
                 final PopupManager popupManager,
564
-                final EventBus eventBus,
564
+                final MBassador eventBus,
565 565
                 final PasteDialogFactory pasteDialog,
566 566
                 final PluginManager pluginManager,
567 567
                 @GlobalConfig final IconManager iconManager,

+ 3
- 3
src/com/dmdirc/addons/ui_swing/components/inputfields/SwingInputHandler.java Ver arquivo

@@ -32,7 +32,7 @@ import com.dmdirc.interfaces.ui.InputField;
32 32
 import com.dmdirc.plugins.ServiceManager;
33 33
 import com.dmdirc.ui.input.InputHandler;
34 34
 
35
-import com.google.common.eventbus.EventBus;
35
+import net.engio.mbassy.bus.MBassador;
36 36
 
37 37
 import java.awt.event.ActionEvent;
38 38
 import java.awt.event.KeyEvent;
@@ -49,7 +49,7 @@ import javax.swing.text.JTextComponent;
49 49
  */
50 50
 public class SwingInputHandler extends InputHandler implements KeyListener {
51 51
 
52
-    private final EventBus eventBus;
52
+    private final MBassador eventBus;
53 53
 
54 54
     /**
55 55
      * Creates a new instance of InputHandler. Adds listeners to the target that we need to operate.
@@ -67,7 +67,7 @@ public class SwingInputHandler extends InputHandler implements KeyListener {
67 67
             final CommandController commandController,
68 68
             final CommandParser commandParser,
69 69
             final FrameContainer parentWindow,
70
-            final EventBus eventBus) {
70
+            final MBassador eventBus) {
71 71
         super(serviceManager, target, commandController, commandParser, parentWindow, eventBus);
72 72
         this.eventBus = eventBus;
73 73
     }

+ 7
- 7
src/com/dmdirc/addons/ui_swing/components/statusbar/InviteLabel.java Ver arquivo

@@ -37,8 +37,8 @@ import com.dmdirc.interfaces.InviteListener;
37 37
 import com.dmdirc.interfaces.ui.StatusBarComponent;
38 38
 import com.dmdirc.ui.IconManager;
39 39
 
40
-import com.google.common.eventbus.EventBus;
41
-import com.google.common.eventbus.Subscribe;
40
+import net.engio.mbassy.bus.MBassador;
41
+import net.engio.mbassy.listener.Handler;
42 42
 
43 43
 import java.awt.Window;
44 44
 import java.awt.event.ActionEvent;
@@ -82,7 +82,7 @@ public class InviteLabel extends StatusbarPopupPanel<JLabel> implements StatusBa
82 82
      */
83 83
     @Inject
84 84
     public InviteLabel(
85
-            final EventBus eventBus,
85
+            final MBassador eventBus,
86 86
             @GlobalConfig final IconManager iconManager,
87 87
             final ServerManager serverManager,
88 88
             final MainFrame mainFrame) {
@@ -106,7 +106,7 @@ public class InviteLabel extends StatusbarPopupPanel<JLabel> implements StatusBa
106 106
         }
107 107
 
108 108
         mainFrame.addSelectionListener(this);
109
-        eventBus.register(this);
109
+        eventBus.subscribe(this);
110 110
 
111 111
         update();
112 112
     }
@@ -160,17 +160,17 @@ public class InviteLabel extends StatusbarPopupPanel<JLabel> implements StatusBa
160 160
         update();
161 161
     }
162 162
 
163
-    @Subscribe
163
+    @Handler
164 164
     public void handleServerConnected(final ServerConnectedEvent event) {
165 165
         event.getConnection().addInviteListener(this);
166 166
     }
167 167
 
168
-    @Subscribe
168
+    @Handler
169 169
     public void handleServerDisconnected(final ServerDisconnectedEvent event) {
170 170
         handleServerRemoved(event.getConnection());
171 171
     }
172 172
 
173
-    @Subscribe
173
+    @Handler
174 174
     public void handleServerConnectError(final ServerConnectErrorEvent event) {
175 175
         handleServerRemoved(event.getConnection());
176 176
     }

+ 7
- 7
src/com/dmdirc/addons/ui_swing/components/text/WrapEditorKit.java Ver arquivo

@@ -13,8 +13,6 @@ import com.dmdirc.events.LinkUrlClickedEvent;
13 13
 import com.dmdirc.interfaces.ui.Window;
14 14
 import com.dmdirc.ui.messages.IRCTextAttribute;
15 15
 
16
-import com.google.common.eventbus.EventBus;
17
-
18 16
 import java.awt.Cursor;
19 17
 import java.awt.event.MouseEvent;
20 18
 import java.awt.event.MouseListener;
@@ -27,6 +25,8 @@ import javax.swing.text.StyledDocument;
27 25
 import javax.swing.text.StyledEditorKit;
28 26
 import javax.swing.text.ViewFactory;
29 27
 
28
+import net.engio.mbassy.bus.MBassador;
29
+
30 30
 /**
31 31
  * @author Stanislav Lapitsky
32 32
  * @version 1.0
@@ -46,7 +46,7 @@ public class WrapEditorKit extends StyledEditorKit implements MouseListener, Mou
46 46
     /** Associated Component. */
47 47
     private JEditorPane editorPane;
48 48
     /** Event bus to fire link click events on. */
49
-    private final EventBus eventBus;
49
+    private final MBassador eventBus;
50 50
     /** The window this editor kit is used in. */
51 51
     private final Window window;
52 52
 
@@ -57,7 +57,7 @@ public class WrapEditorKit extends StyledEditorKit implements MouseListener, Mou
57 57
      * @param eventBus Event bus to raise hyperlink events on
58 58
      * @param window   Window as source for hyperlink events
59 59
      */
60
-    public WrapEditorKit(final boolean wrapping, final EventBus eventBus, final Window window) {
60
+    public WrapEditorKit(final boolean wrapping, final MBassador eventBus, final Window window) {
61 61
         this.window = window;
62 62
         this.eventBus = eventBus;
63 63
         wrap = wrapping;
@@ -124,15 +124,15 @@ public class WrapEditorKit extends StyledEditorKit implements MouseListener, Mou
124 124
             Object target = characterElementAt(e).getAttributes().getAttribute(
125 125
                     IRCTextAttribute.HYPERLINK);
126 126
             if (target != null) {
127
-                eventBus.post(new LinkUrlClickedEvent(window, (String) target));
127
+                eventBus.publishAsync(new LinkUrlClickedEvent(window, (String) target));
128 128
             }
129 129
             target = characterElementAt(e).getAttributes().getAttribute(IRCTextAttribute.CHANNEL);
130 130
             if (target != null) {
131
-                eventBus.post(new LinkChannelClickedEvent(window, (String) target));
131
+                eventBus.publishAsync(new LinkChannelClickedEvent(window, (String) target));
132 132
             }
133 133
             target = characterElementAt(e).getAttributes().getAttribute(IRCTextAttribute.NICKNAME);
134 134
             if (target != null) {
135
-                eventBus.post(new LinkNicknameClickedEvent(window, (String) target));
135
+                eventBus.publishAsync(new LinkNicknameClickedEvent(window, (String) target));
136 136
             }
137 137
         }
138 138
     }

+ 2
- 2
src/com/dmdirc/addons/ui_swing/dialogs/about/LicenceLoader.java Ver arquivo

@@ -27,7 +27,7 @@ import com.dmdirc.addons.ui_swing.components.LoggingSwingWorker;
27 27
 import com.dmdirc.plugins.PluginInfo;
28 28
 import com.dmdirc.util.resourcemanager.ResourceManager;
29 29
 
30
-import com.google.common.eventbus.EventBus;
30
+import net.engio.mbassy.bus.MBassador;
31 31
 
32 32
 import java.io.BufferedReader;
33 33
 import java.io.IOException;
@@ -67,7 +67,7 @@ public class LicenceLoader extends LoggingSwingWorker<Void, Void> {
67 67
      * @param eventBus The event bus to post errors to
68 68
      */
69 69
     public LicenceLoader(final Collection<PluginInfo> plugins, final JTree tree,
70
-            final DefaultTreeModel model, final EventBus eventBus) {
70
+            final DefaultTreeModel model, final MBassador eventBus) {
71 71
         super(eventBus);
72 72
         this.plugins = plugins;
73 73
         this.tree = tree;

+ 2
- 2
src/com/dmdirc/addons/ui_swing/dialogs/about/LicencesPanel.java Ver arquivo

@@ -29,7 +29,7 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
29 29
 import com.dmdirc.plugins.PluginInfo;
30 30
 import com.dmdirc.plugins.PluginManager;
31 31
 
32
-import com.google.common.eventbus.EventBus;
32
+import net.engio.mbassy.bus.MBassador;
33 33
 
34 34
 import java.awt.Font;
35 35
 import java.awt.Rectangle;
@@ -80,7 +80,7 @@ public class LicencesPanel extends JPanel implements TreeSelectionListener {
80 80
     @Inject
81 81
     public LicencesPanel(
82 82
             @GlobalConfig final AggregateConfigProvider globalConfig,
83
-            final PluginManager pluginManager, final EventBus eventBus) {
83
+            final PluginManager pluginManager, final MBassador eventBus) {
84 84
         config = globalConfig;
85 85
         initComponents();
86 86
         new LicenceLoader(pluginManager.getPluginInfos(), list, listModel, eventBus).execute();

+ 9
- 9
src/com/dmdirc/addons/ui_swing/dialogs/actionsmanager/ActionsManagerDialog.java Ver arquivo

@@ -46,9 +46,6 @@ import com.dmdirc.ui.IconManager;
46 46
 import com.dmdirc.util.validators.FileNameValidator;
47 47
 import com.dmdirc.util.validators.ValidatorChain;
48 48
 
49
-import com.google.common.eventbus.EventBus;
50
-import com.google.common.eventbus.Subscribe;
51
-
52 49
 import java.awt.event.ActionEvent;
53 50
 import java.awt.event.ActionListener;
54 51
 import java.util.HashMap;
@@ -69,6 +66,9 @@ import javax.swing.event.ListSelectionListener;
69 66
 
70 67
 import net.miginfocom.swing.MigLayout;
71 68
 
69
+import net.engio.mbassy.bus.MBassador;
70
+import net.engio.mbassy.listener.Handler;
71
+
72 72
 /**
73 73
  * Allows the user to manage actions.
74 74
  */
@@ -86,7 +86,7 @@ public class ActionsManagerDialog extends StandardDialog implements
86 86
     /** Duplicate action group validator. */
87 87
     private final ValidatorChain<String> validator;
88 88
     /** Event bus to post events to and subscribe to events on. */
89
-    private final EventBus eventbus;
89
+    private final MBassador eventbus;
90 90
     /** Info label. */
91 91
     private TextLabel infoLabel;
92 92
     /** Group list. */
@@ -125,7 +125,7 @@ public class ActionsManagerDialog extends StandardDialog implements
125 125
      */
126 126
     @Inject
127 127
     public ActionsManagerDialog(
128
-            final EventBus eventBus,
128
+            final MBassador eventBus,
129 129
             final Apple apple,
130 130
             final MainFrame parentWindow,
131 131
             @UserConfig final ConfigProvider config,
@@ -206,7 +206,7 @@ public class ActionsManagerDialog extends StandardDialog implements
206 206
         edit.addActionListener(this);
207 207
         delete.addActionListener(this);
208 208
         groups.getSelectionModel().addListSelectionListener(this);
209
-        eventbus.register(this);
209
+        eventbus.subscribe(this);
210 210
     }
211 211
 
212 212
     /**
@@ -433,12 +433,12 @@ public class ActionsManagerDialog extends StandardDialog implements
433 433
         }
434 434
     }
435 435
 
436
-    @Subscribe
436
+    @Handler
437 437
     public void handleActionCreated(final ActionCreatedEvent event) {
438 438
         handleActionCreatedOrUpdated(event.getAction());
439 439
     }
440 440
 
441
-    @Subscribe
441
+    @Handler
442 442
     public void handleActionUpdated(final ActionUpdatedEvent event) {
443 443
         handleActionCreatedOrUpdated(event.getAction());
444 444
     }
@@ -449,7 +449,7 @@ public class ActionsManagerDialog extends StandardDialog implements
449 449
         }
450 450
     }
451 451
 
452
-    @Subscribe
452
+    @Handler
453 453
     public void handleActionDeleted(final ActionDeletedEvent event) {
454 454
         if (event.getGroup().getName().equals(groups.getSelectedValue().getName())) {
455 455
             actions.actionDeleted(event.getName());

+ 2
- 2
src/com/dmdirc/addons/ui_swing/dialogs/aliases/AliasManagerDialog.java Ver arquivo

@@ -33,7 +33,7 @@ import com.dmdirc.interfaces.ui.AliasDialogModel;
33 33
 import com.dmdirc.ui.IconManager;
34 34
 import com.dmdirc.util.validators.NotEmptyValidator;
35 35
 
36
-import com.google.common.eventbus.EventBus;
36
+import net.engio.mbassy.bus.MBassador;
37 37
 
38 38
 import java.awt.Dimension;
39 39
 import java.awt.Window;
@@ -58,7 +58,7 @@ public class AliasManagerDialog extends StandardDialog {
58 58
 
59 59
     @Inject
60 60
     public AliasManagerDialog(@MainWindow final Window mainFrame, final AliasDialogModel model,
61
-            @GlobalConfig final IconManager iconManager, final EventBus eventBus) {
61
+            @GlobalConfig final IconManager iconManager, final MBassador eventBus) {
62 62
         super(mainFrame, ModalityType.DOCUMENT_MODAL);
63 63
         final AliasManagerLinker linker = new AliasManagerLinker(model, this, iconManager);
64 64
         setTitle("Alias Manager");

+ 3
- 3
src/com/dmdirc/addons/ui_swing/dialogs/channelsetting/ChannelSettingsDialog.java Ver arquivo

@@ -36,7 +36,7 @@ import com.dmdirc.interfaces.config.IdentityFactory;
36 36
 import com.dmdirc.interfaces.ui.InputWindow;
37 37
 import com.dmdirc.plugins.ServiceManager;
38 38
 
39
-import com.google.common.eventbus.EventBus;
39
+import net.engio.mbassy.bus.MBassador;
40 40
 
41 41
 import java.awt.Window;
42 42
 import java.awt.datatransfer.Clipboard;
@@ -88,7 +88,7 @@ public class ChannelSettingsDialog extends StandardDialog implements ActionListe
88 88
     /** The controller to use to retrieve command information. */
89 89
     private final CommandController commandController;
90 90
     /** The event bus to post errors to. */
91
-    private final EventBus eventBus;
91
+    private final MBassador eventBus;
92 92
 
93 93
     /**
94 94
      * Creates a new instance of ChannelSettingsDialog.
@@ -116,7 +116,7 @@ public class ChannelSettingsDialog extends StandardDialog implements ActionListe
116 116
             final Window parentWindow,
117 117
             final Clipboard clipboard,
118 118
             final CommandController commandController,
119
-            final EventBus eventBus) {
119
+            final MBassador eventBus) {
120 120
         super(parentWindow, ModalityType.MODELESS);
121 121
 
122 122
         this.userConfig = checkNotNull(userConfig);

+ 3
- 3
src/com/dmdirc/addons/ui_swing/dialogs/channelsetting/TopicDisplayPane.java Ver arquivo

@@ -37,7 +37,7 @@ import com.dmdirc.plugins.ServiceManager;
37 37
 import com.dmdirc.ui.IconManager;
38 38
 
39 39
 import com.google.common.base.Optional;
40
-import com.google.common.eventbus.EventBus;
40
+import net.engio.mbassy.bus.MBassador;
41 41
 
42 42
 import java.awt.Color;
43 43
 import java.awt.datatransfer.Clipboard;
@@ -71,7 +71,7 @@ public class TopicDisplayPane extends JPanel implements DocumentListener {
71 71
     /** Clipboard to copy and paste from. */
72 72
     private final Clipboard clipboard;
73 73
     /** The event bus to post errors to. */
74
-    private final EventBus eventBus;
74
+    private final MBassador eventBus;
75 75
     /** label showing the number of characters left in a topic. */
76 76
     private JLabel topicLengthLabel;
77 77
     /** Topic text entry text area. */
@@ -95,7 +95,7 @@ public class TopicDisplayPane extends JPanel implements DocumentListener {
95 95
     public TopicDisplayPane(final Channel channel, final IconManager iconManager,
96 96
             final ServiceManager serviceManager, final ChannelSettingsDialog parent,
97 97
             final InputWindow channelWindow, final Clipboard clipboard,
98
-            final CommandController commandController, final EventBus eventBus) {
98
+            final CommandController commandController, final MBassador eventBus) {
99 99
         this.clipboard = clipboard;
100 100
         this.channel = channel;
101 101
         this.parent = parent;

+ 3
- 3
src/com/dmdirc/addons/ui_swing/dialogs/channelsetting/TopicPane.java Ver arquivo

@@ -30,7 +30,7 @@ import com.dmdirc.plugins.ServiceManager;
30 30
 import com.dmdirc.ui.IconManager;
31 31
 
32 32
 import com.google.common.base.Optional;
33
-import com.google.common.eventbus.EventBus;
33
+import net.engio.mbassy.bus.MBassador;
34 34
 
35 35
 import java.awt.datatransfer.Clipboard;
36 36
 import java.awt.event.ActionEvent;
@@ -74,7 +74,7 @@ public class TopicPane extends JPanel implements ActionListener {
74 74
             final CommandController commandController,
75 75
             final ServiceManager serviceManager, final ChannelSettingsDialog parent,
76 76
             final InputWindow channelWindow, final Clipboard clipboard,
77
-            final EventBus eventBus) {
77
+            final MBassador eventBus) {
78 78
         setOpaque(UIUtilities.getTabbedPaneOpaque());
79 79
         this.channel = channel;
80 80
         this.parent = parent;
@@ -96,7 +96,7 @@ public class TopicPane extends JPanel implements ActionListener {
96 96
             final IconManager iconManager,
97 97
             final ServiceManager serviceManager,
98 98
             final CommandController commandController,
99
-            final EventBus eventBus) {
99
+            final MBassador eventBus) {
100 100
         topicDisplayPane = new TopicDisplayPane(channel, iconManager, serviceManager, parent,
101 101
                 channelWindow, clipboard, commandController, eventBus);
102 102
         topicHistoryPane = new TopicHistoryPane(channel);

+ 3
- 3
src/com/dmdirc/addons/ui_swing/dialogs/paste/PasteDialog.java Ver arquivo

@@ -33,7 +33,7 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
33 33
 import com.dmdirc.plugins.PluginManager;
34 34
 import com.dmdirc.ui.IconManager;
35 35
 
36
-import com.google.common.eventbus.EventBus;
36
+import net.engio.mbassy.bus.MBassador;
37 37
 
38 38
 import java.awt.Window;
39 39
 import java.awt.event.ActionEvent;
@@ -97,7 +97,7 @@ public final class PasteDialog extends StandardDialog implements ActionListener,
97 97
             final AggregateConfigProvider config,
98 98
             final PluginManager pluginManager,
99 99
             final CommandController commandController,
100
-            final EventBus eventBus,
100
+            final MBassador eventBus,
101 101
             final InputTextFrame newParent,
102 102
             final String text,
103 103
             final Window parentWindow) {
@@ -126,7 +126,7 @@ public final class PasteDialog extends StandardDialog implements ActionListener,
126 126
      *
127 127
      * @param text text to show in the dialog
128 128
      */
129
-    private void initComponents(final EventBus eventBus, final String text) {
129
+    private void initComponents(final MBassador eventBus, final String text) {
130 130
         scrollPane = new JScrollPane();
131 131
         textField = new TextAreaInputField(iconManager, config, text);
132 132
         editButton = new JButton("Edit");

+ 3
- 3
src/com/dmdirc/addons/ui_swing/dialogs/paste/PasteDialogFactory.java Ver arquivo

@@ -29,7 +29,7 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
29 29
 import com.dmdirc.plugins.PluginManager;
30 30
 import com.dmdirc.ui.IconManager;
31 31
 
32
-import com.google.common.eventbus.EventBus;
32
+import net.engio.mbassy.bus.MBassador;
33 33
 
34 34
 import java.awt.Window;
35 35
 
@@ -46,7 +46,7 @@ public class PasteDialogFactory {
46 46
     private final AggregateConfigProvider config;
47 47
     private final PluginManager pluginManager;
48 48
     private final CommandController commandController;
49
-    private final EventBus eventBus;
49
+    private final MBassador eventBus;
50 50
 
51 51
     @Inject
52 52
     public PasteDialogFactory(
@@ -54,7 +54,7 @@ public class PasteDialogFactory {
54 54
             @ClientModule.GlobalConfig final AggregateConfigProvider config,
55 55
             final PluginManager pluginManager,
56 56
             final CommandController commandController,
57
-            final EventBus eventBus) {
57
+            final MBassador eventBus) {
58 58
         this.iconManager = iconManager;
59 59
         this.config = config;
60 60
         this.pluginManager = pluginManager;

+ 2
- 2
src/com/dmdirc/addons/ui_swing/dialogs/prefs/CategoryLabel.java Ver arquivo

@@ -25,7 +25,7 @@ package com.dmdirc.addons.ui_swing.dialogs.prefs;
25 25
 import com.dmdirc.config.prefs.PreferencesCategory;
26 26
 import com.dmdirc.ui.IconManager;
27 27
 
28
-import com.google.common.eventbus.EventBus;
28
+import net.engio.mbassy.bus.MBassador;
29 29
 
30 30
 import java.awt.Dimension;
31 31
 
@@ -60,7 +60,7 @@ public class CategoryLabel extends JLabel {
60 60
      * @param index       Index of this label
61 61
      */
62 62
     public CategoryLabel(final IconManager iconManager,
63
-            final EventBus eventBus,
63
+            final MBassador eventBus,
64 64
             @Nullable final JList<? extends PreferencesCategory> parentList,
65 65
             final PreferencesCategory category, final int numCats,
66 66
             final int index) {

+ 4
- 4
src/com/dmdirc/addons/ui_swing/dialogs/prefs/CategoryPanel.java Ver arquivo

@@ -32,7 +32,7 @@ import com.dmdirc.addons.ui_swing.components.text.TextLabel;
32 32
 import com.dmdirc.config.prefs.PreferencesCategory;
33 33
 import com.dmdirc.ui.IconManager;
34 34
 
35
-import com.google.common.eventbus.EventBus;
35
+import net.engio.mbassy.bus.MBassador;
36 36
 
37 37
 import java.awt.Component;
38 38
 import java.util.Collections;
@@ -76,7 +76,7 @@ public class CategoryPanel extends JPanel {
76 76
     /** Prefs component factory. */
77 77
     private final PrefsComponentFactory factory;
78 78
     /** The event bus to post errors to. */
79
-    private final EventBus eventBus;
79
+    private final MBassador eventBus;
80 80
 
81 81
     /**
82 82
      * Instantiates a new category panel.
@@ -87,7 +87,7 @@ public class CategoryPanel extends JPanel {
87 87
      */
88 88
     @Inject
89 89
     public CategoryPanel(
90
-            final EventBus eventBus,
90
+            final MBassador eventBus,
91 91
             final PrefsComponentFactory factory,
92 92
             @GlobalConfig final IconManager iconManager) {
93 93
         this(eventBus, factory, iconManager, null);
@@ -102,7 +102,7 @@ public class CategoryPanel extends JPanel {
102 102
      * @param category    Initial category
103 103
      */
104 104
     public CategoryPanel(
105
-            final EventBus eventBus, final PrefsComponentFactory factory,
105
+            final MBassador eventBus, final PrefsComponentFactory factory,
106 106
             final IconManager iconManager,
107 107
             final PreferencesCategory category) {
108 108
         super(new MigLayout("fillx, wrap, ins 0"));

+ 5
- 5
src/com/dmdirc/addons/ui_swing/dialogs/prefs/IconLoader.java Ver arquivo

@@ -27,12 +27,12 @@ import com.dmdirc.events.UserErrorEvent;
27 27
 import com.dmdirc.logger.ErrorLevel;
28 28
 import com.dmdirc.ui.IconManager;
29 29
 
30
-import com.google.common.eventbus.EventBus;
31
-
32 30
 import java.util.concurrent.ExecutionException;
33 31
 
34 32
 import javax.swing.Icon;
35 33
 
34
+import net.engio.mbassy.bus.MBassador;
35
+
36 36
 /**
37 37
  * Loads an icon in the background and uses it for a category label once it has been loaded.
38 38
  */
@@ -41,7 +41,7 @@ public class IconLoader extends LoggingSwingWorker<Icon, Void> {
41 41
     /** Category this icon will be used for. */
42 42
     private final CategoryLabel label;
43 43
     /** The event bus to post errors to. */
44
-    private final EventBus eventBus;
44
+    private final MBassador eventBus;
45 45
     /** Icon to load. */
46 46
     private final String icon;
47 47
     /** Icon manager. */
@@ -56,7 +56,7 @@ public class IconLoader extends LoggingSwingWorker<Icon, Void> {
56 56
      * @param label       Label to load category for
57 57
      * @param icon        Icon to load
58 58
      */
59
-    public IconLoader(final IconManager iconManager, final EventBus eventBus,
59
+    public IconLoader(final IconManager iconManager, final MBassador eventBus,
60 60
             final CategoryLabel label, final String icon) {
61 61
         super(eventBus);
62 62
         this.iconManager = iconManager;
@@ -77,7 +77,7 @@ public class IconLoader extends LoggingSwingWorker<Icon, Void> {
77 77
         } catch (InterruptedException ex) {
78 78
             //Ignore
79 79
         } catch (ExecutionException ex) {
80
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, ex, ex.getMessage(), ""));
80
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, ex, ex.getMessage(), ""));
81 81
         }
82 82
 
83 83
     }

+ 3
- 3
src/com/dmdirc/addons/ui_swing/dialogs/prefs/PreferencesListCellRenderer.java Ver arquivo

@@ -25,7 +25,7 @@ package com.dmdirc.addons.ui_swing.dialogs.prefs;
25 25
 import com.dmdirc.config.prefs.PreferencesCategory;
26 26
 import com.dmdirc.ui.IconManager;
27 27
 
28
-import com.google.common.eventbus.EventBus;
28
+import net.engio.mbassy.bus.MBassador;
29 29
 
30 30
 import java.awt.Component;
31 31
 import java.awt.Font;
@@ -51,7 +51,7 @@ public class PreferencesListCellRenderer extends JLabel implements
51 51
     /** Label map. */
52 52
     private final Map<PreferencesCategory, JLabel> labelMap;
53 53
     /** The event bus to post errors to. */
54
-    private final EventBus eventBus;
54
+    private final MBassador eventBus;
55 55
 
56 56
     /**
57 57
      * Instantiates a new prefs list cell renderer.
@@ -60,7 +60,7 @@ public class PreferencesListCellRenderer extends JLabel implements
60 60
      * @param eventBus    The event bus to post errors to
61 61
      * @param numCats     Number of categories in the list
62 62
      */
63
-    public PreferencesListCellRenderer(final IconManager iconManager, final EventBus eventBus,
63
+    public PreferencesListCellRenderer(final IconManager iconManager, final MBassador eventBus,
64 64
             final int numCats) {
65 65
         labelMap = new HashMap<>();
66 66
         this.numCats = numCats;

+ 5
- 5
src/com/dmdirc/addons/ui_swing/dialogs/prefs/PrefsCategoryLoader.java Ver arquivo

@@ -33,8 +33,6 @@ import com.dmdirc.config.prefs.PreferencesType;
33 33
 import com.dmdirc.events.UserErrorEvent;
34 34
 import com.dmdirc.logger.ErrorLevel;
35 35
 
36
-import com.google.common.eventbus.EventBus;
37
-
38 36
 import java.util.concurrent.Callable;
39 37
 import java.util.concurrent.ExecutionException;
40 38
 
@@ -47,6 +45,8 @@ import javax.swing.UIManager;
47 45
 import net.miginfocom.layout.PlatformDefaults;
48 46
 import net.miginfocom.swing.MigLayout;
49 47
 
48
+import net.engio.mbassy.bus.MBassador;
49
+
50 50
 /**
51 51
  * Loads a preferences panel for a specified preferences category in the background.
52 52
  */
@@ -70,7 +70,7 @@ public class PrefsCategoryLoader extends LoggingSwingWorker<JPanel, Object> {
70 70
     /** Prefs component factory instance. */
71 71
     private final PrefsComponentFactory factory;
72 72
     /** The event bus to post the errors to. */
73
-    private final EventBus eventBus;
73
+    private final MBassador eventBus;
74 74
 
75 75
     /**
76 76
      * Instantiates a new preferences category loader.
@@ -81,7 +81,7 @@ public class PrefsCategoryLoader extends LoggingSwingWorker<JPanel, Object> {
81 81
      * @param category      Preferences Category to load
82 82
      */
83 83
     public PrefsCategoryLoader(final PrefsComponentFactory factory,
84
-            final EventBus eventBus,
84
+            final MBassador eventBus,
85 85
             final CategoryPanel categoryPanel,
86 86
             final PreferencesCategory category) {
87 87
         super(eventBus);
@@ -125,7 +125,7 @@ public class PrefsCategoryLoader extends LoggingSwingWorker<JPanel, Object> {
125 125
         } catch (InterruptedException ex) {
126 126
             panel = errorCategory;
127 127
         } catch (ExecutionException ex) {
128
-            eventBus.post(new UserErrorEvent(ErrorLevel.MEDIUM, ex,
128
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.MEDIUM, ex,
129 129
                     "Error loading prefs panel", ""));
130 130
             panel = errorCategory;
131 131
         }

+ 6
- 6
src/com/dmdirc/addons/ui_swing/dialogs/prefs/SwingPreferencesDialog.java Ver arquivo

@@ -37,8 +37,6 @@ import com.dmdirc.events.UserErrorEvent;
37 37
 import com.dmdirc.logger.ErrorLevel;
38 38
 import com.dmdirc.ui.IconManager;
39 39
 
40
-import com.google.common.eventbus.EventBus;
41
-
42 40
 import java.awt.Window;
43 41
 import java.awt.event.ActionEvent;
44 42
 import java.awt.event.ActionListener;
@@ -60,6 +58,8 @@ import javax.swing.event.ListSelectionListener;
60 58
 
61 59
 import net.miginfocom.swing.MigLayout;
62 60
 
61
+import net.engio.mbassy.bus.MBassador;
62
+
63 63
 /**
64 64
  * Allows the user to modify global client preferences.
65 65
  */
@@ -85,7 +85,7 @@ public final class SwingPreferencesDialog extends StandardDialog implements
85 85
     /** Icon manager to retrieve icons from. */
86 86
     private final IconManager iconManager;
87 87
     /** The event bus to post errors to. */
88
-    private final EventBus eventBus;
88
+    private final MBassador eventBus;
89 89
 
90 90
     /**
91 91
      * Creates a new instance of SwingPreferencesDialog.
@@ -104,7 +104,7 @@ public final class SwingPreferencesDialog extends StandardDialog implements
104 104
             @ForSettings final DialogProvider<SwingRestartDialog> restartDialogProvider,
105 105
             final Provider<PreferencesDialogModel> dialogModelProvider,
106 106
             final Provider<CategoryPanel> categoryPanelProvider,
107
-            final EventBus eventBus) {
107
+            final MBassador eventBus) {
108 108
         super(parentWindow, ModalityType.MODELESS);
109 109
 
110 110
         this.iconManager = iconManager;
@@ -124,7 +124,7 @@ public final class SwingPreferencesDialog extends StandardDialog implements
124 124
                     prefsManager = dialogModelProvider.get();
125 125
                 } catch (IllegalArgumentException ex) {
126 126
                     mainPanel.setError(ex.getMessage());
127
-                    eventBus.post(new UserErrorEvent(ErrorLevel.HIGH, ex,
127
+                    eventBus.publishAsync(new UserErrorEvent(ErrorLevel.HIGH, ex,
128 128
                             "Unable to load the preferences dialog", ""));
129 129
                 }
130 130
                 return prefsManager;
@@ -141,7 +141,7 @@ public final class SwingPreferencesDialog extends StandardDialog implements
141 141
                     } catch (InterruptedException ex) {
142 142
                         //Ignore
143 143
                     } catch (ExecutionException ex) {
144
-                        eventBus.post(new UserErrorEvent(ErrorLevel.MEDIUM, ex, ex.getMessage(), ""));
144
+                        eventBus.publishAsync(new UserErrorEvent(ErrorLevel.MEDIUM, ex, ex.getMessage(), ""));
145 145
                     }
146 146
                 }
147 147
             }

+ 5
- 5
src/com/dmdirc/addons/ui_swing/dialogs/prefs/UpdateConfigPanel.java Ver arquivo

@@ -36,8 +36,6 @@ import com.dmdirc.updater.UpdateChannel;
36 36
 import com.dmdirc.updater.UpdateChecker;
37 37
 import com.dmdirc.updater.manager.CachingUpdateManager;
38 38
 
39
-import com.google.common.eventbus.EventBus;
40
-
41 39
 import java.awt.event.ActionEvent;
42 40
 import java.awt.event.ActionListener;
43 41
 
@@ -52,6 +50,8 @@ import javax.swing.JScrollPane;
52 50
 
53 51
 import net.miginfocom.swing.MigLayout;
54 52
 
53
+import net.engio.mbassy.bus.MBassador;
54
+
55 55
 /**
56 56
  * Updates configuration UI.
57 57
  */
@@ -79,7 +79,7 @@ public class UpdateConfigPanel extends JPanel implements ActionListener,
79 79
     /** Controller to pass to the update checker. */
80 80
     private final IdentityController identityController;
81 81
     /** The event bus to post errors to. */
82
-    private final EventBus eventBus;
82
+    private final MBassador eventBus;
83 83
 
84 84
     /**
85 85
      * Instantiates a new update config panel.
@@ -96,7 +96,7 @@ public class UpdateConfigPanel extends JPanel implements ActionListener,
96 96
             @GlobalConfig final AggregateConfigProvider globalConfig,
97 97
             final CachingUpdateManager updateManager,
98 98
             final IdentityController identityController,
99
-            final EventBus eventBus) {
99
+            final MBassador eventBus) {
100 100
         this.userConfig = userConfig;
101 101
         this.globalConfig = globalConfig;
102 102
         this.updateManager = updateManager;
@@ -141,7 +141,7 @@ public class UpdateConfigPanel extends JPanel implements ActionListener,
141 141
         try {
142 142
             channel = UpdateChannel.valueOf(globalConfig.getOption("updater", "channel"));
143 143
         } catch (IllegalArgumentException e) {
144
-            eventBus.post(new UserErrorEvent(ErrorLevel.LOW, e,
144
+            eventBus.publishAsync(new UserErrorEvent(ErrorLevel.LOW, e,
145 145
                     "Invalid setting for update channel, defaulting to none.", ""));
146 146
         }
147 147
         updateChannel.setSelectedItem(channel);

+ 3
- 3
src/com/dmdirc/addons/ui_swing/dialogs/updater/SwingUpdaterDialog.java Ver arquivo

@@ -39,7 +39,7 @@ import com.dmdirc.updater.manager.UpdateManagerListener;
39 39
 import com.dmdirc.updater.manager.UpdateManagerStatus;
40 40
 import com.dmdirc.updater.manager.UpdateStatus;
41 41
 
42
-import com.google.common.eventbus.EventBus;
42
+import net.engio.mbassy.bus.MBassador;
43 43
 
44 44
 import java.awt.Dimension;
45 45
 import java.awt.Window;
@@ -82,7 +82,7 @@ public class SwingUpdaterDialog extends StandardDialog implements
82 82
     /** Provider of restart dialogs. */
83 83
     private final DialogProvider<SwingRestartDialog> restartDialogProvider;
84 84
     /** The event bus to post errors to. */
85
-    private final EventBus eventBus;
85
+    private final MBassador eventBus;
86 86
 
87 87
     /**
88 88
      * Creates a new instance of the updater dialog.
@@ -97,7 +97,7 @@ public class SwingUpdaterDialog extends StandardDialog implements
97 97
             final CachingUpdateManager updateManager,
98 98
             @MainWindow final Window parentWindow,
99 99
             @ForUpdates final DialogProvider<SwingRestartDialog> restartDialogProvider,
100
-            final EventBus eventBus) {
100
+            final MBassador eventBus) {
101 101
         super(parentWindow, ModalityType.MODELESS);
102 102
 
103 103
         this.updateManager = updateManager;

+ 9
- 8
src/com/dmdirc/addons/ui_swing/framemanager/buttonbar/ButtonBar.java Ver arquivo

@@ -44,8 +44,6 @@ import com.dmdirc.ui.Colour;
44 44
 import com.dmdirc.ui.WindowManager;
45 45
 
46 46
 import com.google.common.base.Optional;
47
-import com.google.common.eventbus.EventBus;
48
-import com.google.common.eventbus.Subscribe;
49 47
 
50 48
 import java.awt.Dimension;
51 49
 import java.awt.Insets;
@@ -74,6 +72,9 @@ import javax.swing.SwingUtilities;
74 72
 import net.miginfocom.layout.PlatformDefaults;
75 73
 import net.miginfocom.swing.MigLayout;
76 74
 
75
+import net.engio.mbassy.bus.MBassador;
76
+import net.engio.mbassy.listener.Handler;
77
+
77 78
 /**
78 79
  * The button bar manager is a grid of buttons that presents a manager similar to that used by mIRC.
79 80
  */
@@ -130,13 +131,13 @@ public final class ButtonBar implements FrameManager, ActionListener,
130 131
             @GlobalConfig final AggregateConfigProvider globalConfig,
131 132
             final WindowManager windowManager,
132 133
             final ActiveFrameManager activeFrameManager,
133
-            final EventBus eventBus) {
134
+            final MBassador eventBus) {
134 135
         this.windowFactory = windowFactory;
135 136
         this.globalConfig = globalConfig;
136 137
         this.windowManager = windowManager;
137 138
         this.activeFrameManager = activeFrameManager;
138 139
 
139
-        eventBus.register(this);
140
+        eventBus.subscribe(this);
140 141
 
141 142
         scrollPane = new JScrollPane();
142 143
         scrollPane.setBorder(null);
@@ -332,7 +333,7 @@ public final class ButtonBar implements FrameManager, ActionListener,
332 333
         return true;
333 334
     }
334 335
 
335
-    @Subscribe
336
+    @Handler
336 337
     public void windowAdded(final SwingWindowAddedEvent event) {
337 338
         final TextFrame window = event.getChildWindow();
338 339
         UIUtilities.invokeLater(new Runnable() {
@@ -346,7 +347,7 @@ public final class ButtonBar implements FrameManager, ActionListener,
346 347
         });
347 348
     }
348 349
 
349
-    @Subscribe
350
+    @Handler
350 351
     public void windowDeleted(final SwingWindowDeletedEvent event) {
351 352
         final TextFrame window = event.getChildWindow();
352 353
         UIUtilities.invokeLater(new Runnable() {
@@ -447,7 +448,7 @@ public final class ButtonBar implements FrameManager, ActionListener,
447 448
         });
448 449
     }
449 450
 
450
-    @Subscribe
451
+    @Handler
451 452
     public void iconChanged(final FrameIconChangedEvent event) {
452 453
         UIUtilities.invokeLater(new Runnable() {
453 454
 
@@ -461,7 +462,7 @@ public final class ButtonBar implements FrameManager, ActionListener,
461 462
         });
462 463
     }
463 464
 
464
-    @Subscribe
465
+    @Handler
465 466
     public void nameChanged(final FrameNameChangedEvent event) {
466 467
         UIUtilities.invokeLater(new Runnable() {
467 468
 

+ 8
- 8
src/com/dmdirc/addons/ui_swing/framemanager/ctrltab/CtrlTabWindowManager.java Ver arquivo

@@ -41,9 +41,6 @@ import com.dmdirc.interfaces.config.AggregateConfigProvider;
41 41
 import com.dmdirc.interfaces.ui.Window;
42 42
 import com.dmdirc.logger.ErrorLevel;
43 43
 
44
-import com.google.common.eventbus.EventBus;
45
-import com.google.common.eventbus.Subscribe;
46
-
47 44
 import java.awt.event.KeyEvent;
48 45
 import java.util.HashMap;
49 46
 import java.util.Map;
@@ -57,6 +54,9 @@ import javax.swing.tree.TreeNode;
57 54
 import javax.swing.tree.TreePath;
58 55
 import javax.swing.tree.TreeSelectionModel;
59 56
 
57
+import net.engio.mbassy.bus.MBassador;
58
+import net.engio.mbassy.listener.Handler;
59
+
60 60
 /**
61 61
  * A Window manager to handle ctrl[+shift]+tab switching between windows.
62 62
  */
@@ -72,7 +72,7 @@ public class CtrlTabWindowManager implements SelectionListener {
72 72
     /** Selection model for the tree scroller. */
73 73
     private final TreeSelectionModel selectionModel;
74 74
     /** The event bus to post errors to. */
75
-    private final EventBus eventBus;
75
+    private final MBassador eventBus;
76 76
 
77 77
     /**
78 78
      * Creates a new ctrl tab window manager.
@@ -89,7 +89,7 @@ public class CtrlTabWindowManager implements SelectionListener {
89 89
             final SwingWindowFactory windowFactory,
90 90
             final ActiveFrameManager activeFrameManager,
91 91
             final MainFrame mainFrame,
92
-            final EventBus eventBus) {
92
+            final MBassador eventBus) {
93 93
         this.eventBus = eventBus;
94 94
         nodes = new HashMap<>();
95 95
         model = new TreeViewModel(globalConfig, new TreeViewNode(null, null));
@@ -119,7 +119,7 @@ public class CtrlTabWindowManager implements SelectionListener {
119 119
                                 KeyEvent.CTRL_DOWN_MASK), "nextFrameAction");
120 120
     }
121 121
 
122
-    @Subscribe
122
+    @Handler
123 123
     public void windowAdded(final SwingWindowAddedEvent event) {
124 124
         final TextFrame parent = event.getParentWindow().orNull();
125 125
         final TextFrame window = event.getChildWindow();
@@ -144,7 +144,7 @@ public class CtrlTabWindowManager implements SelectionListener {
144 144
         });
145 145
     }
146 146
 
147
-    @Subscribe
147
+    @Handler
148 148
     public void windowDeleted(final SwingWindowDeletedEvent event) {
149 149
         final TextFrame parent = event.getParentWindow().orNull();
150 150
         final TextFrame window = event.getChildWindow();
@@ -157,7 +157,7 @@ public class CtrlTabWindowManager implements SelectionListener {
157 157
                 }
158 158
                 final TreeViewNode node = nodes.get(window);
159 159
                 if (node.getLevel() == 0) {
160
-                    eventBus.post(new UserErrorEvent(ErrorLevel.MEDIUM,
160
+                    eventBus.publishAsync(new UserErrorEvent(ErrorLevel.MEDIUM,
161 161
                             new IllegalArgumentException(),
162 162
                             "delServer triggered for root node" + node.toString(), ""));
163 163
                 } else {

+ 3
- 3
src/com/dmdirc/addons/ui_swing/framemanager/tree/NodeLabel.java Ver arquivo

@@ -33,7 +33,7 @@ import com.dmdirc.interfaces.NotificationListener;
33 33
 import com.dmdirc.ui.Colour;
34 34
 import com.dmdirc.ui.messages.Styliser;
35 35
 
36
-import com.google.common.eventbus.Subscribe;
36
+import net.engio.mbassy.listener.Handler;
37 37
 
38 38
 import java.awt.Color;
39 39
 import java.awt.Font;
@@ -124,14 +124,14 @@ public class NodeLabel extends JPanel implements SelectionListener,
124 124
         }
125 125
     }
126 126
 
127
-    @Subscribe
127
+    @Handler
128 128
     public void iconChanged(final FrameIconChangedEvent event) {
129 129
         if (equals(window)) {
130 130
             icon.setIcon(window.getIconManager().getIcon(event.getIcon()));
131 131
         }
132 132
     }
133 133
 
134
-    @Subscribe
134
+    @Handler
135 135
     public void nameChanged(final FrameNameChangedEvent event) {
136 136
         if (equals(window)) {
137 137
             text.setText(event.getName());

+ 13
- 13
src/com/dmdirc/addons/ui_swing/framemanager/tree/TreeFrameManager.java Ver arquivo

@@ -45,9 +45,6 @@ import com.dmdirc.ui.Colour;
45 45
 import com.dmdirc.ui.WindowManager;
46 46
 import com.dmdirc.ui.messages.ColourManager;
47 47
 
48
-import com.google.common.eventbus.EventBus;
49
-import com.google.common.eventbus.Subscribe;
50
-
51 48
 import java.awt.Rectangle;
52 49
 import java.awt.event.MouseEvent;
53 50
 import java.io.Serializable;
@@ -68,6 +65,9 @@ import javax.swing.tree.TreePath;
68 65
 
69 66
 import net.miginfocom.swing.MigLayout;
70 67
 
68
+import net.engio.mbassy.bus.MBassador;
69
+import net.engio.mbassy.listener.Handler;
70
+
71 71
 /**
72 72
  * Manages open windows in the application in a tree style view.
73 73
  */
@@ -95,9 +95,9 @@ public class TreeFrameManager implements FrameManager, Serializable, ConfigChang
95 95
     /** Active frame manager. */
96 96
     private final ActiveFrameManager activeFrameManager;
97 97
     /** The event bus to post errors to. */
98
-    private final EventBus eventBus;
98
+    private final MBassador eventBus;
99 99
     /** Swing event bus. */
100
-    private final EventBus swingEventBus;
100
+    private final MBassador swingEventBus;
101 101
 
102 102
     /**
103 103
      * Creates a new instance of the TreeFrameManager.
@@ -119,8 +119,8 @@ public class TreeFrameManager implements FrameManager, Serializable, ConfigChang
119 119
             final ActiveFrameManager activeFrameManager,
120 120
             final SwingWindowFactory windowFactory,
121 121
             @PluginDomain(SwingController.class) final String domain,
122
-            final EventBus eventBus,
123
-            @SwingEventBus final EventBus swingEventBus) {
122
+            final MBassador eventBus,
123
+            @SwingEventBus final MBassador swingEventBus) {
124 124
         this.windowFactory = windowFactory;
125 125
         this.windowManager = windowManager;
126 126
         this.nodes = new HashMap<>();
@@ -178,13 +178,13 @@ public class TreeFrameManager implements FrameManager, Serializable, ConfigChang
178 178
 
179 179
                 setColours();
180 180
 
181
-                swingEventBus.register(TreeFrameManager.this);
181
+                swingEventBus.subscribe(TreeFrameManager.this);
182 182
                 redoTreeView();
183 183
             }
184 184
         });
185 185
     }
186 186
 
187
-    @Subscribe
187
+    @Handler
188 188
     public void doAddWindow(final SwingWindowAddedEvent event) {
189 189
         final TextFrame parent = event.getParentWindow().orNull();
190 190
         final TextFrame window = event.getChildWindow();
@@ -198,7 +198,7 @@ public class TreeFrameManager implements FrameManager, Serializable, ConfigChang
198 198
         }
199 199
     }
200 200
 
201
-    @Subscribe
201
+    @Handler
202 202
     public void doDeleteWindow(final SwingWindowDeletedEvent event) {
203 203
         final TextFrame window = event.getChildWindow();
204 204
         UIUtilities.invokeAndWait(new Runnable() {
@@ -210,14 +210,14 @@ public class TreeFrameManager implements FrameManager, Serializable, ConfigChang
210 210
                 }
211 211
                 final DefaultMutableTreeNode node = nodes.get(window.getContainer());
212 212
                 if (node.getLevel() == 0) {
213
-                    eventBus.post(new UserErrorEvent(ErrorLevel.MEDIUM,
213
+                    eventBus.publishAsync(new UserErrorEvent(ErrorLevel.MEDIUM,
214 214
                             new IllegalArgumentException(),
215 215
                             "delServer triggered for root node" + node.toString(), ""));
216 216
                 } else {
217 217
                     model.removeNodeFromParent(nodes.get(window.getContainer()));
218 218
                 }
219 219
                 synchronized (nodes) {
220
-                    eventBus.unregister(nodes.get(window.getContainer()).getLabel());
220
+                    eventBus.unsubscribe(nodes.get(window.getContainer()).getLabel());
221 221
                     nodes.remove(window.getContainer());
222 222
                 }
223 223
                 window.getContainer().removeNotificationListener(
@@ -239,7 +239,7 @@ public class TreeFrameManager implements FrameManager, Serializable, ConfigChang
239 239
             @Override
240 240
             public void run() {
241 241
                 final NodeLabel label = new NodeLabel(window);
242
-                eventBus.register(label);
242
+                eventBus.subscribe(label);
243 243
                 final TreeViewNode node = new TreeViewNode(label, window);
244 244
                 synchronized (nodes) {
245 245
                     nodes.put(window, node);

+ 7
- 6
src/com/dmdirc/addons/ui_swing/framemanager/windowmenu/WindowMenuFrameManager.java Ver arquivo

@@ -38,8 +38,6 @@ import com.dmdirc.plugins.PluginDomain;
38 38
 import com.dmdirc.ui.IconManager;
39 39
 
40 40
 import com.google.common.base.Optional;
41
-import com.google.common.eventbus.EventBus;
42
-import com.google.common.eventbus.Subscribe;
43 41
 
44 42
 import java.awt.Component;
45 43
 import java.awt.event.ActionEvent;
@@ -60,6 +58,9 @@ import javax.swing.JMenuItem;
60 58
 import javax.swing.JPopupMenu;
61 59
 import javax.swing.JSeparator;
62 60
 
61
+import net.engio.mbassy.bus.MBassador;
62
+import net.engio.mbassy.listener.Handler;
63
+
63 64
 /**
64 65
  * Manages the window menu window list.
65 66
  */
@@ -102,11 +103,11 @@ public class WindowMenuFrameManager extends JMenu implements ActionListener, Sel
102 103
             @GlobalConfig final AggregateConfigProvider globalConfig,
103 104
             @PluginDomain(SwingController.class) final String domain,
104 105
             final ActiveFrameManager activeFrameManager,
105
-            @SwingEventBus final EventBus swingEventBus) {
106
+            @SwingEventBus final MBassador swingEventBus) {
106 107
         this.globalConfig = globalConfig;
107 108
         this.domain = domain;
108 109
         this.activeFrameManager = activeFrameManager;
109
-        swingEventBus.register(this);
110
+        swingEventBus.subscribe(this);
110 111
 
111 112
         menus = Collections.synchronizedMap(
112 113
                 new HashMap<FrameContainer, FrameContainerMenu>());
@@ -145,7 +146,7 @@ public class WindowMenuFrameManager extends JMenu implements ActionListener, Sel
145 146
         closeMenuItem.setEnabled(enabledMenuItems.get());
146 147
     }
147 148
 
148
-    @Subscribe
149
+    @Handler
149 150
     public void windowAdded(final SwingWindowAddedEvent event) {
150 151
         final TextFrame parent = event.getParentWindow().orNull();
151 152
         final TextFrame window = event.getChildWindow();
@@ -218,7 +219,7 @@ public class WindowMenuFrameManager extends JMenu implements ActionListener, Sel
218 219
         checkMenuItems();
219 220
     }
220 221
 
221
-    @Subscribe
222
+    @Handler
222 223
     public void windowDeleted(final SwingWindowDeletedEvent event) {
223 224
         final TextFrame parent = event.getParentWindow().orNull();
224 225
         final TextFrame window = event.getChildWindow();

+ 0
- 0
src/com/dmdirc/addons/ui_swing/injection/DialogModule.java Ver arquivo


Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff

Carregando…
Cancelar
Salvar