Use a WebSocketManager for all WebSocket connections
The server is complete and should yield both better performance due to having a single server and cleaner code since the WebSocket library is abstracted into a new
Further abstract the implementation by handling the WebSocket clients, and create a new
WebSocketService that derives from
WebSocketSharp.Server.WebSocketBehavior. Use the latter in
WebSocketManager implementation is going to be large once clients are handled. Make
WebSocketManager a standalone class, then add
IWebSocketClientManager along with implementations that are injected into
WebSocket clients are used in only a few locations in the project and each use requires specific needs, so I don't think it's worth changing them right now. It can be reconsidered if we change to another WebSocket library or add more WebSocket clients.
Deleting a branch is permanent. It CANNOT be undone. Continue?