itk-dev / beskedfordeler-symfony
Symfony 的消息优势
1.0.1
2023-03-23 08:49 UTC
Requires
- symfony/framework-bundle: ^5.4|^6.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.14
- phpstan/phpstan: ^1.9
- squizlabs/php_codesniffer: ^3.7
README
有关消息优势的详细信息,请参阅 https://digitaliseringskataloget.dk/integration/sf1461。
安装
需要此包
composer require itk-dev/beskedfordeler-symfony
启用此包
// config/bundles.php return [ // … Itkdev\BeskedfordelerBundle\ItkdevBeskedfordelerBundle::class => ['all' => true], ];
导入路由
# config/routes/itkdev_beskedfordeler.yaml itkdev_beskedfordeler: resource: '@BeskedfordelerBundle/Resources/config/routes.php'
使 /beskedfordeler
路由公开可访问
# config/packages/security.yaml security: # … access_control: # … - { path: ^/beskedfordeler, role: PUBLIC_ACCESS } # …
路由
/beskedfordeler/PostStatusBeskedModtag
事件订阅者
必须创建一个事件订阅者,以便在从 Beskedfordeler 收到消息时执行某些有用操作
<?php // src/EventSubscriber/BeskedfordelerEventSubscriber.php namespace App\EventSubscriber; use Itkdev\BeskedfordelerBundle\Event\PostStatusBeskedModtagEvent; use Itkdev\BeskedfordelerBundle\Helper\MessageHelper; use Symfony\Component\EventDispatcher\EventSubscriberInterface; class BeskedfordelerEventSubscriber implements EventSubscriberInterface { private MessageHelper $messageHelper; public function __construct(private MessageHelper $messageHelper) { } public static function getSubscribedEvents() { return [ PostStatusBeskedModtagEvent::class => 'postStatusBeskedModtag', ]; } public function postStatusBeskedModtag(PostStatusBeskedModtagEvent $event): void { // Do something with the event. try { $data = $this->messageHelper->getBeskeddata($event->getDocument()->saveXML()); // … } catch (\Throwable $exception) { // Log the exception. } } }
开发
有关开发信息,请参阅 docs/DEVELOPMENT.md。