SearchScheduleEvent

검색 스케줄 이벤트. 검색 완료 시 발행되어 Kinesis 스트림으로 전송.

구현

data class SearchScheduleEvent(
    override val flightItems: List<FlightItemEvent>,
    override val searchInfo: SearchInfoEvent,
) : AirScheduleEvent

필드

필드타입설명
flightItemsList<FlightItemEvent>항공편 목록
searchInfoSearchInfoEvent검색 정보

인터페이스

AirScheduleEvent 구현

이벤트 플로우

FlightSearchService
    │
    ├─► ApplicationEventPublisher.publishEvent(SearchScheduleEvent)
    │
    └──► KinesisEventListener.produceAirSchedule()
             │
             └──► AirScheduleProducer.produce()
                      │
                      └──► Kinesis Stream (airSchedule-out-0)

사용처

사용 위치용도
FlightSearchService검색 완료 시 이벤트 발행
KinesisEventListener이벤트 수신 후 Kinesis 전송

특징

  • Spring ApplicationEvent: ApplicationEventPublisher로 발행
  • 비동기 처리: KinesisEventListener에서 CoroutineScope로 비동기 처리
  • AirScheduleEvent 구현: 공통 인터페이스 구현