diff --git a/src/main/java/ru/soune/nocopy/kafka/MonitoringResultListener.java b/src/main/java/ru/soune/nocopy/kafka/MonitoringResultListener.java index a4ab460..e47b1aa 100644 --- a/src/main/java/ru/soune/nocopy/kafka/MonitoringResultListener.java +++ b/src/main/java/ru/soune/nocopy/kafka/MonitoringResultListener.java @@ -1,5 +1,7 @@ package ru.soune.nocopy.kafka; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.kafka.annotation.KafkaListener; @@ -14,8 +16,13 @@ public class MonitoringResultListener { private final ViolationService violationService; + private final ObjectMapper objectMapper; + @KafkaListener(topics = "monitoring-results", groupId = "dashboard") - public void handleCommand(YandexSearchResponse.ImageResult imageResult) { + public void handleCommand(String message) throws JsonProcessingException { + YandexSearchResponse.ImageResult imageResult = + objectMapper.readValue(message, YandexSearchResponse.ImageResult.class); + violationService.processViolation(imageResult.getUrl(), imageResult.getHost(), imageResult.getPageUrl(), imageResult.getFileId(), imageResult.getPageTitle()); }