diff --git a/service/src/main/java/li/strolch/service/AddOrUpdateStrolchRootElementService.java b/service/src/main/java/li/strolch/service/AddOrUpdateStrolchRootElementService.java index a03e5616e..44edaa37a 100644 --- a/service/src/main/java/li/strolch/service/AddOrUpdateStrolchRootElementService.java +++ b/service/src/main/java/li/strolch/service/AddOrUpdateStrolchRootElementService.java @@ -46,27 +46,10 @@ public class AddOrUpdateStrolchRootElementService extends AbstractService { - if (tx.hasResource(arg.rootElement.getType(), arg.rootElement.getId())) { - tx.update((Resource) arg.rootElement); - } else { - tx.add((Resource) arg.rootElement); - } - } - case Tags.ORDER -> { - if (tx.hasOrder(arg.rootElement.getType(), arg.rootElement.getId())) { - tx.update((Order) arg.rootElement); - } else { - tx.add((Order) arg.rootElement); - } - } - case Tags.ACTIVITY -> { - if (tx.hasActivity(arg.rootElement.getType(), arg.rootElement.getId())) { - tx.update((Activity) arg.rootElement); - } else { - tx.add((Activity) arg.rootElement); - } - } + case Tags.RESOURCE -> tx.addOrUpdate((Resource) arg.rootElement); + case Tags.ORDER -> tx.addOrUpdate((Order) arg.rootElement); + case Tags.ACTIVITY -> tx.addOrUpdate((Activity) arg.rootElement); + default -> throw new IllegalStateException("Unexpected value: " + arg.rootElement.getObjectType()); } tx.commitOnClose();