internal static IHeaderDictionary AddMutatorHeaders <T>(this IHeaderDictionary headers, Mutator mutator) where T : Data <T> { if (mutator.Transform.Pagination == null) { return(headers); } var count = Data <T> .Count(mutator); var pages = count < 2 ? count : (int)((count - 1) / mutator.Transform.Pagination.Size) + 1; headers.AddHeader("x-zen-pagination", new { page = mutator.Transform.Pagination.Index, size = mutator.Transform.Pagination.Size, count, pages }); headers.AddHeader("X-Total-Count", count); headers.AddHeader("X-Total-Pages", pages); return(headers); }
internal static IHeaderDictionary AddHeaders(this IHeaderDictionary headers, Dictionary <string, object> payload) { if (payload == null) { return(headers); } foreach (var(key, value) in payload) { headers.AddHeader(key, value); } return(headers); }