public class GzipBundleCompression
extends Object
Class responsible for serialization and compression of resource bundles. Only bundles whose
values are strings or arrays of strings are supported. While in theory the bundles can contain
any objects, in practise it is rarely the case.
The serialization format is the following:
LEN1 INDICES LEN2 TEXT
where LEN1 and LEN2 are the lengths of byte arrays, TEXT is the actual serialized content of all
keys and values merged into a single string and INDICES describe how to deserialize the content
back into a map. The format of indices is the following:
( ARR_LEN KEY_LEN VALUE_LEN{ARR_LEN} )*
It is a variable length list of entries. Each entry starts with ARR_LEN, which indicates the
length of the value array or -1 for simple string values. KEY_LEN and VALUE_LEN should be
self-explanatory.