Files
rmmanager/core/apirequest/path.py
T

67 lines
1.7 KiB
Python

def buildPath(path, outputs, resolved):
result = ""
for part in path:
if isinstance(part, dict):
if "resolved" in part:
value = resolved[part["resolved"]]
elif "output" in part:
value = outputs[part["output"]]
else:
raise ValueError(f"Unsupported path component: {part}")
result += str(value)
else:
result += str(part)
return result
def buildPath3(path, outputs, resolved):
if isinstance(path, str):
return path
result = ""
for part in path:
if isinstance(part, dict):
if "resolved" in part:
#for key, val in part.items():
#value = outputs[part["output"]][part["keys"]]
value = resolved[part["resolved"]]
#print("DEBUG path", value)
#for key in part.get("keys", []):
#value = value[key]
if "suffix" in part:
suffix = part["suffix"]
if value != None:
result += str(value)
if suffix != None:
result += str(suffix)
else:
result += part
print(result)
return result
def buildPath2(path, outputs, resolved):
if isinstance(path, str):
return path
result = ""
for part in path:
if isinstance(part, dict):
#value = outputs[part["output"]][part["keys"]]
value = outputs["path"]
#print("DEBUG path", value)
#for key in part.get("keys", []):
#value = value[key]
result += str(value)
else:
result += part
#print(result)
return result