public async Task <WeatherForecastDto> Handle(GetByCityIdQuery request, CancellationToken cancellationToken) { var forecast = await _weatherClient.GetCurrentWeatherByCityIdAsync(request.CityId); if (forecast == null) { //TODO: logging return(new()); } var weatherForecastDto = _mapper.Map <WeatherForecastDto>(forecast); var gotWeatherForecast = _mapper.Map <IGotWeatherForecast>(weatherForecastDto); await _publishEndpoint.Publish(gotWeatherForecast); return(weatherForecastDto); }