Interface MapChangeTracker

All Superinterfaces:
ChangeTracker
All Known Implementing Classes:
AbstractLRSProxyMap, MapChangeTrackerImpl

public interface MapChangeTracker extends ChangeTracker
Change tracker that can be used for maps. If the user calls any mutating methods on the map that do not have an equivalent in this change tracker, then you must call ChangeTracker.stopTracking() after applying the operation to the map. The collections returned from ChangeTracker.getAdded() and ChangeTracker.getRemoved() will be collections of keys to add/remove.
Author:
Abe White
  • Method Details

    • getTrackKeys

      boolean getTrackKeys()
      Whether to track keys or values. Defaults to keys. If you set to values, it is assumed there is a 1-1 correlation between keys and values in this map.
    • setTrackKeys

      void setTrackKeys(boolean keys)
      Whether to track keys or values. Defaults to keys. If you set to values, it is assumed there is a 1-1 correlation between keys and values in this map.
    • added

      void added(Object key, Object val)
      Record that the given entry was added to the map.
    • removed

      void removed(Object key, Object val)
      Record that the given entry was removed from the map.
    • changed

      void changed(Object key, Object oldVal, Object newVal)
      Record that the given entry was altered.