original_string: public function handle_component_failure($e, $component, $interface, $methodname, array $params) {
          // Get the list of the site Data Protection Officers.
          $dpos = api::get_site_dpos();
  
          $messagesubject = get_string('exceptionnotificationsubject', 'tool_dataprivacy');
          $a = (object)[
              'fullmethodname' => \core_privacy\manager::get_provider_classname_for_component($component) . '::' . $methodname,
              'component' => $component,
              'message' => $e->getMessage(),
              'backtrace' => $e->getTraceAsString()
          ];
          $messagebody = get_string('exceptionnotificationbody', 'tool_dataprivacy', $a);
  
          // Email the data request to the Data Protection Officer(s)/Admin(s).
          foreach ($dpos as $dpo) {
              $message = new \core\message\message();
              $message->courseid          = SITEID;
              $message->component         = 'tool_dataprivacy';
              $message->name              = 'notifyexceptions';
              $message->userfrom          = \core_user::get_noreply_user();
              $message->subject           = $messagesubject;
              $message->fullmessageformat = FORMAT_HTML;
              $message->notification      = 1;
              $message->userto            = $dpo;
              $message->fullmessagehtml   = $messagebody;
              $message->fullmessage       = html_to_text($messagebody);
  
              // Send message.
              message_send($message);
          }
      }
code: public function handle_component_failure($e, $component, $interface, $methodname, array $params) {
          // Get the list of the site Data Protection Officers.
          $dpos = api::get_site_dpos();
  
          $messagesubject = get_string('exceptionnotificationsubject', 'tool_dataprivacy');
          $a = (object)[
              'fullmethodname' => \core_privacy\manager::get_provider_classname_for_component($component) . '::' . $methodname,
              'component' => $component,
              'message' => $e->getMessage(),
              'backtrace' => $e->getTraceAsString()
          ];
          $messagebody = get_string('exceptionnotificationbody', 'tool_dataprivacy', $a);
  
          // Email the data request to the Data Protection Officer(s)/Admin(s).
          foreach ($dpos as $dpo) {
              $message = new \core\message\message();
              $message->courseid          = SITEID;
              $message->component         = 'tool_dataprivacy';
              $message->name              = 'notifyexceptions';
              $message->userfrom          = \core_user::get_noreply_user();
              $message->subject           = $messagesubject;
              $message->fullmessageformat = FORMAT_HTML;
              $message->notification      = 1;
              $message->userto            = $dpo;
              $message->fullmessagehtml   = $messagebody;
              $message->fullmessage       = html_to_text($messagebody);
  
              // Send message.
              message_send($message);
          }
      }
code_tokens: public function handle_component_failure ( $ e , $ component , $ interface , $ methodname , array $ params ) { // Get the list of the site Data Protection Officers. $ dpos = api :: get_site_dpos ( ) ; $ messagesubject = get_string ( 'exceptionnotificationsubject' , 'tool_dataprivacy' ) ; $ a = ( object ) [ 'fullmethodname' => \ core_privacy \ manager :: get_provider_classname_for_component ( $ component ) . '::' . $ methodname , 'component' => $ component , 'message' => $ e -> getMessage ( ) , 'backtrace' => $ e -> getTraceAsString ( ) ] ; $ messagebody = get_string ( 'exceptionnotificationbody' , 'tool_dataprivacy' , $ a ) ; // Email the data request to the Data Protection Officer(s)/Admin(s). foreach ( $ dpos as $ dpo ) { $ message = new \ core \ message \ message ( ) ; $ message -> courseid = SITEID ; $ message -> component = 'tool_dataprivacy' ; $ message -> name = 'notifyexceptions' ; $ message -> userfrom = \ core_user :: get_noreply_user ( ) ; $ message -> subject = $ messagesubject ; $ message -> fullmessageformat = FORMAT_HTML ; $ message -> notification = 1 ; $ message -> userto = $ dpo ; $ message -> fullmessagehtml = $ messagebody ; $ message -> fullmessage = html_to_text ( $ messagebody ) ; // Send message. message_send ( $ message ) ; } }
docstring: Notifies all DPOs that an exception occurred.
  
  @param \Throwable $e
  @param string $component
  @param string $interface
  @param string $methodname
  @param array $params
docstring_tokens: Notifies all DPOs that an exception occurred .