Releases: nanosai/grid-ops-java
ION Encoding Finalized
In this release the ION Element Count field used inside ION Array fields has been replaced with a mandatory ION IntPos field instead. Using an element count IntPos field is now also mandatory inside ION Table fields. The Element Count field will be removed from the ION spec.
Knowing how many elements an array or table has at the beginning, before parsing its elements, makes it possible to pre-allocate an array with the correct number of elements before parsing starts. This eliminates the need for parsing the elements into a temporary List, and copy them into the final array afterwards. This is a bit more optimal.
Recursive object graph reading and writing
The 0.5.0 release contains an improvement of the IonObjectReader and IonObjectWriter and related classes. These classes are now able to read and write object graphs where a POJO class contains a field of its own type. For instance a Node class which contains a Node child1 and Node child2 instance variables inside.
Before this release trying to create an IonObjectReader or IonObjectWriter with classes that referenced itself would result in a stack overflow exception. This is now fixed.
Error responses from NodeContainer
In this version the NodeContainer and related classes sends back an error message if no matching node reactor is found, or no matching protocol is found, or no matching message type is found, in the NodeContainer and related classes.
ION format finalized !
In v. 0.3.0 we have finalized the ION format in v. 1.0. There was a last change to how negative integers are encoded. That change is now embedded in the 0.3.0 release of Grid Ops.
Additionally the IonWriter.destIndex variable has been renamed to "index" to be named consistently with the IonReader.index variable.
First proof-of-concept release !
v0.1.0 Version 0.1.0 - First proof-of-concept