diff --git a/bundles/org.openhab.persistence.inmemory/README.md b/bundles/org.openhab.persistence.inmemory/README.md index f24ab44c853..ec4f0a4adf8 100644 --- a/bundles/org.openhab.persistence.inmemory/README.md +++ b/bundles/org.openhab.persistence.inmemory/README.md @@ -5,7 +5,7 @@ Because of that the `restoreOnStartup` strategy is not supported for this servic The main use-case is to store data that is needed during runtime, e.g. temporary storage of forecast data that is retrieved from a binding. -Since all data is stored in memory only, there is no default strategy for this service. +The default strategy for this service is `forecast`. Unlike other persistence services, you MUST add a configuration, otherwise no data will be persisted. To avoid excessive memory usage, it is recommended to persist only a limited number of items and use a strategy that stores only data that is actually needed. diff --git a/bundles/org.openhab.persistence.inmemory/src/main/java/org/openhab/persistence/inmemory/internal/InMemoryPersistenceService.java b/bundles/org.openhab.persistence.inmemory/src/main/java/org/openhab/persistence/inmemory/internal/InMemoryPersistenceService.java index 0caf9721fb5..3b0d69ad5a9 100644 --- a/bundles/org.openhab.persistence.inmemory/src/main/java/org/openhab/persistence/inmemory/internal/InMemoryPersistenceService.java +++ b/bundles/org.openhab.persistence.inmemory/src/main/java/org/openhab/persistence/inmemory/internal/InMemoryPersistenceService.java @@ -188,8 +188,8 @@ public class InMemoryPersistenceService implements ModifiablePersistenceService @Override public List getDefaultStrategies() { - // persist nothing by default - return List.of(); + // persist only forecasts by default + return List.of(PersistenceStrategy.Globals.FORECAST); } private PersistenceItemInfo toItemInfo(Map.Entry itemEntry) { @@ -268,7 +268,7 @@ public class InMemoryPersistenceService implements ModifiablePersistenceService } } - @SuppressWarnings({ "rawType", "unchecked" }) + @SuppressWarnings("unchecked") private boolean applies(PersistEntry entry, FilterCriteria filter) { ZonedDateTime beginDate = filter.getBeginDate(); if (beginDate != null && beginDate.isAfter(entry.timestamp())) {