<div dir="ltr">On Sun, Feb 3, 2013 at 4:57 AM, Pieter Hintjens <span dir="ltr"><<a href="mailto:ph@imatix.com" target="_blank">ph@imatix.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><span style="color:rgb(34,34,34)">I'd encourage you to look at CZMQ and at least use some common</span><br></div></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

terminology, if you don't map to similar classes. The key features<br>
which help a lot are:<br>
<br>
* message = list of frames<br>
* attached threads, connected by 'pipes'<br>
* automatic closing of sockets when context is destroyed<br>
* context-level linger option<br>
<br>
I'm also thinking of writing a class to hide zmq_poll and do that more<br>
neatly, e.g. manage tickless timers automatically.<br></blockquote><div><br></div><div style>Excellent ideas.  I'm pretty much a zeromq newb, still working through the guide.  Initially I was quite turned off by the java APIs, which is why I want to make them more idiomatic.  </div>
<div style><br></div><div style>Anyone else using the java APIs (either jzmq or jeromq) who can provide me pain points from in the trenches will definitely help with the API design.</div><div style><br></div><div style>My plan is to do this incrementally.  First, I'll work on "modernizing" the existing API (get rid of int flags, use Collections instead of arrays, make it more OO, etc), then, once I have a better handle on the bigger picture (and have studied CZMQ), I'll start layering higher level abstractions on top.</div>
<div style><br></div><div style>If anyone has suggestions or ideas, please let me know.  You can also follow along on my progress in my jeromq fork on github.  I'm jkwatson over there.</div><div style><br></div><div style>
Thanks,</div><div style>  John</div><div style><br></div></div></div></div>