I have been playing with the API, and there is one change that would make the 
API clearer IMO.


Right now you have to send a delivery, and then call send(bytes) to add Bytes 
to the delivery what will make it copy data to the Delivery and self expand the 
buffer.



I have played with a change that made it 5% faster than the most optimal way to 
expand the payload on the Delivery (using the same buffer over and over)


And 15% on a brief calculation against creating the buffer every time... but 
there are cases where this could be a bit worse.



Basically I have created an interface called Payload, and added a method 
setPayload on Delivery. 



I'm not sure yet how I would implement framing into multiple packages.. but I 
think it could be done.. this is just a prototyped idea:


https://github.com/clebertsuconic/qpid-proton/commit/02abe61fc54911955ddcce77b792a153c5476aef



in case you want to fetch the buffer from my git, it's this branch:  
https://github.com/clebertsuconic/qpid-proton/tree/payload



In any case I liked the idea of the setPayload better than sender.send(bytes) 
to set the payload of a message.



Ideas?

Reply via email to