示例#1
0
 def _process_response(self, response):
     report = self._get_response_report(response)
     if report:
         self._report(report)
         return
     results = None
     target = response.request.target
     try:
         results = json.loads(response.data)
     except ValueError:
         self._report(reports.invalid_response_format(target.label))
         return
     results = node_communication_format.response_to_result(
         results, self._response_key, list(self._action_definition.keys()),
         target.label)
     for key, item_response in sorted(results.items()):
         if self._is_success(item_response):
             #only success process individually
             report = self._success_report(target.label, key)
         else:
             report = self._failure_report(
                 target.label, key,
                 node_communication_format.get_format_result(
                     self._code_message_map)(item_response),
                 **self._action_error_force)
         self._report(report)
示例#2
0
文件: nodes.py 项目: tomjelinek/pcs
 def _process_response(self, response):
     report = self._get_response_report(response)
     if report:
         self._report(report)
         return
     results = None
     target = response.request.target
     try:
         results = json.loads(response.data)
     except ValueError:
         self._report(reports.invalid_response_format(target.label))
         return
     results = node_communication_format.response_to_result(
         results,
         self._response_key,
         list(self._action_definition.keys()),
         target.label
     )
     for key, item_response in sorted(results.items()):
         if self._is_success(item_response):
             #only success process individually
             report = self._success_report(
                 target.label,
                 self._action_key_to_report(key),
             )
         else:
             report = self._failure_report(
                 target.label,
                 self._action_key_to_report(key),
                 node_communication_format.get_format_result(
                     self._code_message_map
                 )(item_response),
                 **self._action_error_force
             )
         self._report(report)