From 9636be57c7754bddd0c7915bbf0991e1a3be95d3 Mon Sep 17 00:00:00 2001 From: Robert von Burg Date: Mon, 7 Jan 2019 13:56:55 +0100 Subject: [PATCH] [New] Added StrolchElementToJsonVisitor.bagHook() --- .../json/StrolchElementToJsonVisitor.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/li.strolch.model/src/main/java/li/strolch/model/json/StrolchElementToJsonVisitor.java b/li.strolch.model/src/main/java/li/strolch/model/json/StrolchElementToJsonVisitor.java index 86435ff88..aac7e4454 100644 --- a/li.strolch.model/src/main/java/li/strolch/model/json/StrolchElementToJsonVisitor.java +++ b/li.strolch.model/src/main/java/li/strolch/model/json/StrolchElementToJsonVisitor.java @@ -34,6 +34,7 @@ public class StrolchElementToJsonVisitor implements StrolchElementVisitor ignoredTimedStates; private Set ignoredBagTypes; + private BiConsumer bagHook; private BiConsumer resourceHook; private BiConsumer orderHook; private BiConsumer activityHook; @@ -141,6 +142,11 @@ public class StrolchElementToJsonVisitor implements StrolchElementVisitor hook) { + this.bagHook = hook; + return this; + } + public StrolchElementToJsonVisitor resourceHook(BiConsumer hook) { this.resourceHook = hook; return this; @@ -291,12 +297,15 @@ public class StrolchElementToJsonVisitor implements StrolchElementVisitor ignoredParamIds = this.ignoredKeys.getSet(bag.getId()); - addParameterBagFlat(rootJ, ignoredParamIds, bag); + addParameterBagFlat(bagJ, ignoredParamIds, bag); - return rootJ; + if (this.bagHook != null) + this.bagHook.accept(bag, bagJ); + + return bagJ; } return parameterBagToJsonFull(bag); @@ -552,6 +561,9 @@ public class StrolchElementToJsonVisitor implements StrolchElementVisitor