# route-passport-kafka-consumer Минимальный сервис на Kotlin + Spring Boot, который: - слушает Kafka topic; - получает в сообщении JSON паспорта маршрута; - парсит JSON в DTO; - больше ничего не делает. ## Что внутри - `RoutePassportConsumerApplication` — точка входа Spring Boot. - `RoutePassportMessageListener` — Kafka listener. - `RoutePassportJsonParserService` — сервис парсинга входного JSON в DTO. - `RoutePassportDto` — итоговый DTO из `pcp-types-lib`. - `RawPassportEnvelopeDto` и связанные `Raw*` DTO — модель входного JSON из `pcp-types-lib`. ## Как запустить 1. Поднять Kafka. 2. Указать адрес брокера в `application.yml` или через переменную окружения `KAFKA_BOOTSTRAP_SERVERS`. 3. При необходимости указать topic через `APP_KAFKA_TOPIC`. 4. Запустить приложение: ```bash ./gradlew bootRun ``` ## Сообщение, которое ожидает сервис Сервис ожидает, что value Kafka-сообщения — это JSON того же формата, что и `src/test/resources/passport_example.json`. Поле `geometry` должно приходить строкой в формате WKT. ## Примечание Поскольку в запросе был указан просто «слушает очередь», реализация сделана через Kafka topic как наиболее типичный вариант для стека Kotlin + Spring и Kafka-ориентированного сервиса.