/
githubmirror
/
symfony
Обзор
Документация
Войти
/
githubmirror
/
symfony
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
8.2
src/Symfony/Component/Notifier/Channel/DesktopChannel.php
47 строк
1 KB
Ahmed Ghanem
[Notifier] Support for desktop notifications via `jolicode/JoliNotif`
27 авг 2024, 09:48
27 авг 2024, 09:48
bcd4677
Код
Авторство
О чём код?
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Notifier\Channel; use Symfony\Component\Notifier\Message\DesktopMessage; use Symfony\Component\Notifier\Notification\DesktopNotificationInterface; use Symfony\Component\Notifier\Notification\Notification; use Symfony\Component\Notifier\Recipient\RecipientInterface; /** * @author Ahmed Ghanem <ahmedghanem7361@gmail.com> */ class DesktopChannel extends AbstractChannel { public function notify(Notification $notification, RecipientInterface $recipient, ?string $transportName = null): void { if ($notification instanceof DesktopNotificationInterface) { $message = $notification->asDesktopMessage($recipient, $transportName); } $message ??= DesktopMessage::fromNotification($notification); if (null !== $transportName) { $message->setTransport($transportName); } if (null === $this->bus) { $this->transport->send($message); } else { $this->bus->dispatch($message); } } public function supports(Notification $notification, RecipientInterface $recipient): bool { return true; } }