Interface MonthDataStorage

  • All Superinterfaces:
    PluginFeature

    public interface MonthDataStorage
    extends PluginFeature
    PluginFeature that provides a storage backend for month data. This class may keep the data on the local disk or on a backend server. YearMonth is used as key for loading and storing entries.
    • Method Detail

      • load

        java.util.Optional<MonthData> load​(java.time.YearMonth month)
        Parameters:
        month - the month for which to load the data.
        Returns:
        the data for the given month.
      • store

        void store​(java.time.YearMonth month,
                   MonthData data)
        Store the data for a given month.
        Parameters:
        month - the month.
        data - the data to store.
      • getAvailableDataMonths

        java.util.List<java.time.YearMonth> getAvailableDataMonths()
        Returns:
        all months for that data is available in the store.
      • loadAll

        java.util.List<MonthData> loadAll()
        Returns:
        all available data.