Skip to content

Commit

Permalink
Rename MqttService into MqttPublicationService
Browse files Browse the repository at this point in the history
That way it is more intentional
  • Loading branch information
sebastienvermeille committed Feb 6, 2024
1 parent 2ffbdf9 commit 89a0ad2
Show file tree
Hide file tree
Showing 6 changed files with 31 additions and 19 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
import dev.cookiecode.rika2mqtt.rika.firenet.exception.UnableToRetrieveRikaFirenetDataException;
import dev.cookiecode.rika2mqtt.rika.firenet.model.StoveId;
import dev.cookiecode.rika2mqtt.rika.firenet.model.StoveStatus;
import dev.cookiecode.rika2mqtt.rika.mqtt.MqttService;
import dev.cookiecode.rika2mqtt.rika.mqtt.MqttPublicationService;
import dev.cookiecode.rika2mqtt.rika.mqtt.event.MqttCommandEvent;
import jakarta.annotation.PostConstruct;
import java.time.Duration;
Expand Down Expand Up @@ -73,7 +73,7 @@ public class Bridge {
WILL_NOW_RETRIEVE_STATUS_FOR_EACH_DECLARED_STOVES_AT_INTERVAL_OF_S_AND_PUBLISH_IT_BACK_TO_MQTT =
"Will now retrieve status for each declared stove(s) at interval of %s and publish it back to mqtt.";
private final RikaFirenetService rikaFirenetService;
private final MqttService mqttService;
private final MqttPublicationService mqttPublicationService;

@Value("${rika.email}")
private String rikaEmailAccount;
Expand Down Expand Up @@ -138,7 +138,7 @@ void publishToMqtt() {
try {
status = rikaFirenetService.getStatus(stoveId);
final var jsonStatus = gson.toJson(status);
mqttService.publish(jsonStatus);
mqttPublicationService.publish(jsonStatus);

applicationEventPublisher.publishEvent(
PolledStoveStatusEvent.builder()
Expand Down Expand Up @@ -177,7 +177,7 @@ private void handleStoveErrors(@NonNull StoveStatus status) {
new ErrorNotification(stoveId, enrichedStoveError.getErrorCode());

final var jsonNotification = gson.toJson(notification);
mqttService.publishNotification(jsonNotification);
mqttPublicationService.publishNotification(jsonNotification);

applicationEventPublisher.publishEvent(
StoveErrorEvent.builder().withStoveError(enrichedStoveError).build());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@
package dev.cookiecode.rika2mqtt.bridge;

import com.google.gson.Gson;
import dev.cookiecode.rika2mqtt.rika.mqtt.MqttService;
import dev.cookiecode.rika2mqtt.rika.mqtt.MqttServiceImpl;
import dev.cookiecode.rika2mqtt.rika.mqtt.MqttPublicationService;
import dev.cookiecode.rika2mqtt.rika.mqtt.MqttPublicationServiceImpl;
import dev.cookiecode.rika2mqtt.rika.mqtt.configuration.MqttConfigProperties;
import dev.cookiecode.rika2mqtt.rika.mqtt.configuration.MqttConfiguration;
import java.util.UUID;
Expand All @@ -42,11 +42,11 @@
*
* @author Sebastien Vermeille
*/
@SpringBootTest(classes = {MqttServiceImpl.class, MqttConfiguration.class, Gson.class})
@SpringBootTest(classes = {MqttPublicationServiceImpl.class, MqttConfiguration.class, Gson.class})
@ActiveProfiles("test")
class BridgeIntegrationTest extends AbstractBaseIntegrationTest {

@Autowired private MqttService mqttService;
@Autowired private MqttPublicationService mqttPublicationService;

@Autowired private MqttConfigProperties mqttConfigProperties;

Expand All @@ -64,7 +64,7 @@ void publishMqttMessageFromBridgeShouldEffectivelyPublishAMessageToMqtt() {
.assertThatMessageWasPublishedToMqttTopic(
message,
mqttConfigProperties.getTelemetryReportTopicName(),
() -> mqttService.publish(message));
() -> mqttPublicationService.publish(message));
}

@Test
Expand All @@ -78,7 +78,7 @@ void publishErrorMqttMessageFromBridgeShouldEffectivelyPublishAnErrorMessageToMq
.assertThatMessageWasPublishedToMqttTopic(
message,
mqttConfigProperties.getNotificationTopicName(),
() -> mqttService.publishNotification(message));
() -> mqttPublicationService.publishNotification(message));
}

private MqttTestClient getMqttTestClient() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
import dev.cookiecode.rika2mqtt.rika.firenet.model.StoveError;
import dev.cookiecode.rika2mqtt.rika.firenet.model.StoveId;
import dev.cookiecode.rika2mqtt.rika.firenet.model.StoveStatus;
import dev.cookiecode.rika2mqtt.rika.mqtt.MqttService;
import dev.cookiecode.rika2mqtt.rika.mqtt.MqttPublicationService;
import dev.cookiecode.rika2mqtt.rika.mqtt.event.MqttCommandEvent;
import java.time.Duration;
import java.util.HashMap;
Expand All @@ -67,7 +67,7 @@
class BridgeTest {

@Mock RikaFirenetService rikaFirenetService;
@Mock MqttService mqttService;
@Mock MqttPublicationService mqttPublicationService;
@Mock EmailObfuscator emailObfuscator;
@Mock Gson gson;
@Mock StoveStatusMapper stoveStatusMapper;
Expand Down Expand Up @@ -182,7 +182,7 @@ void publishToMqttShouldInvokeMqttServicePublishForEachStove() throws Exception
bridge.publishToMqtt();

// THEN
verify(mqttService, times(stoves.size())).publish(any());
verify(mqttPublicationService, times(stoves.size())).publish(any());
}

@Test
Expand Down Expand Up @@ -224,7 +224,7 @@ void publishToMqttShouldInvokeMqttServicePublishNotificationForEachStoveHavingAn
bridge.publishToMqtt();

// THEN
verify(mqttService, times(stoves.size())).publishNotification(any());
verify(mqttPublicationService, times(stoves.size())).publishNotification(any());
}

@Test
Expand All @@ -242,7 +242,7 @@ void publishToMqttShouldNotInvokeMqttServicePublishErrorForEachStoveHavingNoErro
bridge.publishToMqtt();

// THEN
verify(mqttService, never()).publishNotification(any());
verify(mqttPublicationService, never()).publishNotification(any());
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,23 @@
import lombok.NonNull;

/**
* Service to publish messages into MQTT broker
*
* @author Sebastien Vermeille
*/
public interface MqttService {
public interface MqttPublicationService {

/**
* Publish a standard stove status message
*
* @param message the message to publish
*/
void publish(@NonNull final String message);

/**
* Publish a notification message (other mqtt channel)
*
* @param message the message to publish
*/
void publishNotification(@NonNull final String message);
}
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
@Service
@RequiredArgsConstructor
@Flogger
public class MqttServiceImpl implements MqttService {
public class MqttPublicationServiceImpl implements MqttPublicationService {

@Qualifier("mqttConfiguration.MqttGateway")
private final MqttConfiguration.MqttGateway mqttGateway;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,11 @@
* @author Sebastien Vermeille
*/
@ExtendWith(MockitoExtension.class)
class MqttServiceImplTest {
class MqttPublicationServiceImplTest {

@Mock MqttConfiguration.MqttGateway mqttGateway;

@InjectMocks MqttServiceImpl mqttService;
@InjectMocks MqttPublicationServiceImpl mqttService;

@Test
void publishShouldForwardMessageToMqttGateway() {
Expand Down

0 comments on commit 89a0ad2

Please sign in to comment.