public async Task WriteAsync(SocialWeather.WeatherReport weatherReport, Stream stream)
        {
            var outputStream       = new CodedOutputStream(stream, leaveOpen: true);
            var protoWeatherReport = new Protobuf.WeatherReport
            {
                Temperature = weatherReport.Temperature,
                ReportTime  = weatherReport.ReportTime,
                Weather     = (Protobuf.WeatherReport.Types.WeatherKind)(int) weatherReport.Weather,
                ZipCode     = weatherReport.ZipCode
            };

            outputStream.WriteMessage(protoWeatherReport);
            outputStream.Flush();
            await stream.FlushAsync();
        }