DeliveryMode setting with Pure Java API

Hey @KeganHoltzhausen … how are you doing? Hope all is well!

Yup, from my understanding, you’ll need two publisher services Builder objects if you want per-message control to mix-and-match at will. Our “next gen” APIs were designed to be simpler and simplify development. Simpler use cases too.

Publishing Guaranteed and letting it be demoted is probably mostly fine, unless you’re looking to reduce every nano of latency that you can… or if we’re talking about massive throughput. Also, a Direct subscriber listening to a demoted stream might get dupes if the publisher automatically retransmits a message for any reason (ACK timeout, failover, etc.). The ADB/message spool will automatically de-dupe retransmissions for any Persistent subscriber.

One other thing: if your publisher is using the client-profile setting reject-msg-to-sender-on-no-subscription-match (where the broker will send a NACK if nobody is subscribed to the message) then the publisher will still get a NACK even if there is a Direct subscriber… they gotta be subs on queues or TEs. So maybe that’s not so good?