Class DictionaryEncoder


  • public class DictionaryEncoder
    extends Encoder
    An encoder implementing dictionary encoding.
    Encoding format: 
     <map> <indexes>
     <map> := <map length> <map data>
     <map data> := [<entry size><entry data>]...
     <indexes> := [<index>]...
     
    • Constructor Detail

      • DictionaryEncoder

        public DictionaryEncoder()
    • Method Detail

      • encode

        public void encode​(Binary value,
                           java.io.ByteArrayOutputStream out)
        Overrides:
        encode in class Encoder
      • flush

        public void flush​(java.io.ByteArrayOutputStream out)
        Description copied from class: Encoder
        Write all values buffered in memory cache to OutputStream.
        Specified by:
        flush in class Encoder
        Parameters:
        out - - ByteArrayOutputStream
      • getOneItemMaxSize

        public int getOneItemMaxSize()
        Description copied from class: Encoder
        When encoder accepts a new incoming data point, the maximal possible size in byte it takes to store in memory.
        Overrides:
        getOneItemMaxSize in class Encoder
        Returns:
        the maximal possible size of one data item encoded by this encoder
      • getMaxByteSize

        public long getMaxByteSize()
        Description copied from class: Encoder
        The maximal possible memory size occupied by current Encoder. This statistic value doesn't involve OutputStream.
        Overrides:
        getMaxByteSize in class Encoder
        Returns:
        the maximal size of possible memory occupied by current encoder