We no longer truncate lines if there's a character which
can't be coded for in unicode, which stops lots of other
breakage.
Change-Id: I1886703fc7f6e4d2076da4e4bd3b9aa60e8bc051
Fixes-Issue: CLIENT-353
Reviewed-on: http://gerrit.dmdirc.com/2414
Reviewed-by: Shane Mc Cormack <shane@dmdirc.com>
Automatic-Compile: DMDirc Build Manager
jgit-describe only supports 1 subdir atm, so for now we still need to shell out once.
Change-Id: I1cdbfd09abe2f515b78732e98203c52772a724c6
Reviewed-on: http://gerrit.dmdirc.com/2299
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Chris Smith <chris@dmdirc.com>
Fix for issue CLIENT-312 - Parser shouldn't extend runnable
The parser now defines some new methods:
- connect()
- connect(threadName)
- interrupt()
connect([threadName]) is responsible for creating any required threads
for the parser to run in and maintaining them internally.
interrupt() allows for interrupting these thread if they exist and if
required.
A new base class for parsers has been added to accomodate this with
minimum changes required elsewhere - ThreadedParser which BaseParser
now extends.
ThreadedParser handles the creation of a single controlThread and allows
interrupting it, and also defines an abstract void run() method (which
all existing parsers will already have from extending runnable in the
past) which is used by the controlThread.
Change-Id: Ib3e884407181adc362394b23fe59f8e3b401d692
Depends-On: I5ef8ea1e988fe9591df0054ad0016c409fc34b3f
Depends-On: I90ac61d56eb623165d3c4211f1c3247fcba823c8
Reviewed-on: http://gerrit.dmdirc.com/2255
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Chris Smith <chris@dmdirc.com>
Port now defaults to 6667 if none is specified.
compareURI also now takes username/password into consideration if one is given to it to compare to (different password could be a different server, for example in the case of bouncers)
Fix StringIndexOutOfBoundsException when using a server that does timestamped IRC. (Fixes issue #CLIENT-326)
Change-Id: I61151b953b29df6dc12ec19f3c43f8cf7a6a37ed
Reviewed-on: http://gerrit.dmdirc.com/2248
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Chris Smith <chris@dmdirc.com>
IRC parser support for IRCds which only support one listmode at once.
Fixes #CLIENT-318
The logic was already there, there just wasn't a group for it to make it easy.
Change-Id: I25976c3436961de8d4c2e243c5d14d58762e9222
Reviewed-on: http://gerrit.dmdirc.com/2251
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Chris Smith <chris@dmdirc.com>
Add @ChildImplementations to TestParser
- Should fix the billion unit test failures per night
Release semaphores even if we break due to lack of error checking
Make TestParser set some sensible-ish ping values
Change-Id: I0918114380f2c22de5d7c9574714ae9e1f098b12
Reviewed-on: http://gerrit.dmdirc.com/2196
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>
Remove public non-final fields in favour of getters
Remove some unused and some useless methods
Change-Id: I3c0841494242da9a7c3a73f776b783965e6619fb
Reviewed-on: http://gerrit.dmdirc.com/2182
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>
Add support for "TimestampedIRC" (See: http://shanemcc.co.uk/irc/#timestamping)
- This is used for backbuffer support in DFBnc, we currently only care about timestamps in
ProcessMessage, everything else will just use the current time in their callbacks as before.
Change-Id: I248bfd4d72800465ba4b06331261a8519690c3d5
Reviewed-on: http://gerrit.dmdirc.com/2172
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>
Fix unit test following Change-Id: If5a89ca2450e2583005045af60bdfc00b2a88765
Test is testing for invalid behaviour:
20:52:08 | <@Dataforce> I can't remember why we decided it was a bug
20:52:43 | <@Dataforce> It was to do with kicking simon and him coming back too fast or something
20:52:54 | <@Dataforce> oh, i remember
20:53:22 | <@Dataforce> kick simon, and then immediately kick him again - hes there, then he leaves, then hes there, Q sends a mode, then he is removed, Qs mode arrives
Not sure how the change made it through gerrit when it failed a test, but oh well.
Change-Id: I8bc45eee36c4d741e5df6c732704eee4bd60ea63
Reviewed-on: http://gerrit.dmdirc.com/2169
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>
Ignore modes for clients not on the channel.
Change-Id: If5a89ca2450e2583005045af60bdfc00b2a88765
Reviewed-on: http://gerrit.dmdirc.com/2138
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>