headless_cms-1.0.3/modules/headless_cms_notify/tests/modules/headless_cms_notify_test/src/Plugin/HeadlessNotifyTransport/MemoryTransport.php
modules/headless_cms_notify/tests/modules/headless_cms_notify_test/src/Plugin/HeadlessNotifyTransport/MemoryTransport.php
<?php
declare(strict_types=1);
namespace Drupal\headless_cms_notify_test\Plugin\HeadlessNotifyTransport;
use Drupal\Core\StringTranslation\TranslatableMarkup;
use Drupal\headless_cms_notify\Attribute\HeadlessNotifyTransport;
use Drupal\headless_cms_notify\NotifyMessage\HeadlessNotifyMessageInterface;
use Drupal\headless_cms_notify\Plugin\HeadlessNotifyTransport\HeadlessNotifyTransportBase;
/**
* Memory transport for testing.
*/
#[HeadlessNotifyTransport(
id: 'memory',
label: new TranslatableMarkup('Memory Transport'),
)]
class MemoryTransport extends HeadlessNotifyTransportBase {
/**
* The sent messages.
*
* @var array<\Drupal\headless_cms_notify\NotifyMessage\HeadlessNotifyMessageInterface>
*/
protected static array $messages = [];
/**
* {@inheritdoc}
*/
public function send(HeadlessNotifyMessageInterface $message): void {
static::$messages[] = $message;
}
/**
* Gets all sent messages.
*
* @return array<\Drupal\headless_cms_notify\NotifyMessage\HeadlessNotifyMessageInterface>
* The sent messages.
*/
public static function getMessages(): array {
return static::$messages;
}
/**
* Resets the sent messages.
*/
public static function reset(): void {
static::$messages = [];
}
}
