Extended buildRuntimeAttr to consume resolved so that resolver can be used for readItems in monitor. Runtime contract extended to differentiate between action and monitor

This commit is contained in:
Lyncoln
2026-10-19 14:00:21 -04:00
parent 169ea26a40
commit 5eb2df2ee1
2 changed files with 26 additions and 17 deletions
+2 -2
View File
@@ -21,13 +21,13 @@ def buildAction (action, outputs):
response, outputs = executeRequest(action, outputs, resolved) response, outputs = executeRequest(action, outputs, resolved)
recursiveresponses.append(response) recursiveresponses.append(response)
outputs, response = buildRuntimeAttr(action, outputs, response) outputs, response = buildRuntimeAttr(action, outputs, resolved, response)
return outputs, recursiveresponses return outputs, recursiveresponses
else: else:
outputs, resolved = buildPreRuntimeAttr(action, outputs) outputs, resolved = buildPreRuntimeAttr(action, outputs)
response, outputs = executeRequest(action, outputs, resolved) response, outputs = executeRequest(action, outputs, resolved)
outputs, response = buildRuntimeAttr(action, outputs, response) outputs, response = buildRuntimeAttr(action, outputs, resolved, response)
return outputs, response return outputs, response
+22 -13
View File
@@ -1,25 +1,34 @@
from core.runtime import buildSelect, buildOutput, buildSave, loadSave, buildLog from core.runtime import buildSelect, buildOutput, buildSave, loadSave, saveRow, buildLog
from core.runtime.image import buildImage from core.runtime.image import buildImage
#from core.runtime.select import buildSelect3 #from core.runtime.select import buildSelect3
from core.runtime.resolver import resolveItem from core.runtime.resolver import resolveItem
def buildPreRuntimeAttr(action, outputs): def buildPreRuntimeAttr(action, outputs):
outputs = loadSave(action, outputs) if action.kind == "action":
outputs = loadSave(action, outputs)
resolved = resolveItem(action, outputs)
return outputs, resolved
elif action.kind == "monitor":
outputs = loadSave(action, outputs)
resolved = {}
return outputs, resolved
resolved = resolveItem(action, outputs) def buildRuntimeAttr(action, outputs, resolved, response):
#print("RESOLVER DEBUG") if action.kind == "action":
#print(resolved) outputs = buildOutput(response, action, outputs)
return outputs, resolved
def buildRuntimeAttr(action, outputs, response): outputs = buildImage(response, action, outputs)
outputs = buildOutput(response, action, outputs)
outputs = buildImage(response, action, outputs) select_data, action, outputs = buildSelect(action, outputs)
select_data, action, outputs = buildSelect(action, outputs) buildSave(action, outputs)
buildSave(action, outputs) saveRow(action, outputs, resolved)
buildLog(action, outputs, response) buildLog(action, outputs, response)
return outputs, response return outputs, response
elif action.kind == "monitor":
#readitems = resolveItem(action, response.json())
#print(readitems)
return outputs, response