Преглед на файлове

Merge pull request #47 from csmith/master

Tidy up callbacks some more.
pull/48/head
Greg Holmes преди 9 години
родител
ревизия
779f6fd7ed
променени са 26 файла, в които са добавени 220 реда и са изтрити 153 реда
  1. 68
    11
      common/src/com/dmdirc/parser/common/CallbackManager.java
  2. 4
    27
      common/src/com/dmdirc/parser/common/CallbackObject.java
  3. 11
    21
      common/src/com/dmdirc/parser/common/CallbackObjectSpecific.java
  4. 11
    11
      irc/src/com/dmdirc/parser/irc/IRCParser.java
  5. 1
    1
      irc/src/com/dmdirc/parser/irc/ProcessingManager.java
  6. 2
    1
      irc/src/com/dmdirc/parser/irc/processors/Process004005.java
  7. 3
    1
      irc/src/com/dmdirc/parser/irc/processors/Process464.java
  8. 3
    1
      irc/src/com/dmdirc/parser/irc/processors/ProcessAway.java
  9. 3
    1
      irc/src/com/dmdirc/parser/irc/processors/ProcessInvite.java
  10. 4
    2
      irc/src/com/dmdirc/parser/irc/processors/ProcessJoin.java
  11. 3
    2
      irc/src/com/dmdirc/parser/irc/processors/ProcessKick.java
  12. 5
    3
      irc/src/com/dmdirc/parser/irc/processors/ProcessList.java
  13. 2
    1
      irc/src/com/dmdirc/parser/irc/processors/ProcessListModes.java
  14. 5
    3
      irc/src/com/dmdirc/parser/irc/processors/ProcessMOTD.java
  15. 20
    19
      irc/src/com/dmdirc/parser/irc/processors/ProcessMessage.java
  16. 18
    13
      irc/src/com/dmdirc/parser/irc/processors/ProcessMode.java
  17. 4
    2
      irc/src/com/dmdirc/parser/irc/processors/ProcessNames.java
  18. 4
    2
      irc/src/com/dmdirc/parser/irc/processors/ProcessNick.java
  19. 3
    1
      irc/src/com/dmdirc/parser/irc/processors/ProcessNickInUse.java
  20. 3
    1
      irc/src/com/dmdirc/parser/irc/processors/ProcessNoticeAuth.java
  21. 3
    1
      irc/src/com/dmdirc/parser/irc/processors/ProcessPart.java
  22. 3
    2
      irc/src/com/dmdirc/parser/irc/processors/ProcessQuit.java
  23. 3
    1
      irc/src/com/dmdirc/parser/irc/processors/ProcessTopic.java
  24. 5
    3
      irc/src/com/dmdirc/parser/irc/processors/ProcessWallops.java
  25. 6
    3
      irc/src/com/dmdirc/parser/irc/processors/ProcessWho.java
  26. 23
    19
      irc/test/com/dmdirc/parser/irc/IRCParserTest.java

+ 68
- 11
common/src/com/dmdirc/parser/common/CallbackManager.java Целия файл

@@ -24,13 +24,78 @@ package com.dmdirc.parser.common;
24 24
 
25 25
 import com.dmdirc.parser.interfaces.Parser;
26 26
 import com.dmdirc.parser.interfaces.SpecificCallback;
27
-import com.dmdirc.parser.interfaces.callbacks.*; //NOPMD
27
+import com.dmdirc.parser.interfaces.callbacks.AuthNoticeListener;
28
+import com.dmdirc.parser.interfaces.callbacks.AwayStateListener;
29
+import com.dmdirc.parser.interfaces.callbacks.CallbackInterface;
30
+import com.dmdirc.parser.interfaces.callbacks.ChannelActionListener;
31
+import com.dmdirc.parser.interfaces.callbacks.ChannelCtcpListener;
32
+import com.dmdirc.parser.interfaces.callbacks.ChannelCtcpReplyListener;
33
+import com.dmdirc.parser.interfaces.callbacks.ChannelJoinListener;
34
+import com.dmdirc.parser.interfaces.callbacks.ChannelKickListener;
35
+import com.dmdirc.parser.interfaces.callbacks.ChannelListModeListener;
36
+import com.dmdirc.parser.interfaces.callbacks.ChannelMessageListener;
37
+import com.dmdirc.parser.interfaces.callbacks.ChannelModeChangeListener;
38
+import com.dmdirc.parser.interfaces.callbacks.ChannelModeMessageListener;
39
+import com.dmdirc.parser.interfaces.callbacks.ChannelModeNoticeListener;
40
+import com.dmdirc.parser.interfaces.callbacks.ChannelNamesListener;
41
+import com.dmdirc.parser.interfaces.callbacks.ChannelNickChangeListener;
42
+import com.dmdirc.parser.interfaces.callbacks.ChannelNonUserModeChangeListener;
43
+import com.dmdirc.parser.interfaces.callbacks.ChannelNoticeListener;
44
+import com.dmdirc.parser.interfaces.callbacks.ChannelOtherAwayStateListener;
45
+import com.dmdirc.parser.interfaces.callbacks.ChannelPartListener;
46
+import com.dmdirc.parser.interfaces.callbacks.ChannelQuitListener;
47
+import com.dmdirc.parser.interfaces.callbacks.ChannelSelfJoinListener;
48
+import com.dmdirc.parser.interfaces.callbacks.ChannelSingleModeChangeListener;
49
+import com.dmdirc.parser.interfaces.callbacks.ChannelTopicListener;
50
+import com.dmdirc.parser.interfaces.callbacks.ChannelUserModeChangeListener;
51
+import com.dmdirc.parser.interfaces.callbacks.CompositionStateChangeListener;
52
+import com.dmdirc.parser.interfaces.callbacks.ConnectErrorListener;
53
+import com.dmdirc.parser.interfaces.callbacks.DataInListener;
54
+import com.dmdirc.parser.interfaces.callbacks.DataOutListener;
55
+import com.dmdirc.parser.interfaces.callbacks.DebugInfoListener;
56
+import com.dmdirc.parser.interfaces.callbacks.ErrorInfoListener;
57
+import com.dmdirc.parser.interfaces.callbacks.GroupListEndListener;
58
+import com.dmdirc.parser.interfaces.callbacks.GroupListEntryListener;
59
+import com.dmdirc.parser.interfaces.callbacks.GroupListStartListener;
60
+import com.dmdirc.parser.interfaces.callbacks.InviteListener;
61
+import com.dmdirc.parser.interfaces.callbacks.MotdEndListener;
62
+import com.dmdirc.parser.interfaces.callbacks.MotdLineListener;
63
+import com.dmdirc.parser.interfaces.callbacks.MotdStartListener;
64
+import com.dmdirc.parser.interfaces.callbacks.NetworkDetectedListener;
65
+import com.dmdirc.parser.interfaces.callbacks.NickChangeListener;
66
+import com.dmdirc.parser.interfaces.callbacks.NickInUseListener;
67
+import com.dmdirc.parser.interfaces.callbacks.NumericListener;
68
+import com.dmdirc.parser.interfaces.callbacks.OtherAwayStateListener;
69
+import com.dmdirc.parser.interfaces.callbacks.PasswordRequiredListener;
70
+import com.dmdirc.parser.interfaces.callbacks.PingFailureListener;
71
+import com.dmdirc.parser.interfaces.callbacks.PingSentListener;
72
+import com.dmdirc.parser.interfaces.callbacks.PingSuccessListener;
73
+import com.dmdirc.parser.interfaces.callbacks.PrivateActionListener;
74
+import com.dmdirc.parser.interfaces.callbacks.PrivateCtcpListener;
75
+import com.dmdirc.parser.interfaces.callbacks.PrivateCtcpReplyListener;
76
+import com.dmdirc.parser.interfaces.callbacks.PrivateMessageListener;
77
+import com.dmdirc.parser.interfaces.callbacks.PrivateNoticeListener;
78
+import com.dmdirc.parser.interfaces.callbacks.QuitListener;
79
+import com.dmdirc.parser.interfaces.callbacks.ServerErrorListener;
80
+import com.dmdirc.parser.interfaces.callbacks.ServerNoticeListener;
81
+import com.dmdirc.parser.interfaces.callbacks.ServerReadyListener;
82
+import com.dmdirc.parser.interfaces.callbacks.SocketCloseListener;
83
+import com.dmdirc.parser.interfaces.callbacks.UnknownActionListener;
84
+import com.dmdirc.parser.interfaces.callbacks.UnknownCtcpListener;
85
+import com.dmdirc.parser.interfaces.callbacks.UnknownCtcpReplyListener;
86
+import com.dmdirc.parser.interfaces.callbacks.UnknownMessageListener;
87
+import com.dmdirc.parser.interfaces.callbacks.UnknownNoticeListener;
88
+import com.dmdirc.parser.interfaces.callbacks.UnknownServerNoticeListener;
89
+import com.dmdirc.parser.interfaces.callbacks.UserModeChangeListener;
90
+import com.dmdirc.parser.interfaces.callbacks.UserModeDiscoveryListener;
91
+import com.dmdirc.parser.interfaces.callbacks.WallDesyncListener;
92
+import com.dmdirc.parser.interfaces.callbacks.WallopListener;
93
+import com.dmdirc.parser.interfaces.callbacks.WalluserListener;
28 94
 
29 95
 import java.lang.reflect.InvocationHandler;
30 96
 import java.lang.reflect.Method;
31 97
 import java.lang.reflect.Proxy;
32 98
 import java.util.Collections;
33
-import java.util.Date;
34 99
 import java.util.HashMap;
35 100
 import java.util.Map;
36 101
 
@@ -302,15 +367,7 @@ public class CallbackManager {
302 367
 
303 368
         @Override
304 369
         public Object invoke(final Object proxy, final Method method, final Object[] args) {
305
-            final Object[] modifiedArgs = new Object[args.length - 2];
306
-            System.arraycopy(args, 2, modifiedArgs, 0, args.length - 2);
307
-
308
-            if (args[1] == null) {
309
-                getCallbackType(callback).call(modifiedArgs);
310
-            } else {
311
-                getCallbackType(callback).call((Date) args[1], modifiedArgs);
312
-            }
313
-
370
+            getCallbackType(callback).call(args);
314 371
             return null;
315 372
         }
316 373
 

+ 4
- 27
common/src/com/dmdirc/parser/common/CallbackObject.java Целия файл

@@ -103,7 +103,7 @@ public class CallbackObject {
103 103
      * @param errorInfo ParserError object to pass as error.
104 104
      */
105 105
     protected final void callErrorInfo(final ParserError errorInfo) {
106
-        myManager.getCallback(ErrorInfoListener.class).onErrorInfo(null, null, errorInfo);
106
+        myManager.getCallback(ErrorInfoListener.class).onErrorInfo(myParser, new Date(), errorInfo);
107 107
     }
108 108
 
109 109
     /**
@@ -139,33 +139,13 @@ public class CallbackObject {
139 139
      * specified in the callback's interface, or an error will be raised.
140 140
      *
141 141
      * @param args The arguments to pass to the callback implementation
142
-     * @return True if a method was called, false otherwise
143 142
      */
144
-    public boolean call(final Object... args) {
145
-        return call(new Date(), args);
146
-    }
147
-
148
-    /**
149
-     * Actually calls this callback. The specified arguments must match those
150
-     * specified in the callback's interface, or an error will be raised.
151
-     *
152
-     * @param date The date/time at which the event occured
153
-     * @param args The arguments to pass to the callback implementation
154
-     * @return True if a method was called, false otherwise
155
-     */
156
-    public boolean call(final Date date, final Object... args) {
157
-        boolean bResult = false;
158
-
159
-        final Object[] newArgs = new Object[args.length + 2];
160
-        System.arraycopy(args, 0, newArgs, 2, args.length);
161
-        newArgs[0] = myParser;
162
-        newArgs[1] = date;
163
-
164
-        createFakeArgs(newArgs);
143
+    public void call(final Object... args) {
144
+        createFakeArgs(args);
165 145
 
166 146
         for (CallbackInterface iface : callbackInfo) {
167 147
             try {
168
-                type.getMethods()[0].invoke(iface, newArgs);
148
+                type.getMethods()[0].invoke(iface, args);
169 149
             } catch (SecurityException | IllegalAccessException |
170 150
                     IllegalArgumentException | InvocationTargetException e) {
171 151
                 if (getType().equals(ErrorInfoListener.class)) {
@@ -179,10 +159,7 @@ public class CallbackObject {
179 159
                     callErrorInfo(ei);
180 160
                 }
181 161
             }
182
-            bResult = true;
183 162
         }
184
-
185
-        return bResult;
186 163
     }
187 164
 
188 165
     /**

+ 11
- 21
common/src/com/dmdirc/parser/common/CallbackObjectSpecific.java Целия файл

@@ -28,7 +28,6 @@ import com.dmdirc.parser.interfaces.SpecificCallback;
28 28
 import com.dmdirc.parser.interfaces.callbacks.CallbackInterface;
29 29
 
30 30
 import java.util.ArrayList;
31
-import java.util.Date;
32 31
 import java.util.HashMap;
33 32
 import java.util.Map;
34 33
 
@@ -136,40 +135,31 @@ public class CallbackObjectSpecific extends CallbackObject {
136 135
     }
137 136
 
138 137
     @Override
139
-    public boolean call(final Date date, final Object... args) {
140
-        boolean bResult = false;
141
-
142
-        final Object[] newArgs = new Object[args.length + 2];
143
-        System.arraycopy(args, 0, newArgs, 2, args.length);
144
-        newArgs[0] = myParser;
145
-        newArgs[1] = date;
146
-
147
-        createFakeArgs(newArgs);
138
+    public void call(final Object... args) {
139
+        createFakeArgs(args);
148 140
 
149 141
         for (CallbackInterface iface : new ArrayList<>(callbackInfo)) {
150 142
             if (type.isAnnotationPresent(SpecificCallback.class)
151
-                    && ((args[0] instanceof ClientInfo
152
-                    && !isValidUser(iface, ((ClientInfo) args[0]).getHostname()))
153
-                    || (args[0] instanceof ChannelInfo
154
-                    && !isValidChan(iface, (ChannelInfo) args[0]))
155
-                    || (!(args[0] instanceof ClientInfo
156
-                    || args[0] instanceof ChannelInfo)
143
+                    && (args[2] instanceof ClientInfo
144
+                    && !isValidUser(iface, ((ClientInfo) args[2]).getHostname())
145
+                    || args[2] instanceof ChannelInfo
146
+                    && !isValidChan(iface, (ChannelInfo) args[2])
147
+                    || !(args[2] instanceof ClientInfo
148
+                    || args[2] instanceof ChannelInfo)
157 149
                     && args[args.length - 1] instanceof String
158
-                    && !isValidUser(iface, (String) args[args.length - 1])))) {
150
+                    && !isValidUser(iface, (String) args[args.length - 1]))) {
159 151
                 continue;
160 152
             }
161 153
 
162 154
             try {
163
-                type.getMethods()[0].invoke(iface, newArgs);
155
+                type.getMethods()[0].invoke(iface, args);
164 156
             } catch (ReflectiveOperationException e) {
165 157
                 final ParserError ei = new ParserError(ParserError.ERROR_ERROR,
166
-                        "Exception in callback (" + e.getMessage() + ")",
158
+                        "Exception in callback (" + e.getMessage() + ')',
167 159
                         myParser.getLastLine());
168 160
                 ei.setException(e);
169 161
                 callErrorInfo(ei);
170 162
             }
171
-            bResult = true;
172 163
         }
173
-        return bResult;
174 164
     }
175 165
 }

+ 11
- 11
irc/src/com/dmdirc/parser/irc/IRCParser.java Целия файл

@@ -537,7 +537,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
537 537
      * @param message The error message
538 538
      */
539 539
     protected void callServerError(final String message) {
540
-        getCallback(ServerErrorListener.class).onServerError(null, null, message);
540
+        getCallback(ServerErrorListener.class).onServerError(this, new Date(), message);
541 541
     }
542 542
 
543 543
     /**
@@ -547,7 +547,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
547 547
      * @param data Incoming Line.
548 548
      */
549 549
     protected void callDataIn(final String data) {
550
-        getCallback(DataInListener.class).onDataIn(null, null, data);
550
+        getCallback(DataInListener.class).onDataIn(this, new Date(), data);
551 551
     }
552 552
 
553 553
     /**
@@ -558,7 +558,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
558 558
      * @see DataOutListener
559 559
      */
560 560
     protected void callDataOut(final String data, final boolean fromParser) {
561
-        getCallback(DataOutListener.class).onDataOut(null, null, data, fromParser);
561
+        getCallback(DataOutListener.class).onDataOut(this, new Date(), data, fromParser);
562 562
     }
563 563
 
564 564
     /**
@@ -581,7 +581,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
581 581
      * @param data Debugging Information
582 582
      */
583 583
     protected void callDebugInfo(final int level, final String data) {
584
-        getCallback(DebugInfoListener.class).onDebugInfo(null, null, level, data);
584
+        getCallback(DebugInfoListener.class).onDebugInfo(this, new Date(), level, data);
585 585
     }
586 586
 
587 587
     /**
@@ -591,7 +591,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
591 591
      * @param errorInfo ParserError object representing the error.
592 592
      */
593 593
     public void callErrorInfo(final ParserError errorInfo) {
594
-        getCallback(ErrorInfoListener.class).onErrorInfo(null, null, errorInfo);
594
+        getCallback(ErrorInfoListener.class).onErrorInfo(this, new Date(), errorInfo);
595 595
     }
596 596
 
597 597
     /**
@@ -601,7 +601,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
601 601
      * @param errorInfo ParserError object representing the error.
602 602
      */
603 603
     protected void callConnectError(final ParserError errorInfo) {
604
-        getCallback(ConnectErrorListener.class).onConnectError(null, null, errorInfo);
604
+        getCallback(ConnectErrorListener.class).onConnectError(this, new Date(), errorInfo);
605 605
     }
606 606
 
607 607
     /**
@@ -610,7 +610,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
610 610
      * @see SocketCloseListener
611 611
      */
612 612
     protected void callSocketClosed() {
613
-        getCallback(SocketCloseListener.class).onSocketClosed(null, null);
613
+        getCallback(SocketCloseListener.class).onSocketClosed(this, new Date());
614 614
     }
615 615
 
616 616
     /**
@@ -619,7 +619,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
619 619
      * @see PingFailureListener
620 620
      */
621 621
     protected void callPingFailed() {
622
-        getCallbackManager().getCallback(PingFailureListener.class).onPingFailed(null, null);
622
+        getCallbackManager().getCallback(PingFailureListener.class).onPingFailed(this, new Date());
623 623
     }
624 624
 
625 625
     /**
@@ -628,7 +628,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
628 628
      * @see PingSentListener
629 629
      */
630 630
     protected void callPingSent() {
631
-        getCallback(PingSentListener.class).onPingSent(null, null);
631
+        getCallback(PingSentListener.class).onPingSent(this, new Date());
632 632
     }
633 633
 
634 634
     /**
@@ -637,7 +637,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
637 637
      * @see PingSuccessListener
638 638
      */
639 639
     protected void callPingSuccess() {
640
-        getCallback(PingSuccessListener.class).onPingSuccess(null, null);
640
+        getCallback(PingSuccessListener.class).onPingSuccess(this, new Date());
641 641
     }
642 642
 
643 643
     /**
@@ -662,7 +662,7 @@ public class IRCParser extends BaseSocketAwareParser implements SecureParser, En
662 662
             parseChanModes();
663 663
         }
664 664
 
665
-        getCallback(ServerReadyListener.class).onServerReady(null, null);
665
+        getCallback(ServerReadyListener.class).onServerReady(this, new Date());
666 666
     }
667 667
 
668 668
     //---------------------------------------------------------------------------

+ 1
- 1
irc/src/com/dmdirc/parser/irc/ProcessingManager.java Целия файл

@@ -273,6 +273,6 @@ public class ProcessingManager {
273 273
      */
274 274
     protected void callNumeric(final int numeric, final String... token) {
275 275
         parser.getCallbackManager().getCallback(NumericListener.class)
276
-                .onNumeric(null, null, numeric, token);
276
+                .onNumeric(parser, new Date(), numeric, token);
277 277
     }
278 278
 }

+ 2
- 1
irc/src/com/dmdirc/parser/irc/processors/Process004005.java Целия файл

@@ -31,6 +31,7 @@ import com.dmdirc.parser.irc.IRCParser;
31 31
 import com.dmdirc.parser.irc.ProcessingManager;
32 32
 import com.dmdirc.parser.irc.ProcessorNotFoundException;
33 33
 
34
+import java.util.Date;
34 35
 import java.util.regex.Matcher;
35 36
 import java.util.regex.Pattern;
36 37
 
@@ -95,7 +96,7 @@ public class Process004005 extends IRCProcessor {
95 96
         final String ircdType = parser.getServerSoftwareType();
96 97
 
97 98
         getCallback(NetworkDetectedListener.class)
98
-                .onGotNetwork(null, null, networkName, ircdVersion, ircdType);
99
+                .onGotNetwork(parser, new Date(), networkName, ircdVersion, ircdType);
99 100
     }
100 101
 
101 102
     /**

+ 3
- 1
irc/src/com/dmdirc/parser/irc/processors/Process464.java Целия файл

@@ -26,6 +26,8 @@ import com.dmdirc.parser.interfaces.callbacks.PasswordRequiredListener;
26 26
 import com.dmdirc.parser.irc.IRCParser;
27 27
 import com.dmdirc.parser.irc.ProcessingManager;
28 28
 
29
+import java.util.Date;
30
+
29 31
 /**
30 32
  * Process a 464 message.
31 33
  */
@@ -68,6 +70,6 @@ public class Process464 extends IRCProcessor {
68 70
      * @see PasswordRequiredListener
69 71
      */
70 72
     protected void callPasswordRequired() {
71
-        getCallback(PasswordRequiredListener.class).onPasswordRequired(null, null);
73
+        getCallback(PasswordRequiredListener.class).onPasswordRequired(parser, new Date());
72 74
     }
73 75
 }

+ 3
- 1
irc/src/com/dmdirc/parser/irc/processors/ProcessAway.java Целия файл

@@ -27,6 +27,8 @@ import com.dmdirc.parser.irc.IRCClientInfo;
27 27
 import com.dmdirc.parser.irc.IRCParser;
28 28
 import com.dmdirc.parser.irc.ProcessingManager;
29 29
 
30
+import java.util.Date;
31
+
30 32
 /**
31 33
  * Process an Away/Back message.
32 34
  */
@@ -91,7 +93,7 @@ public class ProcessAway extends IRCProcessor {
91 93
     protected void callAwayState(final AwayState oldState, final AwayState currentState,
92 94
             final String reason) {
93 95
         getCallback(AwayStateListener.class)
94
-                .onAwayState(null, null, oldState, currentState, reason);
96
+                .onAwayState(parser, new Date(), oldState, currentState, reason);
95 97
     }
96 98
 
97 99
     /**

+ 3
- 1
irc/src/com/dmdirc/parser/irc/processors/ProcessInvite.java Целия файл

@@ -26,6 +26,8 @@ import com.dmdirc.parser.interfaces.callbacks.InviteListener;
26 26
 import com.dmdirc.parser.irc.IRCParser;
27 27
 import com.dmdirc.parser.irc.ProcessingManager;
28 28
 
29
+import java.util.Date;
30
+
29 31
 /**
30 32
  * Process an Invite Request.
31 33
  */
@@ -63,7 +65,7 @@ public class ProcessInvite extends IRCProcessor {
63 65
      * @param channel The name of the channel we were invited to
64 66
      */
65 67
     protected void callInvite(final String userHost, final String channel) {
66
-        getCallback(InviteListener.class).onInvite(null, null, userHost, channel);
68
+        getCallback(InviteListener.class).onInvite(parser, new Date(), userHost, channel);
67 69
     }
68 70
 
69 71
     /**

+ 4
- 2
irc/src/com/dmdirc/parser/irc/processors/ProcessJoin.java Целия файл

@@ -39,6 +39,7 @@ import com.dmdirc.parser.irc.ProcessingManager;
39 39
 import com.dmdirc.parser.irc.ProcessorNotFoundException;
40 40
 
41 41
 import java.util.Arrays;
42
+import java.util.Date;
42 43
 
43 44
 /**
44 45
  * Process a channel join.
@@ -182,7 +183,8 @@ public class ProcessJoin extends IRCProcessor {
182 183
      */
183 184
     protected void callChannelJoin(final ChannelInfo cChannel,
184 185
             final ChannelClientInfo cChannelClient) {
185
-        getCallback(ChannelJoinListener.class).onChannelJoin(null, null, cChannel, cChannelClient);
186
+        getCallback(ChannelJoinListener.class).onChannelJoin(parser, new Date(), cChannel,
187
+                cChannelClient);
186 188
     }
187 189
 
188 190
     /**
@@ -192,7 +194,7 @@ public class ProcessJoin extends IRCProcessor {
192 194
      * @param cChannel Channel Object
193 195
      */
194 196
     protected void callChannelSelfJoin(final ChannelInfo cChannel) {
195
-        getCallback(ChannelSelfJoinListener.class).onChannelSelfJoin(null, null, cChannel);
197
+        getCallback(ChannelSelfJoinListener.class).onChannelSelfJoin(parser, new Date(), cChannel);
196 198
     }
197 199
 
198 200
     /**

+ 3
- 2
irc/src/com/dmdirc/parser/irc/processors/ProcessKick.java Целия файл

@@ -33,6 +33,7 @@ import com.dmdirc.parser.irc.IRCParser;
33 33
 import com.dmdirc.parser.irc.ProcessingManager;
34 34
 
35 35
 import java.util.Arrays;
36
+import java.util.Date;
36 37
 
37 38
 /**
38 39
  * Process a channel kick.
@@ -121,8 +122,8 @@ public class ProcessKick extends IRCProcessor {
121 122
             final ChannelClientInfo cKickedClient, final ChannelClientInfo cKickedByClient,
122 123
             final String sReason, final String sKickedByHost) {
123 124
         getCallback(ChannelKickListener.class)
124
-                .onChannelKick(null, null, cChannel, cKickedClient, cKickedByClient, sReason,
125
-                        sKickedByHost);
125
+                .onChannelKick(parser, new Date(), cChannel, cKickedClient, cKickedByClient,
126
+                        sReason, sKickedByHost);
126 127
     }
127 128
 
128 129
     /**

+ 5
- 3
irc/src/com/dmdirc/parser/irc/processors/ProcessList.java Целия файл

@@ -28,6 +28,8 @@ import com.dmdirc.parser.interfaces.callbacks.GroupListStartListener;
28 28
 import com.dmdirc.parser.irc.IRCParser;
29 29
 import com.dmdirc.parser.irc.ProcessingManager;
30 30
 
31
+import java.util.Date;
32
+
31 33
 /**
32 34
  * Process a list response.
33 35
  */
@@ -56,15 +58,15 @@ public class ProcessList extends IRCProcessor {
56 58
         // :port80b.se.quakenet.org 323 MD87 :End of /LIST
57 59
         switch (sParam) {
58 60
             case "321":
59
-                getCallback(GroupListStartListener.class).onGroupListStart(null, null);
61
+                getCallback(GroupListStartListener.class).onGroupListStart(parser, new Date());
60 62
                 break;
61 63
             case "322":
62 64
                 getCallback(GroupListEntryListener.class)
63
-                        .onGroupListEntry(null, null, token[3], Integer.parseInt(token[4]),
65
+                        .onGroupListEntry(parser, new Date(), token[3], Integer.parseInt(token[4]),
64 66
                                 token[5]);
65 67
                 break;
66 68
             case "323":
67
-                getCallback(GroupListEndListener.class).onGroupListEnd(null, null);
69
+                getCallback(GroupListEndListener.class).onGroupListEnd(parser, new Date());
68 70
                 break;
69 71
         }
70 72
     }

+ 2
- 1
irc/src/com/dmdirc/parser/irc/processors/ProcessListModes.java Целия файл

@@ -33,6 +33,7 @@ import com.dmdirc.parser.irc.ServerTypeGroup;
33 33
 
34 34
 import java.util.Arrays;
35 35
 import java.util.Collection;
36
+import java.util.Date;
36 37
 import java.util.Queue;
37 38
 
38 39
 /**
@@ -295,6 +296,6 @@ public class ProcessListModes extends IRCProcessor {
295 296
      */
296 297
     protected void callChannelGotListModes(final ChannelInfo cChannel, final char mode) {
297 298
         getCallback(ChannelListModeListener.class)
298
-                .onChannelGotListModes(null, null, cChannel, mode);
299
+                .onChannelGotListModes(parser, new Date(), cChannel, mode);
299 300
     }
300 301
 }

+ 5
- 3
irc/src/com/dmdirc/parser/irc/processors/ProcessMOTD.java Целия файл

@@ -28,6 +28,8 @@ import com.dmdirc.parser.interfaces.callbacks.MotdStartListener;
28 28
 import com.dmdirc.parser.irc.IRCParser;
29 29
 import com.dmdirc.parser.irc.ProcessingManager;
30 30
 
31
+import java.util.Date;
32
+
31 33
 /**
32 34
  * Process a MOTD Related Line.
33 35
  */
@@ -72,7 +74,7 @@ public class ProcessMOTD extends IRCProcessor {
72 74
      * @see MotdEndListener
73 75
      */
74 76
     protected void callMOTDEnd(final boolean noMOTD, final String data) {
75
-        getCallback(MotdEndListener.class).onMOTDEnd(null, null, noMOTD, data);
77
+        getCallback(MotdEndListener.class).onMOTDEnd(parser, new Date(), noMOTD, data);
76 78
     }
77 79
 
78 80
     /**
@@ -82,7 +84,7 @@ public class ProcessMOTD extends IRCProcessor {
82 84
      * @param data Incomming Line.
83 85
      */
84 86
     protected void callMOTDLine(final String data) {
85
-        getCallback(MotdLineListener.class).onMOTDLine(null, null, data);
87
+        getCallback(MotdLineListener.class).onMOTDLine(parser, new Date(), data);
86 88
     }
87 89
 
88 90
     /**
@@ -92,7 +94,7 @@ public class ProcessMOTD extends IRCProcessor {
92 94
      * @param data Incomming Line.
93 95
      */
94 96
     protected void callMOTDStart(final String data) {
95
-        getCallback(MotdStartListener.class).onMOTDStart(null, null, data);
97
+        getCallback(MotdStartListener.class).onMOTDStart(parser, new Date(), data);
96 98
     }
97 99
 
98 100
     /**

+ 20
- 19
irc/src/com/dmdirc/parser/irc/processors/ProcessMessage.java Целия файл

@@ -303,7 +303,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
303 303
     protected void callChannelAction(final Date date, final ChannelInfo cChannel,
304 304
             final ChannelClientInfo cChannelClient, final String sMessage, final String sHost) {
305 305
         getCallback(ChannelActionListener.class)
306
-                .onChannelAction(null, date, cChannel, cChannelClient, sMessage, sHost);
306
+                .onChannelAction(parser, date, cChannel, cChannelClient, sMessage, sHost);
307 307
     }
308 308
 
309 309
     /**
@@ -321,7 +321,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
321 321
             final ChannelClientInfo cChannelClient, final String sType, final String sMessage,
322 322
             final String sHost) {
323 323
         getCallback(ChannelCtcpListener.class)
324
-                .onChannelCTCP(null, date, cChannel, cChannelClient, sType, sMessage, sHost);
324
+                .onChannelCTCP(parser, date, cChannel, cChannelClient, sType, sMessage, sHost);
325 325
     }
326 326
 
327 327
     /**
@@ -339,7 +339,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
339 339
             final ChannelClientInfo cChannelClient, final String sType, final String sMessage,
340 340
             final String sHost) {
341 341
         getCallback(ChannelCtcpReplyListener.class)
342
-                .onChannelCTCPReply(null, date, cChannel, cChannelClient, sType, sMessage, sHost);
342
+                .onChannelCTCPReply(parser, date, cChannel, cChannelClient, sType, sMessage, sHost);
343 343
     }
344 344
 
345 345
     /**
@@ -355,7 +355,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
355 355
     protected void callChannelMessage(final Date date, final ChannelInfo cChannel,
356 356
             final ChannelClientInfo cChannelClient, final String sMessage, final String sHost) {
357 357
         getCallback(ChannelMessageListener.class)
358
-                .onChannelMessage(null, date, cChannel, cChannelClient, sMessage, sHost);
358
+                .onChannelMessage(parser, date, cChannel, cChannelClient, sMessage, sHost);
359 359
     }
360 360
 
361 361
     /**
@@ -371,7 +371,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
371 371
     protected void callChannelNotice(final Date date, final ChannelInfo cChannel,
372 372
             final ChannelClientInfo cChannelClient, final String sMessage, final String sHost) {
373 373
         getCallback(ChannelNoticeListener.class)
374
-                .onChannelNotice(null, date, cChannel, cChannelClient, sMessage, sHost);
374
+                .onChannelNotice(parser, date, cChannel, cChannelClient, sMessage, sHost);
375 375
     }
376 376
 
377 377
     /**
@@ -389,7 +389,8 @@ public class ProcessMessage extends TimestampedIRCProcessor {
389 389
             final ChannelInfo cChannel, final ChannelClientInfo cChannelClient,
390 390
             final String sMessage, final String sHost) {
391 391
         getCallback(ChannelModeNoticeListener.class)
392
-                .onChannelModeNotice(null, date, cChannel, prefix, cChannelClient, sMessage, sHost);
392
+                .onChannelModeNotice(parser, date, cChannel, prefix, cChannelClient, sMessage,
393
+                        sHost);
393 394
     }
394 395
 
395 396
     /**
@@ -407,7 +408,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
407 408
             final ChannelInfo cChannel, final ChannelClientInfo cChannelClient,
408 409
             final String sMessage, final String sHost) {
409 410
         getCallback(ChannelModeMessageListener.class)
410
-                .onChannelModeMessage(null, date, cChannel, prefix, cChannelClient, sMessage,
411
+                .onChannelModeMessage(parser, date, cChannel, prefix, cChannelClient, sMessage,
411 412
                         sHost);
412 413
     }
413 414
 
@@ -421,7 +422,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
421 422
      */
422 423
     protected void callPrivateAction(final Date date, final String sMessage, final String sHost) {
423 424
         getCallback(PrivateActionListener.class)
424
-                .onPrivateAction(null, date, sMessage, sHost);
425
+                .onPrivateAction(parser, date, sMessage, sHost);
425 426
     }
426 427
 
427 428
     /**
@@ -436,7 +437,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
436 437
     protected void callPrivateCTCP(final Date date, final String sType, final String sMessage,
437 438
             final String sHost) {
438 439
         getCallback(PrivateCtcpListener.class)
439
-                .onPrivateCTCP(null, date, sType, sMessage, sHost);
440
+                .onPrivateCTCP(parser, date, sType, sMessage, sHost);
440 441
     }
441 442
 
442 443
     /**
@@ -451,7 +452,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
451 452
     protected void callPrivateCTCPReply(final Date date, final String sType, final String sMessage,
452 453
             final String sHost) {
453 454
         getCallback(PrivateCtcpReplyListener.class)
454
-                .onPrivateCTCPReply(null, date, sType, sMessage, sHost);
455
+                .onPrivateCTCPReply(parser, date, sType, sMessage, sHost);
455 456
     }
456 457
 
457 458
     /**
@@ -464,7 +465,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
464 465
      */
465 466
     protected void callPrivateMessage(final Date date, final String sMessage, final String sHost) {
466 467
         getCallback(PrivateMessageListener.class)
467
-                .onPrivateMessage(null, date, sMessage, sHost);
468
+                .onPrivateMessage(parser, date, sMessage, sHost);
468 469
     }
469 470
 
470 471
     /**
@@ -477,7 +478,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
477 478
      */
478 479
     protected void callPrivateNotice(final Date date, final String sMessage, final String sHost) {
479 480
         getCallback(PrivateNoticeListener.class)
480
-                .onPrivateNotice(null, date, sMessage, sHost);
481
+                .onPrivateNotice(parser, date, sMessage, sHost);
481 482
     }
482 483
 
483 484
     /**
@@ -490,7 +491,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
490 491
      */
491 492
     protected void callServerNotice(final Date date, final String sMessage, final String sHost) {
492 493
         getCallback(ServerNoticeListener.class)
493
-                .onServerNotice(null, date, sMessage, sHost);
494
+                .onServerNotice(parser, date, sMessage, sHost);
494 495
     }
495 496
 
496 497
     /**
@@ -505,7 +506,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
505 506
     protected void callUnknownAction(final Date date, final String sMessage, final String sTarget,
506 507
             final String sHost) {
507 508
         getCallback(UnknownActionListener.class)
508
-                .onUnknownAction(null, date, sMessage, sTarget, sHost);
509
+                .onUnknownAction(parser, date, sMessage, sTarget, sHost);
509 510
     }
510 511
 
511 512
     /**
@@ -521,7 +522,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
521 522
     protected void callUnknownCTCP(final Date date, final String sType, final String sMessage,
522 523
             final String sTarget, final String sHost) {
523 524
         getCallback(UnknownCtcpListener.class)
524
-                .onUnknownCTCP(null, date, sType, sMessage, sTarget, sHost);
525
+                .onUnknownCTCP(parser, date, sType, sMessage, sTarget, sHost);
525 526
     }
526 527
 
527 528
     /**
@@ -537,7 +538,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
537 538
     protected void callUnknownCTCPReply(final Date date, final String sType, final String sMessage,
538 539
             final String sTarget, final String sHost) {
539 540
         getCallback(UnknownCtcpReplyListener.class)
540
-                .onUnknownCTCPReply(null, date, sType, sMessage, sTarget, sHost);
541
+                .onUnknownCTCPReply(parser, date, sType, sMessage, sTarget, sHost);
541 542
     }
542 543
 
543 544
     /**
@@ -552,7 +553,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
552 553
     protected void callUnknownMessage(final Date date, final String sMessage, final String sTarget,
553 554
             final String sHost) {
554 555
         getCallback(UnknownMessageListener.class)
555
-                .onUnknownMessage(null, date, sMessage, sTarget, sHost);
556
+                .onUnknownMessage(parser, date, sMessage, sTarget, sHost);
556 557
     }
557 558
 
558 559
     /**
@@ -567,7 +568,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
567 568
     protected void callUnknownNotice(final Date date, final String sMessage, final String sTarget,
568 569
             final String sHost) {
569 570
         getCallback(UnknownNoticeListener.class)
570
-                .onUnknownNotice(null, date, sMessage, sTarget, sHost);
571
+                .onUnknownNotice(parser, date, sMessage, sTarget, sHost);
571 572
     }
572 573
 
573 574
     /**
@@ -582,7 +583,7 @@ public class ProcessMessage extends TimestampedIRCProcessor {
582 583
     protected void callUnknownServerNotice(final Date date, final String sMessage,
583 584
             final String sTarget, final String sHost) {
584 585
         getCallback(UnknownServerNoticeListener.class)
585
-                .onUnknownServerNotice(null, date, sMessage, sTarget, sHost);
586
+                .onUnknownServerNotice(parser, date, sMessage, sTarget, sHost);
586 587
     }
587 588
 
588 589
     /**

+ 18
- 13
irc/src/com/dmdirc/parser/irc/processors/ProcessMode.java Целия файл

@@ -42,6 +42,7 @@ import com.dmdirc.parser.irc.PrefixModeManager;
42 42
 import com.dmdirc.parser.irc.ProcessingManager;
43 43
 
44 44
 import java.util.Calendar;
45
+import java.util.Date;
45 46
 
46 47
 /**
47 48
  * Process a Mode line.
@@ -229,8 +230,9 @@ public class ProcessMode extends IRCProcessor {
229 230
                         callDebugInfo(IRCParser.DEBUG_INFO, "List Mode: %c [%s] {Positive: %b}", cMode, sModeParam, bPositive);
230 231
                         if (!"324".equals(sParam)) {
231 232
                             getCallback(ChannelSingleModeChangeListener.class)
232
-                                    .onChannelSingleModeChanged(null, null, iChannel, setterCCI,
233
-                                            token[0], cPositive + cMode + " " + sModeParam);
233
+                                    .onChannelSingleModeChanged(parser, new Date(), iChannel,
234
+                                            setterCCI, token[0], cPositive + cMode + " " +
235
+                                                    sModeParam);
234 236
                         }
235 237
                     } else {
236 238
                         // Mode with a parameter
@@ -242,8 +244,9 @@ public class ProcessMode extends IRCProcessor {
242 244
                             iChannel.setModeParam(cMode, sModeParam);
243 245
                             if (!"324".equals(sParam)) {
244 246
                                 getCallback(ChannelSingleModeChangeListener.class)
245
-                                        .onChannelSingleModeChanged(null, null, iChannel, setterCCI,
246
-                                            token[0], cPositive + cMode + " " + sModeParam);
247
+                                        .onChannelSingleModeChanged(parser, new Date(), iChannel,
248
+                                                setterCCI, token[0], cPositive + cMode + " " +
249
+                                                        sModeParam);
247 250
                             }
248 251
                         } else {
249 252
                             // -Mode - parameter isn't always needed, we need to check
@@ -257,8 +260,9 @@ public class ProcessMode extends IRCProcessor {
257 260
                             iChannel.setModeParam(cMode, "");
258 261
                             if (!"324".equals(sParam)) {
259 262
                                 getCallback(ChannelSingleModeChangeListener.class)
260
-                                        .onChannelSingleModeChanged(null, null, iChannel, setterCCI,
261
-                                            token[0], trim(cPositive + cMode + " " + sModeParam));
263
+                                        .onChannelSingleModeChanged(parser, new Date(), iChannel,
264
+                                                setterCCI, token[0], trim(cPositive + cMode + " "
265
+                                                        + sModeParam));
262 266
                             }
263 267
                         }
264 268
                     }
@@ -277,7 +281,7 @@ public class ProcessMode extends IRCProcessor {
277 281
         } else {
278 282
             callChannelModeChanged(iChannel, setterCCI, token[0], sFullModeStr.toString().trim());
279 283
             getCallback(ChannelNonUserModeChangeListener.class)
280
-                    .onChannelNonUserModeChanged(null, null, iChannel, setterCCI, token[0],
284
+                    .onChannelNonUserModeChanged(parser, new Date(), iChannel, setterCCI, token[0],
281 285
                             trim(sNonUserModeStr.toString() + sNonUserModeStrParams));
282 286
         }
283 287
     }
@@ -289,7 +293,8 @@ public class ProcessMode extends IRCProcessor {
289 293
      * @param token IRCTokenised Array of the incomming line
290 294
      * @param clearOldModes Clear old modes before applying these modes (used by 221)
291 295
      */
292
-    private void processUserMode(final String sParam, final String[] token, final String[] sModestr, final boolean clearOldModes) {
296
+    private void processUserMode(final String sParam, final String[] token, final String[] sModestr,
297
+            final boolean clearOldModes) {
293 298
         final IRCClientInfo iClient = getClientInfo(token[2]);
294 299
 
295 300
         if (iClient == null) {
@@ -346,7 +351,7 @@ public class ProcessMode extends IRCProcessor {
346 351
     protected void callChannelModeChanged(final ChannelInfo cChannel,
347 352
             final ChannelClientInfo cChannelClient, final String sHost, final String sModes) {
348 353
         getCallback(ChannelModeChangeListener.class)
349
-                .onChannelModeChanged(null, null, cChannel, cChannelClient, sHost, sModes);
354
+                .onChannelModeChanged(parser, new Date(), cChannel, cChannelClient, sHost, sModes);
350 355
     }
351 356
 
352 357
     /**
@@ -363,8 +368,8 @@ public class ProcessMode extends IRCProcessor {
363 368
             final ChannelClientInfo cChangedClient, final ChannelClientInfo cSetByClient,
364 369
             final String sHost, final String sMode) {
365 370
         getCallback(ChannelUserModeChangeListener.class)
366
-                .onChannelUserModeChanged(null, null, cChannel, cChangedClient, cSetByClient,
367
-                        sHost, sMode);
371
+                .onChannelUserModeChanged(parser, new Date(), cChannel, cChangedClient,
372
+                        cSetByClient, sHost, sMode);
368 373
     }
369 374
 
370 375
     /**
@@ -378,7 +383,7 @@ public class ProcessMode extends IRCProcessor {
378 383
     protected void callUserModeChanged(final ClientInfo cClient, final String sSetby,
379 384
             final String sModes) {
380 385
         getCallback(UserModeChangeListener.class)
381
-                .onUserModeChanged(null, null, cClient, sSetby, sModes);
386
+                .onUserModeChanged(parser, new Date(), cClient, sSetby, sModes);
382 387
     }
383 388
 
384 389
     /**
@@ -390,7 +395,7 @@ public class ProcessMode extends IRCProcessor {
390 395
      */
391 396
     protected void callUserModeDiscovered(final ClientInfo cClient, final String sModes) {
392 397
         getCallback(UserModeDiscoveryListener.class)
393
-                .onUserModeDiscovered(null, null, cClient, sModes);
398
+                .onUserModeDiscovered(parser, new Date(), cClient, sModes);
394 399
     }
395 400
 
396 401
     /**

+ 4
- 2
irc/src/com/dmdirc/parser/irc/processors/ProcessNames.java Целия файл

@@ -33,6 +33,8 @@ import com.dmdirc.parser.irc.ModeManager;
33 33
 import com.dmdirc.parser.irc.PrefixModeManager;
34 34
 import com.dmdirc.parser.irc.ProcessingManager;
35 35
 
36
+import java.util.Date;
37
+
36 38
 /**
37 39
  * Process a Names reply.
38 40
  */
@@ -146,7 +148,7 @@ public class ProcessNames extends IRCProcessor {
146 148
     protected void callChannelTopic(final ChannelInfo cChannel, final boolean bIsJoinTopic) {
147 149
         ((IRCChannelInfo) cChannel).setHadTopic();
148 150
         getCallback(ChannelTopicListener.class)
149
-                .onChannelTopic(null, null, cChannel, bIsJoinTopic);
151
+                .onChannelTopic(parser, new Date(), cChannel, bIsJoinTopic);
150 152
     }
151 153
 
152 154
     /**
@@ -157,7 +159,7 @@ public class ProcessNames extends IRCProcessor {
157 159
      */
158 160
     protected void callChannelGotNames(final ChannelInfo cChannel) {
159 161
         getCallback(ChannelNamesListener.class)
160
-                .onChannelGotNames(null, null, cChannel);
162
+                .onChannelGotNames(parser, new Date(), cChannel);
161 163
     }
162 164
 
163 165
     /**

+ 4
- 2
irc/src/com/dmdirc/parser/irc/processors/ProcessNick.java Целия файл

@@ -34,6 +34,8 @@ import com.dmdirc.parser.irc.IRCClientInfo;
34 34
 import com.dmdirc.parser.irc.IRCParser;
35 35
 import com.dmdirc.parser.irc.ProcessingManager;
36 36
 
37
+import java.util.Date;
38
+
37 39
 /**
38 40
  * Process a Nick change.
39 41
  */
@@ -108,7 +110,7 @@ public class ProcessNick extends IRCProcessor {
108 110
     protected void callChannelNickChanged(final ChannelInfo cChannel,
109 111
             final ChannelClientInfo cChannelClient, final String sOldNick) {
110 112
         getCallback(ChannelNickChangeListener.class)
111
-                .onChannelNickChanged(null, null, cChannel, cChannelClient, sOldNick);
113
+                .onChannelNickChanged(parser, new Date(), cChannel, cChannelClient, sOldNick);
112 114
     }
113 115
 
114 116
     /**
@@ -120,7 +122,7 @@ public class ProcessNick extends IRCProcessor {
120 122
      */
121 123
     protected void callNickChanged(final ClientInfo cClient, final String sOldNick) {
122 124
         getCallback(NickChangeListener.class)
123
-                .onNickChanged(null, null, cClient, sOldNick);
125
+                .onNickChanged(parser, new Date(), cClient, sOldNick);
124 126
     }
125 127
 
126 128
     /**

+ 3
- 1
irc/src/com/dmdirc/parser/irc/processors/ProcessNickInUse.java Целия файл

@@ -26,6 +26,8 @@ import com.dmdirc.parser.interfaces.callbacks.NickInUseListener;
26 26
 import com.dmdirc.parser.irc.IRCParser;
27 27
 import com.dmdirc.parser.irc.ProcessingManager;
28 28
 
29
+import java.util.Date;
30
+
29 31
 /**
30 32
  * Process a NickInUse message.
31 33
  * Parser implements handling of this if Pre-001 and no other handler found,
@@ -72,7 +74,7 @@ public class ProcessNickInUse extends IRCProcessor {
72 74
      */
73 75
     protected void callNickInUse(final String nickname) {
74 76
         getCallback(NickInUseListener.class)
75
-                .onNickInUse(null, null, nickname);
77
+                .onNickInUse(parser, new Date(), nickname);
76 78
     }
77 79
 
78 80
     /**

+ 3
- 1
irc/src/com/dmdirc/parser/irc/processors/ProcessNoticeAuth.java Целия файл

@@ -26,6 +26,8 @@ import com.dmdirc.parser.interfaces.callbacks.AuthNoticeListener;
26 26
 import com.dmdirc.parser.irc.IRCParser;
27 27
 import com.dmdirc.parser.irc.ProcessingManager;
28 28
 
29
+import java.util.Date;
30
+
29 31
 /**
30 32
  * Process a NoticeAuth message.
31 33
  */
@@ -59,7 +61,7 @@ public class ProcessNoticeAuth extends IRCProcessor {
59 61
      * @param data Incomming Line.
60 62
      */
61 63
     protected void callNoticeAuth(final String data) {
62
-        getCallback(AuthNoticeListener.class).onNoticeAuth(null, null, data);
64
+        getCallback(AuthNoticeListener.class).onNoticeAuth(parser, new Date(), data);
63 65
     }
64 66
 
65 67
     /**

+ 3
- 1
irc/src/com/dmdirc/parser/irc/processors/ProcessPart.java Целия файл

@@ -32,6 +32,8 @@ import com.dmdirc.parser.irc.IRCClientInfo;
32 32
 import com.dmdirc.parser.irc.IRCParser;
33 33
 import com.dmdirc.parser.irc.ProcessingManager;
34 34
 
35
+import java.util.Date;
36
+
35 37
 /**
36 38
  * Process a channel part.
37 39
  */
@@ -113,7 +115,7 @@ public class ProcessPart extends IRCProcessor {
113 115
     protected void callChannelPart(final ChannelInfo cChannel,
114 116
             final ChannelClientInfo cChannelClient, final String sReason) {
115 117
         getCallback(ChannelPartListener.class)
116
-                .onChannelPart(null, null, cChannel, cChannelClient, sReason);
118
+                .onChannelPart(parser, new Date(), cChannel, cChannelClient, sReason);
117 119
     }
118 120
 
119 121
     /**

+ 3
- 2
irc/src/com/dmdirc/parser/irc/processors/ProcessQuit.java Целия файл

@@ -34,6 +34,7 @@ import com.dmdirc.parser.irc.IRCParser;
34 34
 import com.dmdirc.parser.irc.ProcessingManager;
35 35
 
36 36
 import java.util.ArrayList;
37
+import java.util.Date;
37 38
 
38 39
 /**
39 40
  * Process a Quit message.
@@ -121,7 +122,7 @@ public class ProcessQuit extends IRCProcessor {
121 122
     protected void callChannelQuit(final ChannelInfo cChannel,
122 123
             final ChannelClientInfo cChannelClient, final String sReason) {
123 124
         getCallback(ChannelQuitListener.class)
124
-                .onChannelQuit(null, null, cChannel, cChannelClient, sReason);
125
+                .onChannelQuit(parser, new Date(), cChannel, cChannelClient, sReason);
125 126
     }
126 127
 
127 128
     /**
@@ -133,7 +134,7 @@ public class ProcessQuit extends IRCProcessor {
133 134
      */
134 135
     protected void callQuit(final ClientInfo cClient, final String sReason) {
135 136
         getCallback(QuitListener.class)
136
-                .onQuit(null, null, cClient, sReason);
137
+                .onQuit(parser, new Date(), cClient, sReason);
137 138
     }
138 139
 
139 140
     /**

+ 3
- 1
irc/src/com/dmdirc/parser/irc/processors/ProcessTopic.java Целия файл

@@ -29,6 +29,8 @@ import com.dmdirc.parser.irc.IRCClientInfo;
29 29
 import com.dmdirc.parser.irc.IRCParser;
30 30
 import com.dmdirc.parser.irc.ProcessingManager;
31 31
 
32
+import java.util.Date;
33
+
32 34
 /**
33 35
  * Process a topic change.
34 36
  */
@@ -103,7 +105,7 @@ public class ProcessTopic extends IRCProcessor {
103 105
     protected void callChannelTopic(final ChannelInfo cChannel, final boolean bIsJoinTopic) {
104 106
         ((IRCChannelInfo) cChannel).setHadTopic();
105 107
         getCallback(ChannelTopicListener.class)
106
-                .onChannelTopic(null, null, cChannel, bIsJoinTopic);
108
+                .onChannelTopic(parser, new Date(), cChannel, bIsJoinTopic);
107 109
     }
108 110
 
109 111
     /**

+ 5
- 3
irc/src/com/dmdirc/parser/irc/processors/ProcessWallops.java Целия файл

@@ -28,6 +28,8 @@ import com.dmdirc.parser.interfaces.callbacks.WalluserListener;
28 28
 import com.dmdirc.parser.irc.IRCParser;
29 29
 import com.dmdirc.parser.irc.ProcessingManager;
30 30
 
31
+import java.util.Date;
32
+
31 33
 /**
32 34
  * Process a WALLOPS Message.
33 35
  */
@@ -82,7 +84,7 @@ public class ProcessWallops extends IRCProcessor {
82 84
      * @param host Host of the user who sent the wallop
83 85
      */
84 86
     protected void callWallop(final String message, final String host) {
85
-        getCallback(WallopListener.class).onWallop(null, null, message, host);
87
+        getCallback(WallopListener.class).onWallop(parser, new Date(), message, host);
86 88
     }
87 89
 
88 90
     /**
@@ -94,7 +96,7 @@ public class ProcessWallops extends IRCProcessor {
94 96
      */
95 97
     protected void callWalluser(final String message, final String host) {
96 98
         getCallback(WalluserListener.class)
97
-                .onWalluser(null, null, message, host);
99
+                .onWalluser(parser, new Date(), message, host);
98 100
     }
99 101
 
100 102
     /**
@@ -106,7 +108,7 @@ public class ProcessWallops extends IRCProcessor {
106 108
      */
107 109
     protected void callWallDesync(final String message, final String host) {
108 110
         getCallback(WallDesyncListener.class)
109
-                .onWallDesync(null, null, message, host);
111
+                .onWallDesync(parser, new Date(), message, host);
110 112
     }
111 113
 
112 114
     /**

+ 6
- 3
irc/src/com/dmdirc/parser/irc/processors/ProcessWho.java Целия файл

@@ -33,6 +33,8 @@ import com.dmdirc.parser.irc.IRCClientInfo;
33 33
 import com.dmdirc.parser.irc.IRCParser;
34 34
 import com.dmdirc.parser.irc.ProcessingManager;
35 35
 
36
+import java.util.Date;
37
+
36 38
 /**
37 39
  * Process a /who reply.
38 40
  */
@@ -107,7 +109,7 @@ public class ProcessWho extends IRCProcessor {
107 109
     protected void callAwayState(final AwayState oldState, final AwayState currentState,
108 110
             final String reason) {
109 111
         getCallback(AwayStateListener.class)
110
-                .onAwayState(null, null, oldState, currentState, reason);
112
+                .onAwayState(parser, new Date(), oldState, currentState, reason);
111 113
     }
112 114
 
113 115
     /**
@@ -121,7 +123,7 @@ public class ProcessWho extends IRCProcessor {
121 123
     protected void callAwayStateOther(final ClientInfo client, final AwayState oldState,
122 124
             final AwayState state) {
123 125
         getCallback(OtherAwayStateListener.class)
124
-                .onAwayStateOther(null, null, client, oldState, state);
126
+                .onAwayStateOther(parser, new Date(), client, oldState, state);
125 127
     }
126 128
 
127 129
     /**
@@ -136,7 +138,8 @@ public class ProcessWho extends IRCProcessor {
136 138
     protected void callChannelAwayStateOther(final ChannelInfo channel,
137 139
             final ChannelClientInfo channelClient, final AwayState oldState, final AwayState state) {
138 140
         getCallback(ChannelOtherAwayStateListener.class)
139
-                .onChannelAwayStateOther(null, null, channel, channelClient, oldState, state);
141
+                .onChannelAwayStateOther(parser, new Date(), channel, channelClient, oldState,
142
+                        state);
140 143
     }
141 144
 
142 145
     /**

+ 23
- 19
irc/test/com/dmdirc/parser/irc/IRCParserTest.java Целия файл

@@ -22,12 +22,10 @@
22 22
 
23 23
 package com.dmdirc.parser.irc;
24 24
 
25
-import com.dmdirc.parser.common.MyInfo;
26
-import com.dmdirc.parser.common.ParserError;
27 25
 import com.dmdirc.harness.parser.TestParser;
28
-import com.dmdirc.parser.interfaces.Parser;
29
-import com.dmdirc.parser.interfaces.callbacks.AuthNoticeListener;
30 26
 import com.dmdirc.parser.common.CallbackNotFoundException;
27
+import com.dmdirc.parser.common.MyInfo;
28
+import com.dmdirc.parser.interfaces.callbacks.AuthNoticeListener;
31 29
 import com.dmdirc.parser.interfaces.callbacks.CallbackInterface;
32 30
 import com.dmdirc.parser.interfaces.callbacks.ChannelKickListener;
33 31
 import com.dmdirc.parser.interfaces.callbacks.ConnectErrorListener;
@@ -39,13 +37,21 @@ import com.dmdirc.parser.interfaces.callbacks.ServerReadyListener;
39 37
 import java.net.URI;
40 38
 import java.net.URISyntaxException;
41 39
 import java.util.Arrays;
42
-import java.util.Date;
43 40
 
44 41
 import javax.net.ssl.TrustManager;
45 42
 
46 43
 import org.junit.Test;
47
-import static org.junit.Assert.*;
48
-import static org.mockito.Mockito.*;
44
+
45
+import static org.junit.Assert.assertEquals;
46
+import static org.junit.Assert.assertFalse;
47
+import static org.junit.Assert.assertTrue;
48
+import static org.mockito.Mockito.anyObject;
49
+import static org.mockito.Mockito.anyString;
50
+import static org.mockito.Mockito.eq;
51
+import static org.mockito.Mockito.mock;
52
+import static org.mockito.Mockito.never;
53
+import static org.mockito.Mockito.same;
54
+import static org.mockito.Mockito.verify;
49 55
 
50 56
 public class IRCParserTest {
51 57
 
@@ -70,8 +76,7 @@ public class IRCParserTest {
70 76
         myParser.injectConnectionStrings();
71 77
         myParser.injectLine(":nick2!ident@host NICK :nick");
72 78
 
73
-        verify(error, never()).onErrorInfo(same(myParser), (Date) anyObject(),
74
-                (ParserError) anyObject());
79
+        verify(error, never()).onErrorInfo(same(myParser), anyObject(), anyObject());
75 80
     }
76 81
 
77 82
     @Test
@@ -152,7 +157,7 @@ public class IRCParserTest {
152 157
         parser.getCallbackManager().addCallback(ServerErrorListener.class, test);
153 158
         parser.injectLine("ERROR :You smell of cheese");
154 159
 
155
-        verify(test).onServerError(same(parser), (Date) anyObject(), eq("You smell of cheese"));
160
+        verify(test).onServerError(same(parser), anyObject(), eq("You smell of cheese"));
156 161
     }
157 162
 
158 163
     @Test
@@ -163,7 +168,7 @@ public class IRCParserTest {
163 168
         parser.sendConnectionStrings();
164 169
 
165 170
         parser.injectLine("NOTICE AUTH :Random auth notice?");
166
-        verify(test).onNoticeAuth(same(parser), (Date) anyObject(), eq("Random auth notice?"));
171
+        verify(test).onNoticeAuth(same(parser), anyObject(), eq("Random auth notice?"));
167 172
     }
168 173
 
169 174
     @Test
@@ -174,7 +179,7 @@ public class IRCParserTest {
174 179
         parser.sendConnectionStrings();
175 180
 
176 181
         parser.injectLine(":us.ircnet.org 020 * :Stupid notice");
177
-        verify(test).onNoticeAuth(same(parser), (Date) anyObject(), eq("Stupid notice"));
182
+        verify(test).onNoticeAuth(same(parser), anyObject(), eq("Stupid notice"));
178 183
     }
179 184
 
180 185
     @Test
@@ -185,7 +190,7 @@ public class IRCParserTest {
185 190
         parser.sendConnectionStrings();
186 191
         parser.injectLine(":chris!@ NICK :user2");
187 192
 
188
-        verify(test, never()).onNoticeAuth((Parser) anyObject(), (Date) anyObject(), anyString());
193
+        verify(test, never()).onNoticeAuth(anyObject(), anyObject(), anyString());
189 194
     }
190 195
 
191 196
     @Test
@@ -196,7 +201,7 @@ public class IRCParserTest {
196 201
 
197 202
         parser.injectLine(":server 001 nick :Hi there, nick");
198 203
 
199
-        verify(test).onNumeric(same(parser), (Date) anyObject(), eq(1),
204
+        verify(test).onNumeric(same(parser), anyObject(), eq(1),
200 205
                 eq(new String[]{":server", "001", "nick", "Hi there, nick"}));
201 206
     }
202 207
 
@@ -221,11 +226,11 @@ public class IRCParserTest {
221 226
         };
222 227
 
223 228
         for (String string : strings) {
224
-            verify(test, never()).onServerReady((Parser) anyObject(), (Date) anyObject());
229
+            verify(test, never()).onServerReady(anyObject(), anyObject());
225 230
             parser.injectLine(string);
226 231
         }
227 232
 
228
-        verify(test).onServerReady(same(parser), (Date) anyObject());
233
+        verify(test).onServerReady(same(parser), anyObject());
229 234
     }
230 235
 
231 236
     @Test
@@ -333,8 +338,7 @@ public class IRCParserTest {
333 338
         parser.getCallbackManager().addCallback(ChannelKickListener.class, ick, "#D");
334 339
         parser.injectLine(":bar!me@moo KICK #D nick :Bye!");
335 340
 
336
-        verify(ick).onChannelKick(same(parser), (Date) anyObject(), (IRCChannelInfo) anyObject(),
337
-                (IRCChannelClientInfo) anyObject(), (IRCChannelClientInfo) anyObject(),
341
+        verify(ick).onChannelKick(same(parser), anyObject(), anyObject(), anyObject(), anyObject(),
338 342
                 anyString(), anyString());
339 343
     }
340 344
 
@@ -344,7 +348,7 @@ public class IRCParserTest {
344 348
         final ConnectErrorListener tiei = mock(ConnectErrorListener.class);
345 349
         tp.getCallbackManager().addCallback(ConnectErrorListener.class, tiei);
346 350
         tp.runSuper();
347
-        verify(tiei).onConnectError(same(tp), (Date) anyObject(), (ParserError) anyObject());
351
+        verify(tiei).onConnectError(same(tp), anyObject(), anyObject());
348 352
     }
349 353
 
350 354
 }

Loading…
Отказ
Запис