PROTON-1911 Improve performance of String encodes when possible

Optimize the String encoding by adding new method to WritableBuffer that
allows the buffer implementation to optimize how String values are
encoded to UTF8 bytes based on the buffer type.  Using the Java 8
default implementation support for interface methods add a default
version that behaves as the older releases would.  For the ByteBuffer
wrapper optimize the writes by accessing the buffer data in the most
direct way possible.

Help on this solution provided by Robbie Gemmell and Francesco Nigro
6 files changed
tree: 974a45cb1cb76f2c2c23c151fc99f56543081f0f
  1. apache-qpid-proton-j/
  2. examples/
  3. proton-j/
  4. tests/
  5. .gitattributes
  6. .gitignore
  7. .mailmap
  8. .travis.yml
  9. appveyor.yml
  10. LICENSE
  11. NOTICE
  12. pom.xml
  13. README.md
README.md

Apache Qpid Proton-J

Linux Build Status Windows Build Status

Qpid Proton-J is a high-performance, lightweight messaging library. It can be used in the widest range of messaging applications, including brokers, client libraries, routers, bridges, proxies, and more.

Please see http://qpid.apache.org/proton for more information.