Class MemoryStateStore

java.lang.Object
org.pipservices3.components.state.MemoryStateStore
All Implemented Interfaces:
org.pipservices3.commons.config.IConfigurable, org.pipservices3.commons.config.IReconfigurable, IStateStore

public class MemoryStateStore extends Object implements IStateStore, org.pipservices3.commons.config.IReconfigurable
State store that keeps states in the process memory. Remember: This implementation is not suitable for synchronization of distributed processes. ### Configuration parameters ###
    - options:
  • - timeout: default caching timeout in milliseconds (default: disabled)
See Also:
  • Constructor Details

    • MemoryStateStore

      public MemoryStateStore()
  • Method Details

    • configure

      public void configure(org.pipservices3.commons.config.ConfigParams configParams) throws org.pipservices3.commons.errors.ConfigException
      Configures component by passing configuration parameters.
      Specified by:
      configure in interface org.pipservices3.commons.config.IConfigurable
      Parameters:
      configParams - configuration parameters to be set.
      Throws:
      org.pipservices3.commons.errors.ConfigException
    • load

      public <T> T load(String correlationId, String key)
      Loads state from the store using its key. If value is missing in the store it returns null.
      Specified by:
      load in interface IStateStore
      Type Parameters:
      T -
      Parameters:
      correlationId - (optional) transaction id to trace execution through call chain.
      key - a unique state key.
      Returns:
      the state value or null if value wasn't found.
    • loadBulk

      public <T> List<StateValue<T>> loadBulk(String correlationId, List<String> keys)
      Loads an array of states from the store using their keys.
      Specified by:
      loadBulk in interface IStateStore
      Type Parameters:
      T -
      Parameters:
      correlationId - (optional) transaction id to trace execution through call chain.
      keys - unique state keys.
      Returns:
      an array with state values.
    • save

      public <T> T save(String correlationId, String key, T value)
      Saves state into the store
      Specified by:
      save in interface IStateStore
      Type Parameters:
      T -
      Parameters:
      correlationId - (optional) transaction id to trace execution through call chain.
      key - a unique state key.
      value - a state value.
      Returns:
      The value that was stored in the cache.
    • delete

      public <T> T delete(String correlationId, String key)
      Deletes a state from the store by its key.
      Specified by:
      delete in interface IStateStore
      Type Parameters:
      T -
      Parameters:
      correlationId - (optional) transaction id to trace execution through call chain.
      key - a unique value key.
      Returns:
      deleted item