CityClient

City API를 호출하는 클라이언트. 공항 및 도시 정보를 조회한다.

상속

ClientSupport 상속

설정

  • endpoint: infrastructureProperties.city.internalEndpoint
  • timeout: infrastructureProperties.city.fuelTimeout

헤더

헤더
Content-Typeapplication/json
Acceptapplication/json
X-Triple-Api-Origin고정값

메서드

getAirportByIata

fun getAirportByIata(iata: String): Airport?

IATA 코드로 공항 정보를 조회한다. GET /airports/{iata}

실패 처리: 실패 시 null 반환 (예외 미발생).


getCityByIata

fun getCityByIata(iata: String): City

IATA 코드로 도시 정보를 조회한다. GET /cities/iata/{iata}

CallerCallee
CityService.getCityByIataCity API

예외 처리:

  • 공항 목록이 비어있으면 INVALID_ITINERARY 예외
  • API 실패 시 ResponseStatusException

Airport

필드설명
id내부 ID (null이면 미등록)
iataCodeIATA 공항 코드
name공항명
country국가 정보
timezone시간대

City

필드설명
iataCodeIATA 도시 코드
name도시명
airportIataCodes소속 공항 코드 목록
country국가 정보

특징

  • 공항 Optional: 미등록 공항은 null 반환
  • 도시 필수: 도시 조회 실패 시 예외 발생
  • 공항 목록 검증: 공항 없는 도시는 유효하지 않음