This is a new pull request with almost the same changes as PR #59. The only thing missing is the commit that disabled JavaDoc in the JitPack config, which is now part of PR #62.
Below is the original description. See the PR #59 for comments.
This PR improves the setup process of the communication channel between the library and the Discord client:
1.) The path of the Unix domain socket file is not hard-coded anymore, but derived from the available environment variables.
2.) Under Windows a named pipe instead of a socket is used now. This finally brings us Windows support confetti_ball
3.) A generic DiscordChannel interface has been introduced to handle the different ways of connecting to the Discord client. The actual implementations WindowsDiscordChannel and UnixDiscordChannel are mainly wrappers around FileChannel respectively SocketChannel.
The code has been tested with Windows 10 and Arch Linux. No tests on MacOS yet, but chances are good, that it will work there as well. Testing on MacOS was successful, too.
This is a new pull request with almost the same changes as PR #59. The only thing missing is the commit that disabled JavaDoc in the JitPack config, which is now part of PR #62.
Below is the original description. See the PR #59 for comments.