[zeromq-dev] Requesting suggestions for getsockopt() in Java
Steven McCoy
steven.mccoy at miru.hk
Mon Aug 9 16:51:14 CEST 2010
On 9 August 2010 22:42, Martin Sustrik <sustrik at 250bpm.com> wrote:
> gonzalo diethelm wrote:
> >>> As always, just copy Sun's original implementation, implement
> > getters
> >>> and setters for every socket option:
> >> +1
> >
> > Ok, but I seem to remember there was a point made about not adding
> > separate interfaces for each socket option; this way, when new options
> > are added, old code can be made aware of them without changes (or
> > something to that effect). Perhaps this only applied to C code.
> >
> > So, if we go the full Java way, we would end up with the following
> > methods:
> >
> > void setSocketHWM(int hwm);
> > void setSocketSwap(int swap);
> > void setSocketAffinity(int affinity);
> > void setSocketIdentity(byte[] identity);
> > void setSocketSubscribe(byte[] subscribe);
> > void setSocketUnsubscribe(byte[] unsubscribe);
> > void setSocketRate(int rate);
> > void setSocketRecoveryInterval(int recovery_interval);
> > void setSocketMulticastLoop(boolean multicast_loop);
> > void setSocketSendBufferSize(int sndbuf);
> > void setSocketReceiveBufferSize(int rcvbuf);
> > void setSocketReceiveMore(boolean rcvmore);
> >
> > int getSocketHWM();
> > int getSocketSwap();
> > int getSocketAffinity();
> > byte[] getSocketIdentity();
> > byte[] getSocketSubscribe();
> > byte[] getSocketUnsubscribe();
> > int getSocketRate();
> > int getSocketRecoveryInterval();
> > boolean getSocketMulticastLoop();
> > int getSocketSendBufferSize();
> > int getSocketReceiveBufferSize();
> > boolean getSocketReceiveMore();
> >
> > Thoughts?
>
> What I saw on the page referenced by Steve looked like this:
>
> void setOption(int optID, Object val) throws SocketException;
> Object getOption(int optID) throws SocketException;
>
> Isn't that sandard Java sockopt interface?
>
>
Perversely they are doing both, I read the article as that they have now
introduced the type-safe API in 1.4. I don't see the Object API listed in
the documentation, so I presume it's now only the internal API,
http://download-llnw.oracle.com/javase/1.4.2/docs/api/java/net/Socket.html
http://download.oracle.com/javase/1.4.2/docs/api/java/net/ServerSocket.html
--
Steve-o
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20100809/6f382279/attachment.htm>
More information about the zeromq-dev
mailing list