Open berngp opened 13 years ago
We have two potential solutions we are working on...
OS FIFOs( aka named pipes) per User per Server one per Client.
~/.groovy/groovyserver/server.fifo
~/.groovy/groovyserver/clients.fifo.d
~/.groovy/groovyserver/scripts
Notes
Hi,Berngp Thank you for idea. About 2, you mean use named pipe of Unix instead of TCP domain socket port? Is there are way to implement this in Windows, without cygwin? Or we have to use Win32 API directly?
Hi Uehaj Yes FIFOs (aka. named pipes). I am working on a *Nix version of this. I don't have a Windows machine but my understanding is that it supports it natively and through cygwin (Win32 SDK can open them in the same way as files).
I'm considering an automatic mechanism of decision of available port number for each user. it wasn't in time for v0.6 but I wish I could implement it at v0.7.
No worries, haven't worked with the FIFOs (btw JDK 1.7 supports binary sockets.. problem is.. not sure when 1.7 will arrive)
Is there currently a workaround to this issue that would allow groovyserv to be used by multiple users in a shared UNIX environment?
You can specify the port number when invoking groovyserver and groovyclient. please use the different port number for each user. http://kobo.github.com/groovyserv/userguide_en.html#port-number
Given user
userA
and useruserB
and both users are logged to the same _Nix system (Ubuntu, *Fedora_, Centos, RedHat)When they try to run
groovyclient -v
at different times, then the call will fail for the second one with the following message.or just fail silently.
Logs: Server started with port: 1961 Unexpected error: GroovyServer ----> java.lang.NullPointerException: Cannot invoke method getAt() on null object ... (ClientProtocols.groovy:100)