From d58ea3112afb7807dfa53362b8d0a41613f2824e Mon Sep 17 00:00:00 2001 From: Lyncoln Date: Sun, 18 Oct 2026 00:15:59 -0400 Subject: [PATCH] Added image grabbing and data capacity to request and included runtime recognition --- core/apirequest/execute.py | 3 ++- core/apirequest/request.py | 3 +++ core/runtime/image.py | 12 ++++++++++++ core/runtime/runtimecontract.py | 6 +++++- 4 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 core/runtime/image.py diff --git a/core/apirequest/execute.py b/core/apirequest/execute.py index a2a0df4..9a31893 100644 --- a/core/apirequest/execute.py +++ b/core/apirequest/execute.py @@ -11,7 +11,8 @@ def executeRequest(action, outputs, resolved): method=request["method"], url=request["path"], json=request.get("object"), - headers=request.get("headers") + headers=request.get("headers"), + data=request.get("data") ) # if definition hasattr(cookies): diff --git a/core/apirequest/request.py b/core/apirequest/request.py index 05f5a22..ed664ff 100644 --- a/core/apirequest/request.py +++ b/core/apirequest/request.py @@ -17,4 +17,7 @@ def buildRequest(definition, outputs, resolved): if hasattr(definition, "headers"): request["headers"] = buildHeaders(definition, request, outputs, resolved) + if hasattr(definition, "requestdata"): + request["data"] = outputs[definition.requestdata] + return request, outputs diff --git a/core/runtime/image.py b/core/runtime/image.py new file mode 100644 index 0000000..28b1458 --- /dev/null +++ b/core/runtime/image.py @@ -0,0 +1,12 @@ +def buildImage(response, action, outputs): + if hasattr(action, "image"): + if response is not None: + #try: + imagebytes = response.content + outputs[action.image] = imagebytes + #except AttributeError: + + else: + print("No response received"), + + return outputs \ No newline at end of file diff --git a/core/runtime/runtimecontract.py b/core/runtime/runtimecontract.py index cdee4a2..9947c6d 100644 --- a/core/runtime/runtimecontract.py +++ b/core/runtime/runtimecontract.py @@ -1,4 +1,5 @@ from core.runtime import buildSelect, buildOutput, buildSave, loadSave, buildLog +from core.runtime.image import buildImage #from core.runtime.select import buildSelect3 from core.runtime.resolver import resolveItem @@ -6,11 +7,14 @@ def buildPreRuntimeAttr(action, outputs): outputs = loadSave(action, outputs) resolved = resolveItem(action, outputs) - + #print("RESOLVER DEBUG") + #print(resolved) return outputs, resolved def buildRuntimeAttr(action, outputs, response): outputs = buildOutput(response, action, outputs) + + outputs = buildImage(response, action, outputs) select_data, action, outputs = buildSelect(action, outputs)