Browse Source

Log outgoing queries correctly rather than using the target nickname

pull/532/head
Shane Mc Cormack 7 years ago
parent
commit
b8233be835
1 changed files with 31 additions and 1 deletions
  1. 31
    1
      logging/src/main/java/com/dmdirc/addons/logging/LoggingManager.java

+ 31
- 1
logging/src/main/java/com/dmdirc/addons/logging/LoggingManager.java View File

@@ -42,6 +42,8 @@ import com.dmdirc.events.ChannelTopicChangeEvent;
42 42
 import com.dmdirc.events.ClientPrefsOpenedEvent;
43 43
 import com.dmdirc.events.QueryClosedEvent;
44 44
 import com.dmdirc.events.QueryOpenedEvent;
45
+import com.dmdirc.events.QuerySelfActionEvent;
46
+import com.dmdirc.events.QuerySelfMessageEvent;
45 47
 import com.dmdirc.events.eventbus.EventBus;
46 48
 import com.dmdirc.interfaces.GroupChat;
47 49
 import com.dmdirc.interfaces.GroupChatUser;
@@ -244,18 +246,47 @@ public class LoggingManager implements ConfigChangeListener {
244 246
 
245 247
     @Handler
246 248
     public void handleQueryActions(final BaseQueryActionEvent event) {
249
+        if (event instanceof QuerySelfActionEvent) { return; }
250
+
247 251
         final User user = event.getQuery().getUser();
248 252
         final String filename = locator.getLogFile(user);
249 253
         appendLine(filename, "* %s %s", user.getNickname(), event.getMessage());
250 254
     }
251 255
 
256
+    @Handler
257
+    public void handleQuerySelActions(final QuerySelfActionEvent event) {
258
+        final User user = event.getQuery().getUser();
259
+        final String filename = locator.getLogFile(user);
260
+
261
+        if (event.getSource().getConnection().isPresent() && event.getSource().getConnection().get().getLocalUser().isPresent()) {
262
+            appendLine(filename, "* %s %s", event.getSource().getConnection().get().getLocalUser().get().getNickname(), event.getMessage());
263
+        } else {
264
+            appendLine(filename, "* >> %s", event.getMessage());
265
+        }
266
+    }
267
+
252 268
     @Handler
253 269
     public void handleQueryMessages(final BaseQueryMessageEvent event) {
270
+        if (event instanceof QuerySelfMessageEvent) { return; }
271
+
254 272
         final User user = event.getQuery().getUser();
255 273
         final String filename = locator.getLogFile(user);
274
+
256 275
         appendLine(filename, "<%s> %s", user.getNickname(), event.getMessage());
257 276
     }
258 277
 
278
+    @Handler
279
+    public void handleQuerySelfMessages(final QuerySelfMessageEvent event) {
280
+        final User user = event.getQuery().getUser();
281
+        final String filename = locator.getLogFile(user);
282
+
283
+        if (event.getSource().getConnection().isPresent() && event.getSource().getConnection().get().getLocalUser().isPresent()) {
284
+            appendLine(filename, "<%s> %s", event.getSource().getConnection().get().getLocalUser().get().getNickname(), event.getMessage());
285
+        } else {
286
+            appendLine(filename, ">> %s", event.getMessage());
287
+        }
288
+    }
289
+
259 290
     @Handler
260 291
     public void handleChannelMessage(final BaseChannelMessageEvent event) {
261 292
         final String filename = locator.getLogFile(event.getChannel());
@@ -364,7 +395,6 @@ public class LoggingManager implements ConfigChangeListener {
364 395
     @Handler
365 396
     public void handleChannelOpened(final ChannelOpenedEvent event) {
366 397
         final String filename = locator.getLogFile(event.getChannel());
367
-        System.out.println("\tChannel opened filename: " + filename);
368 398
 
369 399
         if (autobackbuffer) {
370 400
             showBackBuffer(event.getChannel().getWindowModel(), filename);

Loading…
Cancel
Save