This references http://people.apache.org/~aconway/proton/ .
The lower-case class names deprive the user of a helpful distinction. "reactor" is (well, could be) a namespace or a class. "Reactor" is *definitely* a class. Since C++ style permits either, I strongly prefer the caps for classes. handler, messaging_handler, proton_handler. Everything in this api is to do with proton and messaging. As a result, these names do nothing to help the user make distinctions. They have to dig into the documentation to find out what they really are and which ones they should care about. What is messsage_value? The docs say "A message with value semantics". I thought that was the intention for Message. message_reject, message_release. I miss the predicate ending on these. The documentation, speaking in English, says "Raised if a message is reject*ed*". I think the name should to the same. This is also what the existing qpid::messaging API does. Aside: It's not the message per se that is rejected here. It's the delivery. Should we make that distinction? Should bad_url be url_error? The other errors take that approach. Small bonus is that url and url_error sort together nicely. Is there any way to avoid using the data class in the helloworld example? Justin
