nodes: 0, module; 1, function_definition; 2, function_name:_UpdateForemanProcessStatus; 3, parameters; 4, block; 5, identifier:self; 6, expression_statement; 7, expression_statement; 8, expression_statement; 9, expression_statement; 10, expression_statement; 11, comment:"""Update the foreman process status."""; 12, assignment; 13, assignment; 14, call; 15, call; 16, identifier:used_memory; 17, boolean_operator; 18, identifier:display_name; 19, call; 20, attribute; 21, argument_list; 22, attribute; 23, argument_list; 24, call; 25, integer:0; 26, identifier:getattr; 27, argument_list; 28, attribute; 29, identifier:UpdateForemanStatus; 30, attribute; 31, attribute; 32, attribute; 33, identifier:used_memory; 34, identifier:display_name; 35, attribute; 36, attribute; 37, attribute; 38, attribute; 39, attribute; 40, attribute; 41, attribute; 42, attribute; 43, attribute; 44, attribute; 45, attribute; 46, identifier:UpdateEventsStatus; 47, attribute; 48, attribute; 49, argument_list; 50, attribute; 51, string; 52, string; 53, identifier:self; 54, identifier:_processing_status; 55, identifier:self; 56, identifier:_name; 57, identifier:self; 58, identifier:_status; 59, identifier:self; 60, identifier:_pid; 61, identifier:self; 62, identifier:_number_of_consumed_sources; 63, identifier:self; 64, identifier:_number_of_produced_sources; 65, identifier:self; 66, identifier:_number_of_consumed_events; 67, identifier:self; 68, identifier:_number_of_produced_events; 69, identifier:self; 70, identifier:_number_of_consumed_event_tags; 71, identifier:self; 72, identifier:_number_of_produced_event_tags; 73, identifier:self; 74, identifier:_number_of_consumed_warnings; 75, identifier:self; 76, identifier:_number_of_produced_warnings; 77, identifier:self; 78, identifier:_number_of_consumed_reports; 79, identifier:self; 80, identifier:_number_of_produced_reports; 81, identifier:self; 82, identifier:_processing_status; 83, identifier:self; 84, identifier:_events_status; 85, attribute; 86, identifier:GetUsedMemory; 87, identifier:self; 88, identifier:_merge_task; 89, string_content:identifier; 90, identifier:self; 91, identifier:_process_information
code: def _UpdateForemanProcessStatus(self):
      """Update the foreman process status."""
      used_memory = self._process_information.GetUsedMemory() or 0
  
      display_name = getattr(self._merge_task, 'identifier', '')
  
      self._processing_status.UpdateForemanStatus(
          self._name, self._status, self._pid, used_memory, display_name,
          self._number_of_consumed_sources, self._number_of_produced_sources,
          self._number_of_consumed_events, self._number_of_produced_events,
          self._number_of_consumed_event_tags,
          self._number_of_produced_event_tags,
          self._number_of_consumed_warnings, self._number_of_produced_warnings,
          self._number_of_consumed_reports, self._number_of_produced_reports)
  
      self._processing_status.UpdateEventsStatus(self._events_status)