Interface Memoable


public interface Memoable
Interface for Memoable objects. Memoable objects allow the taking of a snapshot of their internal state via the copy() method and then reseting the object back to that state later using the reset() method.
  • Method Summary

    Modifier and Type
    Method
    Description
    Produce a copy of this object with its configuration and in its current state.
    void
    reset(Memoable other)
    Restore a copied object state into this object.
  • Method Details

    • copy

      Memoable copy()
      Produce a copy of this object with its configuration and in its current state.

      The returned object may be used simply to store the state, or may be used as a similar object starting from the copied state.

    • reset

      void reset(Memoable other)
      Restore a copied object state into this object.

      Implementations of this method should try to avoid or minimise memory allocation to perform the reset.

      Parameters:
      other - an object originally copied from an object of the same type as this instance.
      Throws:
      ClassCastException - if the provided object is not of the correct type.
      MemoableResetException - if the other parameter is in some other way invalid.