Commit Graph

36 Commits

Author SHA1 Message Date
ChronosX88
dea57a3cb2
Refactor auth system: make token creation/validation fully pluggable 2020-10-10 22:22:18 +04:00
ChronosX88
eb849a8388
Refactor HelloWorldPlugin (cleanup code) 2020-10-09 17:13:52 +04:00
ChronosX88
ce8ed0d7ad
Add SendMessage with automatic json serialization in ConnectionHandler 2020-10-09 17:12:02 +04:00
ChronosX88
dc030c0521
Update .gitignore 2020-10-09 17:11:37 +04:00
ChronosX88
9376a326b2
Fix : to @ in userID in user registration 2020-10-08 21:17:07 +04:00
ChronosX88
991fae3a71
Implement in-band login/register (CPE 2/3) 2020-10-08 21:12:15 +04:00
ChronosX88
afd43e2553
Implement DefaultAuthProvider plugin 2020-10-08 21:10:44 +04:00
ChronosX88
c6fdd03908
Add methods to IAuthProvider interface 2020-10-08 21:10:29 +04:00
ChronosX88
42a5ffba05
Add ToObject<T> extension method to Dictionary 2020-10-08 21:08:29 +04:00
ChronosX88
9e0088cbba
Implement setting default auth provider by config 2020-10-08 21:07:49 +04:00
ChronosX88
370a7e8dc2
Make PreInitialize method optional for implementing by plugins 2020-10-07 22:18:43 +04:00
ChronosX88
64596e46d8
Implement database connection within the server (move functionality from plugin) 2020-10-07 18:50:54 +04:00
ChronosX88
e8b99b81b7
Show full name of type from which log comes in Logger 2020-10-07 18:49:11 +04:00
ChronosX88
05ea6457bd
Add throwing right exception when invoking exported plugin method in IPCRouter 2020-10-07 18:46:27 +04:00
ChronosX88
bd74068d6f
Implement inter-plugin communication system + add some showcase of it 2020-09-28 21:49:09 +04:00
ChronosX88
a829042581
Implement two example plugins (MongoDB connection wrapper and consumer of this conn wrapper) which is sharing types between them 2020-09-21 22:18:31 +04:00
ChronosX88
d14a058d41
Implement non-working type sharing between plugins 2020-09-21 22:17:17 +04:00
ChronosX88
ec5512ff6b
Change debug log color in Logger 2020-09-21 22:15:04 +04:00
ChronosX88
282e14ae96
Refactor session manager: expose API for plugins 2020-09-14 20:59:42 +04:00
ChronosX88
11379cd6c2
Implement custom auth provider feature in plugin system 2020-09-13 19:26:24 +04:00
ChronosX88
803d898f45
Implement plugin depending/exporting API feature in plugin system 2020-09-13 18:53:10 +04:00
ChronosX88
fdf85d5055
Rename module entity to plugin in the code 2020-09-06 14:29:36 +04:00
ChronosX88
01a7589417
Implement configuration API for plugins 2020-09-06 14:16:13 +04:00
ChronosX88
48d27401ae Optimize waiting process for keeping the process running (replace while loop with EventWaitHandle) 2020-07-19 15:10:14 +04:00
ChronosX88
0f15340065 Add example of hello world plugin 2020-07-19 14:47:38 +04:00
ChronosX88
1133ca8a76 Finally fix module manager, so it now works as expected 2020-07-19 14:47:25 +04:00
ChronosX88
964223444a Add debug log to Logger 2020-07-19 14:46:58 +04:00
ChronosX88
5be00542b8 Enable loading plugins on server startup 2020-07-18 13:34:32 +04:00
ChronosX88
394f9ab908 Implement running websocket server and add handling messages in ConnectionHandler 2020-07-16 12:47:18 +04:00
ChronosX88
f34b4e3596 Add sample config file 2020-07-15 22:15:48 +04:00
ChronosX88
1996546a73 Implement config parsing, implement removing c2s/core event handlers in router, slightly change C2S/Core Event Handler API, Host Module API 2020-07-15 22:08:32 +04:00
ChronosX88
fc609869eb Implement message/core event routing (with pluggable handlers) 2020-06-26 22:59:53 +04:00
ChronosX88
3a54c18af6 Add ProtocolError mode, add JsonProperty attributes to BaseMessage 2020-06-26 22:57:13 +04:00
ChronosX88
eed6727b61 [ObjectExtensions] Add ToByteArray/ConvertToString methods to byte[] and string, make ToDictionary considering property name preferably by JsonPropertyAttribute 2020-06-26 22:56:36 +04:00
ChronosX88
0e8bb5d1b7 Implement logging system 2020-06-26 15:41:09 +04:00
ChronosX88
1cba8c39e8 init 2020-06-20 14:52:05 +04:00