def process()

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