From a3f8c862c0e4fad1a0e585693852405072fde023 Mon Sep 17 00:00:00 2001 From: Robert von Burg Date: Thu, 22 Aug 2019 16:16:49 +0200 Subject: [PATCH] [Fix] Fixed tx.addOrUpdate() when already in filter --- .../li/strolch/persistence/api/AbstractTransaction.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) 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 cf8357626..d317fb5b8 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 @@ -974,8 +974,7 @@ public abstract class AbstractTransaction implements StrolchTransaction { public void addOrUpdate(Resource resource) throws StrolchModelException { assertNotReadOnly(); DBC.PRE.assertNotNull("resource must not be null", resource); - if (hasResource(resource.getType(), resource.getId()) && !getObjectFilter() - .hasElement(Tags.RESOURCE, resource.getLocator())) + if (hasResource(resource.getType(), resource.getId())) getObjectFilter().update(Tags.RESOURCE, resource.getLocator(), resource); else getObjectFilter().add(Tags.RESOURCE, resource.getLocator(), resource); @@ -985,7 +984,7 @@ public abstract class AbstractTransaction implements StrolchTransaction { public void addOrUpdate(Order order) throws StrolchModelException { assertNotReadOnly(); DBC.PRE.assertNotNull("order must not be null", order); - if (hasOrder(order.getType(), order.getId()) && !getObjectFilter().hasElement(Tags.ORDER, order.getLocator())) + if (hasOrder(order.getType(), order.getId())) getObjectFilter().update(Tags.ORDER, order.getLocator(), order); else getObjectFilter().add(Tags.ORDER, order.getLocator(), order); @@ -995,8 +994,7 @@ public abstract class AbstractTransaction implements StrolchTransaction { public void addOrUpdate(Activity activity) throws StrolchModelException { assertNotReadOnly(); DBC.PRE.assertNotNull("activity must not be null", activity); - if (hasActivity(activity.getType(), activity.getId()) && !getObjectFilter() - .hasElement(Tags.ACTIVITY, activity.getLocator())) + if (hasActivity(activity.getType(), activity.getId())) getObjectFilter().update(Tags.ACTIVITY, activity.getLocator(), activity); else getObjectFilter().add(Tags.ACTIVITY, activity.getLocator(), activity);