Why does MessageHubBackedServer allow local connections only?


Why does MessageHubBackedServer allow local connections only? In my dockerized test plugin Gradle test worker run inside Docker containers and thus the communication to the main process happens to be remote, and hence I need to replace the default MessagingServer service with my own that allows the remote connections.

I have checked the Git history, but the remote connections are disabled since the very beginning. Could we change that or at least provide an additional method on MessagingServer, e.g. accept(Action<ObjectConnection>, boolean)?

Just curious, but can you mitigate issues like this by using a “host” network setting on the container (effectively making all addresses local to the host)? I’m not suggesting this as a solution, as it’s often better to have the container more “containerized”, but it might be a workaround for now.

For running integration/functional tests, I need to isolate them fully, because they might bind to the same ports, etc, and there the host networking cannot help me.

My current workaround is to replace MessageHubBackedServer with my own implementation allowing remote connections, but I wonder why the remote connections are forbidden by default.