Class BaseBinaryStateIterator<K,​V>

    • Constructor Detail

      • BaseBinaryStateIterator

        public BaseBinaryStateIterator​(Iterator<Map.Entry<byte[],​byte[]>> pendingPrepareIterator,
                                       Iterator<Map.Entry<byte[],​byte[]>> pendingCommitIterator)
        Constructor.
        Parameters:
        pendingPrepareIterator - The iterator of pendingPrepare
        pendingCommitIterator - The iterator of pendingCommit
    • Method Detail

      • loadChunkFromStateStorage

        protected abstract Iterator<Map.Entry<byte[],​byte[]>> loadChunkFromStateStorage()
        Load some part of state KVs from storage and returns iterator of cached data from storage.
        Specified by:
        loadChunkFromStateStorage in class BaseStateIterator<K,​V,​byte[],​byte[]>
        Returns:
        Iterator of loaded state KVs
      • isEndOfDataFromStorage

        protected abstract boolean isEndOfDataFromStorage()
        Check whether end of data is reached from storage state KVs.
        Specified by:
        isEndOfDataFromStorage in class BaseStateIterator<K,​V,​byte[],​byte[]>
        Returns:
        whether end of data is reached from storage state KVs
      • decodeKey

        protected abstract K decodeKey​(byte[] key)
        Decode key to convert byte array to state key type.
        Specified by:
        decodeKey in class BaseStateIterator<K,​V,​byte[],​byte[]>
        Parameters:
        key - byte array encoded key
        Returns:
        Decoded value of key
      • decodeValue

        protected abstract V decodeValue​(byte[] value)
        Decode value to convert byte array to state value type.
        Specified by:
        decodeValue in class BaseStateIterator<K,​V,​byte[],​byte[]>
        Parameters:
        value - byte array encoded value
        Returns:
        Decoded value of value
      • isTombstoneValue

        protected abstract boolean isTombstoneValue​(byte[] value)
        Check whether the value is tombstone (deletion mark) value.
        Specified by:
        isTombstoneValue in class BaseStateIterator<K,​V,​byte[],​byte[]>
        Parameters:
        value - the value to check
        Returns:
        true if the value is tombstone, false otherwise