public static FileChunk GetMetaData(this HttpContentHeaders headers) { return(new FileChunk() { ChunkId = Convert.ToBase64String(Encoding.UTF8.GetBytes(headers.Where(p => p.Key == "ChunkId").First().Value.First())), FileId = headers.Where(p => p.Key == "FileId").First().Value.First(), IsCompleted = Boolean.Parse(headers.Where(p => p.Key == "IsCompleted").First().Value.First()), OriginalChunkId = headers.Where(p => p.Key == "ChunkId").First().Value.First() }); }
/// <inheritdoc /> public IEnumerable <string> this[string name] { get { var result = _contentHeaders.Where(_ => _.Key == name).Select(_ => _.Value); if (!result.Any()) { result = _headers.Where(_ => _.Key == name).Select(_ => _.Value); } return(result.FirstOrDefault() ?? Array.Empty <string>()); } }
private IEnumerable <string> ValidateHeaders(IDictionary <string, string> expected, HttpContentHeaders actual) { foreach (var expectedHeader in expected) { var actualHeader = actual .Where(a => a.Key.Equals(expectedHeader.Key, StringComparison.OrdinalIgnoreCase)); if (!actualHeader.Any()) { yield return($"Header {expectedHeader.Key} is missing"); } else { var value = string.Join(",", actualHeader.SelectMany(h => h.Value)); if (!expectedHeader.Value.Equals(value)) { yield return($"Header {expectedHeader.Key} had value {value}. Expected {expectedHeader.Value}."); } } } }