1
0
mirror of https://github.com/deavmi/birchwood synced 2024-09-20 21:02:55 +02:00
Commit Graph

277 Commits

Author SHA1 Message Date
95505af624 Unit tests (messages)
- Added a unit test which tests if a message containing bad characters, once stripped, is then valid.
- Essentially, tests the stripper.
2023-07-06 19:11:37 +02:00
0e6c5fb013 Client
- Cleaned up and removed now-completed TODOs
2023-07-03 16:42:26 +02:00
499e53d19d Client
- Implemented `ref-string`-based `textpass(ref string)` which can validate and strip at the same time
- Replaced all calls to `isValidText(string)` with `textPass(ref string)`
2023-07-03 16:37:49 +02:00
2a09edd578 Messages
- Made `hasIllegalCharacters(string)` and `stripIllegalCharacters(string)` public
2023-07-03 16:37:08 +02:00
b6a0ae63b6 Merge branch 'master' into bugfix/stripper 2023-07-03 16:22:41 +02:00
897105a101 Client
- Added some future TODOs
2023-06-30 12:36:32 +02:00
564601afe7 Client
- Now `doThreadCleanup()` will set the `receiver`, `sender` and `engine` to null such that no referenecs to it remain such that they can be gc'd
2023-06-30 12:33:51 +02:00
855925c231 Client
- Documented a methodClient

- Added some TODOs which need to be done
- When checking for active session use `running == false` not `socket is null` which is not set back to `null` when disconnected after one session

Unit tests
2023-06-30 12:29:34 +02:00
a782bc9317 Client
- Added some TODOs which need to be done
- When checking for active session use `running == false` not `socket is null` which is not set back to `null` when disconnected after one session

Unit tests
2023-06-30 12:27:46 +02:00
063701fc94 Client
- Don't construct a new `Receiver` and `Sender` on construction, rather only do so when `connect()` is called
2023-06-30 12:13:05 +02:00
d3df5c015f Client
- Made `engine` private and now accessible via a package-accessible getter method, `getEngine()`

Receiver

- Use `getEngine()` instead
2023-06-29 21:24:19 +02:00
f84b019416 Client
- Make `running` private and only read-accessile via `isRunning()` method which is available at the package level
- Added todo for `engine` field

Receiver

- Use `isRunning()` now

Sender

- Use `isRunning()` now
2023-06-29 21:22:46 +02:00
7cfed69036 Receiver
- Dispose the `Event` after call to `join()`

Sender

- Dispose the `Event` after call to `join()`
2023-06-29 18:35:42 +02:00
3957587363 Merge branch 'master' into bugfix/shutdown 2023-06-28 23:53:55 +02:00
2619577cad Merge branch 'master' into bugfix/stripper 2023-06-28 23:53:34 +02:00
f20c078fc3 Client
- `user(string, string, string, string)` now checks for illegal characters
2023-06-28 23:53:08 +02:00
d2b4ccfeda Client
- Pass in custom error messages for clarity
2023-06-28 23:42:39 +02:00
f85fcde112 Client
- Cleaned up imports
2023-06-28 23:12:19 +02:00
24f548820a Client
- Removed option no longer being considered
2023-06-28 23:09:21 +02:00
725672dfa7 Merge branch 'master' into bugfix/shutdown 2023-06-28 08:34:06 +02:00
4fbe10adca Merge branch 'master' into bugfix/stripper 2023-06-28 08:33:41 +02:00
3aa14492e2 Client
- Removed now-completed TODOs
2023-06-28 08:32:44 +02:00
84785529df Client
- `leaveChannel(string)` now ensures that only valid characters are present in the provided channel's name, else throws a `BirchwoodException`
2023-06-28 08:31:41 +02:00
830a609dad Receiver
- Added a TODO (for disposal)

Sender

- Added a TODO (for disposal)

Client

- Removed unused method `closedConnectiondHandler()`
2023-06-27 20:09:35 +02:00
2305c19623 Client
- Added an overridable `onConnectionClosed()` that is called when the connection is closed by either us or the remote host
- Added `closedConnectionHandler()` (gonna get rid of soon)
- Calling `disconnect()` will now RATHER shutdown the socket than close it, it no longer performs any other sub-systems clean up
- Implemented `doThreadCleanup()` which stops the receive and send managers, stops the eventy engine too
- At every `read()` we do in the reader loop, check if the return value is `<0` or `==0` in which case set the running state to false and exit the loop
- The exiting of the reader loop will now shutdown the socket (in case remote host caused it and not us (via `disconnect()` for example) ), `close()` the socket and call `doThreadCleanup()`
2023-06-27 20:08:16 +02:00
b4338aa3ed Receiver
- Calling `end()` will now wait for the receiver's thread to stop

Sender

- Calling `end()` will now wait for the sender's thread to stop
2023-06-27 19:54:02 +02:00
395c881f84 Merge branch 'master' into bugfix/shutdown 2023-06-26 20:31:08 +02:00
466337ec75 Merge branch 'master' into bugfix/improve_snoosy 2023-06-25 17:37:08 +02:00
9b81573eb7 Client
- Added or improved `Throws` documentation on many methods
2023-06-25 17:36:46 +02:00
b79a3ad8ee Client
- Now catches `SnoozeError` if a the libsnooze `Event`'s failed to have their `ensure()` call succeed

ErrorType

- Updated description for enum member `INTERNAL_FAILURE`

Sender

- Removed now-completed TODO

Receiver

- Removed now-completed TODO
2023-06-25 17:30:53 +02:00
fe9bf31ad5 Client
- Removed now-completed comments and commented-out-code
2023-06-25 17:13:45 +02:00
ed39b950c3 Merge branch 'master' into bugfix/improve_snoosy 2023-06-25 17:13:00 +02:00
42f63b9e0e Client
- We now catch `EventyException` when calling `initEvents()` from within `connect()` and throw a `BirchwoodException`
2023-06-25 17:12:24 +02:00
9d0a2bc3ce Client
- Documented that `initEvents()` may throw an `EventyException`

ErrorType

- Added new member `INTERNAL_FAILURE` which could occur from errors with `Eventy` when setting up the signal handlers and event types
2023-06-25 17:11:59 +02:00
46e8518b6b Merge branch 'master' into bugfix/improve_snoosy 2023-06-25 17:06:15 +02:00
5488e7902c Receiver
- Removed irrelevant TODO

Sender

- Removed irrelevant TODO
2023-06-25 17:05:36 +02:00
125bb613a7 Receiver
- Removed `hasEnsured` (commented-out already)
- Call `ensure(this)` in constructor
- Removed TODOs relating to ensurance

Sender

- Removed `hasEnsured` (commented-out already)
- Call `ensure(this)` in constructor
- Removed TODOs relating to ensurance
2023-06-25 17:01:52 +02:00
9c77cce487 Client
- Added FIXME
2023-06-24 15:48:31 +02:00
0fc3f060c1 Client
- Let unit test for client call `quit()` eventually
2023-06-21 14:40:58 +02:00
4655584fa5 Client
- Let unit test for client call `quit()` eventually
2023-06-21 14:39:23 +02:00
229a137e34 Messages
- Added unit test for `hasIllegalCharacters(string)`
2023-06-21 14:39:05 +02:00
80a6baf0f9 Client
- `sendMessage(Message)` now uses the new `Message(this).encode(ChecksMode)`
2023-06-21 14:23:12 +02:00
67520c2574 Messages
- Implemented `hasIllegalCharacters(string)` which checks whether the provided input string contains any invalid characters
- Updated `encode()` to `encode(ChecksMode)`
2023-06-21 14:22:48 +02:00
06efa23c85 Messages
- Implemented `stripIllegalCharacters(string)` which provided an input string this will strip any illegal characters present within it
2023-06-21 14:09:32 +02:00
e833cf7a93 ConnectionInfo
- Added `getMode()` and `setMode(ChecksMode)`
2023-06-21 13:49:36 +02:00
5bcbdf72cd ChecksMode
- Defined as the mode describes how birchwood will act when encounterin invalid characters that were provided BY the user TO birchwood

ConnectionInfo

- Use `ChecksMode.EASY` by default
2023-06-21 13:49:22 +02:00
f54e6d9d9b Events
- Documented enum `IRCEventType` and its memers
2023-06-21 13:34:38 +02:00
156af08974 Events
- Documented `PongEvent` and `IRCEvent`
2023-06-21 13:34:02 +02:00
e399b0d504 Messages
- Documented module
2023-06-21 11:28:45 +02:00
4be1e2e1e2 ControlCode
- Removed completed TODO
2023-06-21 11:28:16 +02:00