diff --git a/li.strolch.agent/src/main/java/li/strolch/agent/impl/TransientElementMap.java b/li.strolch.agent/src/main/java/li/strolch/agent/impl/TransientElementMap.java index a20208eb6..ea7a23bbe 100644 --- a/li.strolch.agent/src/main/java/li/strolch/agent/impl/TransientElementMap.java +++ b/li.strolch.agent/src/main/java/li/strolch/agent/impl/TransientElementMap.java @@ -15,7 +15,6 @@ */ package li.strolch.agent.impl; -import static java.util.function.Function.identity; import static li.strolch.model.StrolchModelConstants.TEMPLATE; import java.text.MessageFormat; @@ -44,7 +43,7 @@ public abstract class TransientElementMap implemen protected static final Logger logger = LoggerFactory.getLogger(TransientElementMap.class); - private Map> elementMap; + private final Map> elementMap; public TransientElementMap() { this.elementMap = new HashMap<>(); @@ -63,8 +62,8 @@ public abstract class TransientElementMap implemen @Override public synchronized long querySize(StrolchTransaction tx) { - return this.elementMap.entrySet().stream() // - .map(e -> e.getValue().entrySet().size()) // + return this.elementMap.values().stream() // + .map(map -> map.entrySet().size()) // .mapToInt(Integer::valueOf) // .sum(); } @@ -227,10 +226,8 @@ public abstract class TransientElementMap implemen @Override public synchronized Set getAllKeys(StrolchTransaction tx) { - return this.elementMap.entrySet().stream() // - .map(e -> e.getValue().entrySet().stream() // - .map(Map.Entry::getKey)) // - .flatMap(identity()) // + return this.elementMap.values().stream() // + .flatMap(map -> map.keySet().stream()) // .collect(Collectors.toSet()); } @@ -240,9 +237,7 @@ public abstract class TransientElementMap implemen if (byType == null) return new HashSet<>(0); - return byType.entrySet().stream() // - .map(Map.Entry::getKey) // - .collect(Collectors.toSet()); + return new HashSet<>(byType.keySet()); } /** diff --git a/li.strolch.agent/src/main/java/li/strolch/persistence/api/AbstractTransaction.java b/li.strolch.agent/src/main/java/li/strolch/persistence/api/AbstractTransaction.java index 6b46bd39d..79bf40704 100644 --- a/li.strolch.agent/src/main/java/li/strolch/persistence/api/AbstractTransaction.java +++ b/li.strolch.agent/src/main/java/li/strolch/persistence/api/AbstractTransaction.java @@ -1375,11 +1375,11 @@ public abstract class AbstractTransaction implements StrolchTransaction { changedR = this.objectFilter.getAdded(Resource.class, Tags.RESOURCE); if (changedR.size() == 1) { AddResourceCommand cmd = new AddResourceCommand(this); - cmd.setResource((Resource) changedR.get(0)); + cmd.setResource(changedR.get(0)); addCommand(cmd); } else if (changedR.size() > 1) { AddResourcesCommand cmd = new AddResourcesCommand(this); - changedR.stream().map(e -> (Resource) e).forEach(cmd::addResource); + cmd.setResources(changedR); addCommand(cmd); }