ソースを参照

Fix breaking the client actions

Change-Id: I5a904c669d2367d42c5d8da315c30d69beba8cae
Reviewed-on: http://gerrit.dmdirc.com/3259
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Chris Smith <chris@dmdirc.com>
pull/1/head
Greg Holmes 10年前
コミット
cfb3fbaa38

+ 9
- 3
src/com/dmdirc/ChannelEventHandler.java ファイルの表示

@@ -55,7 +55,10 @@ import com.dmdirc.parser.interfaces.callbacks.OtherAwayStateListener;
55 55
 
56 56
 import com.google.common.eventbus.EventBus;
57 57
 
58
+import java.util.ArrayList;
59
+import java.util.Arrays;
58 60
 import java.util.Date;
61
+import java.util.List;
59 62
 
60 63
 /**
61 64
  * Handles events for channel objects.
@@ -127,7 +130,7 @@ public class ChannelEventHandler extends EventHandler implements
127 130
         checkParser(parser);
128 131
 
129 132
         owner.setClients(channel.getChannelClients());
130
-        triggerAction(null, CoreActionType.CHANNEL_GOTNAMES, owner);
133
+        ActionManager.getActionManager().triggerEvent(CoreActionType.CHANNEL_GOTNAMES, null, owner);
131 134
     }
132 135
 
133 136
     /** {@inheritDoc} */
@@ -406,8 +409,11 @@ public class ChannelEventHandler extends EventHandler implements
406 409
 
407 410
     private boolean triggerAction(final String messageType, final ActionType actionType,
408 411
             final Object... args) {
409
-        final StringBuffer buffer = new StringBuffer(messageType);
410
-        return ActionManager.getActionManager().triggerEvent(actionType, buffer, args);
412
+        final List<Object> actionArgs = new ArrayList<>();
413
+        actionArgs.add(owner);
414
+        actionArgs.addAll(Arrays.asList(args));
415
+        return ActionManager.getActionManager().triggerEvent(actionType, new StringBuffer(
416
+                messageType), actionArgs.toArray());
411 417
     }
412 418
 
413 419
 }

+ 5
- 1
src/com/dmdirc/Query.java ファイルの表示

@@ -50,6 +50,7 @@ import com.dmdirc.util.annotations.factory.Factory;
50 50
 import com.dmdirc.util.annotations.factory.Unbound;
51 51
 
52 52
 import java.awt.Toolkit;
53
+import java.util.ArrayList;
53 54
 import java.util.Arrays;
54 55
 import java.util.Date;
55 56
 import java.util.List;
@@ -376,7 +377,10 @@ public class Query extends MessageTarget implements PrivateActionListener,
376 377
     private boolean triggerAction(final String messageType, final ActionType actionType,
377 378
             final Object... args) {
378 379
         final StringBuffer buffer = new StringBuffer(messageType);
379
-        return ActionManager.getActionManager().triggerEvent(actionType, buffer, args);
380
+        final List<Object> actionArgs = new ArrayList<>();
381
+        actionArgs.add(this);
382
+        actionArgs.addAll(Arrays.asList(args));
383
+        return ActionManager.getActionManager().triggerEvent(actionType, buffer, actionArgs.toArray());
380 384
     }
381 385
 
382 386
 }

+ 7
- 1
src/com/dmdirc/ServerEventHandler.java ファイルの表示

@@ -68,7 +68,10 @@ import com.dmdirc.parser.interfaces.callbacks.WallDesyncListener;
68 68
 import com.dmdirc.parser.interfaces.callbacks.WallopListener;
69 69
 import com.dmdirc.parser.interfaces.callbacks.WalluserListener;
70 70
 
71
+import java.util.ArrayList;
72
+import java.util.Arrays;
71 73
 import java.util.Date;
74
+import java.util.List;
72 75
 
73 76
 /**
74 77
  * Handles parser events for a Server object.
@@ -512,7 +515,10 @@ public class ServerEventHandler extends EventHandler implements
512 515
     private boolean triggerAction(final String messageType, final ActionType actionType,
513 516
             final Object... args) {
514 517
         final StringBuffer buffer = new StringBuffer(messageType);
515
-        return ActionManager.getActionManager().triggerEvent(actionType, buffer, args);
518
+        final List<Object> actionArgs = new ArrayList<>();
519
+        actionArgs.add(owner);
520
+        actionArgs.addAll(Arrays.asList(args));
521
+        return ActionManager.getActionManager().triggerEvent(actionType, buffer, actionArgs.toArray());
516 522
     }
517 523
 
518 524
 }

読み込み中…
キャンセル
保存