[GitHub] mbeckerle opened a new pull request #61: Preliminary Review - Base64 layering runs first parsing unit test.
mbeckerle opened a new pull request #61: Preliminary Review - Base64 layering runs first parsing unit test.
(Not expecting approval here. Just looking for early feedback on how this is looking.)
All properties for Base64/layering implemented.
Only layerLengthKind 'explicit' and 'delimited' are allowed now, as
those are the only use cases we have.
Layers allowed are base64, base64_MIME, base64_URLSAFE,
gzip, compress, ais.
The base64 cases could be explicit, but known examples are delimited.
The gzip/compress comes from mil-std-2045 headers, and those have
AIS is delimited.
(For future: ASN.1 Object ID encoding has explicit length.)
Mostly characterized with tests, what is needed in order to implement
stream filters that impose terminators that are scanned for - using
Java's Scanner class.
Java's scanner class saves us the hassle of block filling/enlarging,
etc. that is otherwise necessary when you want to use the regex
libraries against a stream.
Also put catch for ClassNotFound around compiler.reload for Java 7 vs.
Java 8. Base64 needs Java 8 classes.
Identified a couple cleanups where java.io.HashMap can be replaced with
our NonAllocatingMap - which uses Maybe types instead of null/notNull.
Added a charset so we can use the encoder to unparse AIS data that must
be armored with AIS_PAYLOAD_ARMORING 6 bit to 8 bit.
This is all part of layering, i.e., AIS format requires layering as does
base64, so merging this all onto same branch.
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
Apache Git Services