peer review request prautobeans

17 views
Skip to first unread message

James Northrup

unread,
Jan 29, 2016, 5:33:42 AM1/29/16
to java-serialization-benchmarking
Hi all

I have a proto based struct serialization for ByteBuffers

https://github.com/0xCopy/prautobeans/

the library is 359+175  lines in 2  files
https://github.com/0xCopy/prautobeans/blob/master/prautobeans-lib/src/main/java/prauto/io/PackedPayload.java#L174

the maven plugin generator is 230 lines, in one source file
https://github.com/0xCopy/prautobeans/blob/master/prautobeans-maven-plugin/src/main/java/prauto/PrautoGen.java

a unit test exists, also.  sample code exists, modelling pouchdb api as a thought excercise.

this is still very early and has had no input so far. 


prautobeans

this project was written with the following goals in mind

  1. enable an alternative autobeans marshalling and proxy codebase
    1. on serverside
    2. use a jdk8 baseline
    3. soon gwt 2.7 client, with bytebuffers
  2. marshal a binary encoding
    1. that packs element sizes into bytes, or 32-bit ints when >254, and someday never, longs
    2. that packs booleans into bits,
    3. that packs nulls into bits (or adds one bit to non-null nullables)
    4. that packs a DAG of proto defined objects
    5. DirectByteBuffer compatibility for zero-copy IO, to solve a need for Direct IO where existing proto based generators to date rely on heap based byte[]
  3. use maven to generate src/main/proto into the above autobeans and marshalling proxies
  4. heap-averse and compact code, c-like, suitable for a c++ interop port in the near-term
TIA
Jim
Reply all
Reply to author
Forward
0 new messages