java.lang.Object
org.apache.tinkerpop.gremlin.process.computer.util.ImmutableMemory
All Implemented Interfaces:
Memory, Memory.Admin

public final class ImmutableMemory extends Object implements Memory.Admin
Author:
Marko A. Rodriguez (http://markorodriguez.com)
  • Constructor Details

    • ImmutableMemory

      public ImmutableMemory(Memory baseMemory)
  • Method Details

    • keys

      public Set<String> keys()
      Description copied from interface: Memory
      The set of keys currently associated with this memory.
      Specified by:
      keys in interface Memory
      Returns:
      the memory's key set.
    • get

      public <R> R get(String key) throws IllegalArgumentException
      Description copied from interface: Memory
      Get the value associated with the provided key.
      Specified by:
      get in interface Memory
      Type Parameters:
      R - the type of the value
      Parameters:
      key - the key of the value
      Returns:
      the value
      Throws:
      IllegalArgumentException - is thrown if the key does not exist
    • set

      public void set(String key, Object value)
      Specified by:
      set in interface Memory
    • getIteration

      public int getIteration()
      Description copied from interface: Memory
      Get the current iteration number.
      Specified by:
      getIteration in interface Memory
      Returns:
      the current iteration
    • getRuntime

      public long getRuntime()
      Description copied from interface: Memory
      Get the amount of milliseconds the GraphComputer has been executing thus far.
      Specified by:
      getRuntime in interface Memory
      Returns:
      the total time in milliseconds
    • add

      public void add(String key, Object value)
      Description copied from interface: Memory
      Set the value of the provided key. This is typically called in setup() and/or terminate() of the VertexProgram. If this is called during execute(), there is no guarantee as to the ultimately stored value as call order is indeterminate. It is up to the implementation to determine the states in which this method can be called.
      Specified by:
      add in interface Memory
      Parameters:
      key - they key to set a value for
      value - the value to set for the key
    • incrIteration

      public void incrIteration()
      Specified by:
      incrIteration in interface Memory.Admin
    • setIteration

      public void setIteration(int iteration)
      Specified by:
      setIteration in interface Memory.Admin
    • setRuntime

      public void setRuntime(long runtime)
      Specified by:
      setRuntime in interface Memory.Admin
    • toString

      public String toString()
      Overrides:
      toString in class Object