29 lines
782 B
Python
29 lines
782 B
Python
from .object import buildObject
|
|
|
|
def buildRequest(definition, outputs):
|
|
request = {
|
|
"method": definition.method,
|
|
"path": definition.path,
|
|
}
|
|
|
|
if hasattr(definition, "keys"):
|
|
request["object"] = buildObject(definition.keys, outputs)
|
|
|
|
if hasattr(definition, "headers"):
|
|
headers = {}
|
|
|
|
for header_name, header_value in definition.headers.items():
|
|
value = header_value
|
|
|
|
if isinstance(value, dict) and "output" in header_value:
|
|
value = outputs[value["output"]]
|
|
|
|
if isinstance(header_value, dict) and "prefix" in header_value:
|
|
value = header_value["prefix"] + value
|
|
|
|
headers[header_name] = value
|
|
|
|
request["headers"] = headers
|
|
|
|
return request
|