Interface DataKeyAggregator

All Known Implementing Classes:
LoadUnloadDataKeyAggregator

public interface DataKeyAggregator
  • Method Details

    • aggregate

      @NotNull @NotNull DataHolder aggregate(@NotNull @NotNull DataHolder combined)
      Combine options by applying aggregate action keys
      Parameters:
      combined - set of combined options (by overwriting or combined by prior aggregator)
      Returns:
      combined and cleaned of aggregate action keys, return MutableDataHolder if it was modified so downstream aggregators re-use the mutable
    • aggregateActions

      @NotNull @NotNull DataHolder aggregateActions(@NotNull @NotNull DataHolder combined, @NotNull @NotNull DataHolder other, @NotNull @NotNull DataHolder overrides)
      Combine aggregate action keys from two sets but do not apply them
      Parameters:
      combined - set of combined options (by overwriting or combined by prior aggregator)
      other - set of original uncombined options
      overrides - overriding set of options
      Returns:
      combined aggregate actions from other and overrides overwritten in combined
    • clean

      @NotNull @NotNull DataHolder clean(DataHolder combined)
      Remove any keys which contain aggregation actions and do not represent a state
      Parameters:
      combined - combined data holder
      Returns:
      cleaned of all aggregate action keys
    • invokeAfterSet

      @Nullable @Nullable Set<Class<?>> invokeAfterSet()
      return a set of aggregator classes this aggregator should run after
      Returns:
      keys