Class InMemoryKeyValueState<K,V>

java.lang.Object
org.apache.storm.state.InMemoryKeyValueState<K,V>
All Implemented Interfaces:
Iterable<Map.Entry<K,V>>, KeyValueState<K,V>, State

public class InMemoryKeyValueState<K,V> extends Object implements KeyValueState<K,V>
An in-memory implementation of the State.
  • Constructor Details

    • InMemoryKeyValueState

      public InMemoryKeyValueState()
  • Method Details

    • put

      public void put(K key, V value)
      Description copied from interface: KeyValueState
      Maps the value with the key.
      Specified by:
      put in interface KeyValueState<K,V>
      Parameters:
      key - the key
      value - the value
    • get

      public V get(K key)
      Description copied from interface: KeyValueState
      Returns the value mapped to the key.
      Specified by:
      get in interface KeyValueState<K,V>
      Parameters:
      key - the key
      Returns:
      the value or null if no mapping is found
    • get

      public V get(K key, V defaultValue)
      Description copied from interface: KeyValueState
      Returns the value mapped to the key or defaultValue if no mapping is found.
      Specified by:
      get in interface KeyValueState<K,V>
      Parameters:
      key - the key
      defaultValue - the value to return if no mapping is found
      Returns:
      the value or defaultValue if no mapping is found
    • delete

      public V delete(K key)
      Description copied from interface: KeyValueState
      Deletes the value mapped to the key, if there is any.
      Specified by:
      delete in interface KeyValueState<K,V>
      Parameters:
      key - the key
    • iterator

      public Iterator<Map.Entry<K,V>> iterator()
      Specified by:
      iterator in interface Iterable<K>
    • commit

      public void commit()
      Description copied from interface: State
      Persist the current state. This is used when the component manages the state.
      Specified by:
      commit in interface State
    • commit

      public void commit(long txid)
      Description copied from interface: State
      Commit a previously prepared transaction. It should be possible to retrieve a committed state later.
      Specified by:
      commit in interface State
      Parameters:
      txid - the transaction id
    • prepareCommit

      public void prepareCommit(long txid)
      Description copied from interface: State
      Invoked by the framework to prepare a transaction for commit. It should be possible to commit the prepared state later.

      The same txid can be prepared again, but the next txid cannot be prepared when previous one is not yet committed.

      Specified by:
      prepareCommit in interface State
      Parameters:
      txid - the transaction id
    • rollback

      public void rollback()
      Description copied from interface: State
      Rollback a prepared transaction to the previously committed state.
      Specified by:
      rollback in interface State
    • toString

      public String toString()
      Overrides:
      toString in class Object