Class ChunkedKeySuffix

  • All Implemented Interfaces:
    java.io.Externalizable, java.io.Serializable, java.lang.Comparable<org.apache.avro.specific.SpecificRecord>, org.apache.avro.generic.GenericContainer, org.apache.avro.generic.GenericRecord, org.apache.avro.generic.IndexedRecord, org.apache.avro.specific.SpecificRecord

    public class ChunkedKeySuffix
    extends org.apache.avro.specific.SpecificRecordBase
    implements org.apache.avro.specific.SpecificRecord
    This record is appended to the end of keys in a store-version where chunking is enabled. N.B.: This is NOT a versioned protocol, hence, it does not support evolution. Special care should be taken if there is ever a need to evolve this.
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      ChunkId chunkId
      This is an optional record which, if null, means that the value associated to this key does not correspond to a chunk (i.e.: it is associated to a normal non-chunked fully self-contained value, or to a ChunkedValueManifest).
      boolean isChunk
      This is used to reliably disambiguate between chunks and non-chunks.
      static org.apache.avro.Schema SCHEMA$  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object get​(int field$)  
      ChunkId getChunkId()
      Gets the value of the 'chunkId' field.
      static org.apache.avro.Schema getClassSchema()  
      boolean getIsChunk()
      Gets the value of the 'isChunk' field.
      org.apache.avro.Schema getSchema()  
      org.apache.avro.specific.SpecificData getSpecificData()  
      void put​(int field$, java.lang.Object value$)  
      void readExternal​(java.io.ObjectInput in)  
      void setChunkId​(ChunkId value)
      Sets the value of the 'chunkId' field.
      void setIsChunk​(boolean value)
      Sets the value of the 'isChunk' field.
      void writeExternal​(java.io.ObjectOutput out)  
      • Methods inherited from class org.apache.avro.specific.SpecificRecordBase

        compareTo, customDecode, customEncode, equals, get, getConversion, getConversion, hasCustomCoders, hashCode, put, toString
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface org.apache.avro.generic.GenericRecord

        hasField
    • Field Detail

      • SCHEMA$

        public static final org.apache.avro.Schema SCHEMA$
      • chunkId

        public ChunkId chunkId
        This is an optional record which, if null, means that the value associated to this key does not correspond to a chunk (i.e.: it is associated to a normal non-chunked fully self-contained value, or to a ChunkedValueManifest).
      • isChunk

        public boolean isChunk
        This is used to reliably disambiguate between chunks and non-chunks. If false, it means that the value associated to this key does not correspond to a chunk (i.e.: it is associated to a normal non-chunked fully self-contained value, or to a ChunkedValueManifest).
    • Constructor Detail

      • ChunkedKeySuffix

        public ChunkedKeySuffix()
        Default constructor. Note that this does not initialize fields to their default values from the schema. If that is desired then one should use newBuilder().
      • ChunkedKeySuffix

        public ChunkedKeySuffix​(ChunkId chunkId,
                                java.lang.Boolean isChunk)
        All-args constructor.
        Parameters:
        chunkId - This is an optional record which, if null, means that the value associated to this key does not correspond to a chunk (i.e.: it is associated to a normal non-chunked fully self-contained value, or to a ChunkedValueManifest).
        isChunk - This is used to reliably disambiguate between chunks and non-chunks. If false, it means that the value associated to this key does not correspond to a chunk (i.e.: it is associated to a normal non-chunked fully self-contained value, or to a ChunkedValueManifest).
    • Method Detail

      • getClassSchema

        public static org.apache.avro.Schema getClassSchema()
      • getSpecificData

        public org.apache.avro.specific.SpecificData getSpecificData()
        Overrides:
        getSpecificData in class org.apache.avro.specific.SpecificRecordBase
      • getSchema

        public org.apache.avro.Schema getSchema()
        Specified by:
        getSchema in interface org.apache.avro.generic.GenericContainer
        Specified by:
        getSchema in class org.apache.avro.specific.SpecificRecordBase
      • get

        public java.lang.Object get​(int field$)
        Specified by:
        get in interface org.apache.avro.generic.IndexedRecord
        Specified by:
        get in class org.apache.avro.specific.SpecificRecordBase
      • put

        public void put​(int field$,
                        java.lang.Object value$)
        Specified by:
        put in interface org.apache.avro.generic.IndexedRecord
        Specified by:
        put in class org.apache.avro.specific.SpecificRecordBase
      • getChunkId

        public ChunkId getChunkId()
        Gets the value of the 'chunkId' field.
        Returns:
        This is an optional record which, if null, means that the value associated to this key does not correspond to a chunk (i.e.: it is associated to a normal non-chunked fully self-contained value, or to a ChunkedValueManifest).
      • setChunkId

        public void setChunkId​(ChunkId value)
        Sets the value of the 'chunkId' field. This is an optional record which, if null, means that the value associated to this key does not correspond to a chunk (i.e.: it is associated to a normal non-chunked fully self-contained value, or to a ChunkedValueManifest).
        Parameters:
        value - the value to set.
      • getIsChunk

        public boolean getIsChunk()
        Gets the value of the 'isChunk' field.
        Returns:
        This is used to reliably disambiguate between chunks and non-chunks. If false, it means that the value associated to this key does not correspond to a chunk (i.e.: it is associated to a normal non-chunked fully self-contained value, or to a ChunkedValueManifest).
      • setIsChunk

        public void setIsChunk​(boolean value)
        Sets the value of the 'isChunk' field. This is used to reliably disambiguate between chunks and non-chunks. If false, it means that the value associated to this key does not correspond to a chunk (i.e.: it is associated to a normal non-chunked fully self-contained value, or to a ChunkedValueManifest).
        Parameters:
        value - the value to set.
      • writeExternal

        public void writeExternal​(java.io.ObjectOutput out)
                           throws java.io.IOException
        Specified by:
        writeExternal in interface java.io.Externalizable
        Overrides:
        writeExternal in class org.apache.avro.specific.SpecificRecordBase
        Throws:
        java.io.IOException
      • readExternal

        public void readExternal​(java.io.ObjectInput in)
                          throws java.io.IOException
        Specified by:
        readExternal in interface java.io.Externalizable
        Overrides:
        readExternal in class org.apache.avro.specific.SpecificRecordBase
        Throws:
        java.io.IOException