in modular_api/helpers/response_processor.py [0:0]
def process(self) -> Tuple[Dict, int]:
resp = self._resp
getter = self.get_first
if self._keep_extras:
resp = resp.copy() # shallow copy will do
getter = self.pop_first
code = getter(resp, (MODULAR_API_JSON_CODE, MODULAR_API_CODE)) or 500
message = getter(resp, (MODULAR_API_JSON_MESSAGE, MODULAR_API_MESSAGE))
items = getter(resp, (MODULAR_API_ITEMS,))
table_title = getter(resp, (MODULAR_API_TABLE_TITLE,))
warnings = getter(
resp, (MODULAR_API_JSON_WARNINGS, MODULAR_API_WARNINGS)
) or []
content = {MODULAR_API_JSON_WARNINGS: warnings}
if message:
content.update({
MODULAR_API_JSON_MESSAGE: message
})
elif items:
content.update({
MODULAR_API_ITEMS: items,
MODULAR_API_TABLE_TITLE: table_title
})
else:
pass # _LOG.warning('Something is wrong')
if self._keep_extras:
content.update(resp) # updating with everything left
return content, code