Lines 0.00% 0 / 6
Functions and Methods 0.00% 0 / 6
Classes and Traits 0.00% 0 / 1
Name Lines Functions and Methods CRAP Classes and Traits
DisabledMqttLink 0.00% 0 / 6 0.00% 0 / 6 42 0.00% 0 / 1
 __construct 0.00% 0 / 1 0.00% 0 / 1 2
 startInBackground 0.00% 0 / 1 0.00% 0 / 1 2
 publishMessage 0.00% 0 / 1 0.00% 0 / 1 2
 subscribeFilter 0.00% 0 / 1 0.00% 0 / 1 2
 unsubscribeFilter 0.00% 0 / 1 0.00% 0 / 1 2
 close 0.00% 0 / 1 0.00% 0 / 1 2
1<?php
2
3declare(strict_types=1);
4
5namespace Stewart\Runtime\Broker\Mqtt;
6
7use Psr\Log\LoggerInterface;
8use Stewart\Contracts\Mqtt\MqttMessage;
9
10final readonly class DisabledMqttLink implements MqttLink
11{
12    public function __construct(private LoggerInterface $logger) {}
13
14    public function startInBackground(MqttMessageRouter $router): void {}
15
16    public function publishMessage(MqttMessage $message): void
17    {
18        $this->logger->warning('MQTT message dropped; mqtt.url is not set', ['topic' => $message->topic]);
19    }
20
21    public function subscribeFilter(string $topicFilter): void {}
22
23    public function unsubscribeFilter(string $topicFilter): void {}
24
25    public function close(): void {}
26}