You are here

function webhooks_file_download in Webhooks 8

Implements hook_file_download().

File

./webhooks.module, line 144
Contains webhooks.module.

Code

function webhooks_file_download($uri) {

  /** @var \Drupal\webhooks\WebhooksService $webhooks_service */
  $webhooks_service = \Drupal::service('webhooks.service');

  /** @var \Symfony\Component\Serializer\Serializer $serializer */
  $serializer = \Drupal::service('serializer');
  $event = implode(':', [
    'system',
    'file_download',
  ]);
  $webhook_configs = $webhooks_service
    ->loadMultipleByEvent($event);

  /** @var \Drupal\webhooks\Entity\WebhookConfig $webhook_config */
  foreach ($webhook_configs as $webhook_config) {
    $webhook = new Webhook([
      'event' => $event,
      'uri' => $serializer
        ->normalize($uri),
    ], [], $event, $webhook_config
      ->getContentType());
    $webhooks_service
      ->send($webhook_config, $webhook);
  }
}