Please have a look at 2d3c4ba556ebb176c9110ad6a45402be8ba7f413 I have introduced a socketType property to ZMTPSession and moved some stuff around.

Personally I think many parameters are better than config beans, but that's just a preference (And I also think that ZMTPSession is a bit problematic as it is both a config bean and a communications channel to extract remoteIdentity) but I that's a question for a later time.