< Summary

Information
Class: System.Net.Http.Headers.QPackStaticTable
Assembly: System.Net.Http
File(s): D:\runner\runtime\src\libraries\System.Net.Http\src\System\Net\Http\Headers\QPackStaticTable.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 102
Coverable lines: 102
Total lines: 113
Line coverage: 0%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Cyclomatic complexity NPath complexity Sequence coverage
.cctor()100%110%

File(s)

D:\runner\runtime\src\libraries\System.Net.Http\src\System\Net\Http\Headers\QPackStaticTable.cs

#LineLine coverage
 1// Licensed to the .NET Foundation under one or more agreements.
 2// The .NET Foundation licenses this file to you under the MIT license.
 3
 4namespace System.Net.Http.Headers
 5{
 6    internal static class QPackStaticTable
 7    {
 8        // https://tools.ietf.org/html/draft-ietf-quic-qpack-11#appendix-A
 9        // TODO: can we put some of this logic into H3StaticTable and/or generate it using data that is already there?
 010        internal static (HeaderDescriptor descriptor, string value)[] HeaderLookup { get; } = new (HeaderDescriptor desc
 011        {
 012            (new HeaderDescriptor(":authority"), ""), // 0
 013            (new HeaderDescriptor(":path"), "/"), // 1
 014            (new HeaderDescriptor(KnownHeaders.Age), "0"), // 2
 015            (new HeaderDescriptor(KnownHeaders.ContentDisposition), ""), // 3
 016            (new HeaderDescriptor(KnownHeaders.ContentLength), "0"), // 4
 017            (new HeaderDescriptor(KnownHeaders.Cookie), ""), // 5
 018            (new HeaderDescriptor(KnownHeaders.Date), ""), // 6
 019            (new HeaderDescriptor(KnownHeaders.ETag), ""), // 7
 020            (new HeaderDescriptor(KnownHeaders.IfModifiedSince), ""), // 8
 021            (new HeaderDescriptor(KnownHeaders.IfNoneMatch), ""), // 9
 022            (new HeaderDescriptor(KnownHeaders.LastModified), ""), // 10
 023            (new HeaderDescriptor(KnownHeaders.Link), ""), // 11
 024            (new HeaderDescriptor(KnownHeaders.Location), ""), // 12
 025            (new HeaderDescriptor(KnownHeaders.Referer), ""), // 13
 026            (new HeaderDescriptor(KnownHeaders.SetCookie), ""), // 14
 027            (new HeaderDescriptor(":method"), "CONNECT"), // 15
 028            (new HeaderDescriptor(":method"), "DELETE"), // 16
 029            (new HeaderDescriptor(":method"), "GET"), // 17
 030            (new HeaderDescriptor(":method"), "HEAD"), // 18
 031            (new HeaderDescriptor(":method"), "OPTIONS"), // 19
 032            (new HeaderDescriptor(":method"), "POST"), // 20
 033            (new HeaderDescriptor(":method"), "PUT"), // 21
 034            (new HeaderDescriptor(":scheme"), "http"), // 22
 035            (new HeaderDescriptor(":scheme"), "https"), // 23
 036            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "103"), // 24
 037            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "200"), // 25
 038            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "304"), // 26
 039            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "404"), // 27
 040            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "503"), // 28
 041            (new HeaderDescriptor(KnownHeaders.Accept), "*/*"), // 29
 042            (new HeaderDescriptor(KnownHeaders.Accept), "application/dns-message"), // 30
 043            (new HeaderDescriptor(KnownHeaders.AcceptEncoding), "gzip, deflate, br"), // 31
 044            (new HeaderDescriptor(KnownHeaders.AcceptRanges), "bytes"), // 32
 045            (new HeaderDescriptor(KnownHeaders.AccessControlAllowHeaders), "cache-control"), // 33
 046            (new HeaderDescriptor(KnownHeaders.AccessControlAllowHeaders), "content-type"), // 34
 047            (new HeaderDescriptor(KnownHeaders.AccessControlAllowOrigin), "*"), // 35
 048            (new HeaderDescriptor(KnownHeaders.CacheControl), "max-age=0"), // 36
 049            (new HeaderDescriptor(KnownHeaders.CacheControl), "max-age=2592000"), // 37
 050            (new HeaderDescriptor(KnownHeaders.CacheControl), "max-age=604800"), // 38
 051            (new HeaderDescriptor(KnownHeaders.CacheControl), "no-cache"), // 39
 052            (new HeaderDescriptor(KnownHeaders.CacheControl), "no-store"), // 40
 053            (new HeaderDescriptor(KnownHeaders.CacheControl), "public, max-age=31536000"), // 41
 054            (new HeaderDescriptor(KnownHeaders.ContentEncoding), "br"), // 42
 055            (new HeaderDescriptor(KnownHeaders.ContentEncoding), "gzip"), // 43
 056            (new HeaderDescriptor(KnownHeaders.ContentType), "application/dns-message"), // 44
 057            (new HeaderDescriptor(KnownHeaders.ContentType), "application/javascript"), // 45
 058            (new HeaderDescriptor(KnownHeaders.ContentType), "application/json"), // 46
 059            (new HeaderDescriptor(KnownHeaders.ContentType), "application/x-www-form-urlencoded"), // 47
 060            (new HeaderDescriptor(KnownHeaders.ContentType), "image/gif"), // 48
 061            (new HeaderDescriptor(KnownHeaders.ContentType), "image/jpeg"), // 49
 062            (new HeaderDescriptor(KnownHeaders.ContentType), "image/png"), // 50
 063            (new HeaderDescriptor(KnownHeaders.ContentType), "text/css"), // 51
 064            (new HeaderDescriptor(KnownHeaders.ContentType), "text/html; charset=utf-8"), // 52; Whitespace is correct, 
 065            (new HeaderDescriptor(KnownHeaders.ContentType), "text/plain"), // 53
 066            (new HeaderDescriptor(KnownHeaders.ContentType), "text/plain;charset=utf-8"), // 54; Whitespace is correct, 
 067            (new HeaderDescriptor(KnownHeaders.Range), "bytes=0-"), // 55
 068            (new HeaderDescriptor(KnownHeaders.StrictTransportSecurity), "max-age=31536000"), // 56
 069            (new HeaderDescriptor(KnownHeaders.StrictTransportSecurity), "max-age=31536000; includesubdomains"), // 57
 070            (new HeaderDescriptor(KnownHeaders.StrictTransportSecurity), "max-age=31536000; includesubdomains; preload")
 071            (new HeaderDescriptor(KnownHeaders.Vary), "accept-encoding"), // 59
 072            (new HeaderDescriptor(KnownHeaders.Vary), "origin"), // 60
 073            (new HeaderDescriptor(KnownHeaders.XContentTypeOptions), "nosniff"), // 61
 074            (new HeaderDescriptor(KnownHeaders.XXssProtection), "1; mode=block"), // 62
 075            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "100"), // 63
 076            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "204"), // 64
 077            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "206"), // 65
 078            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "302"), // 66
 079            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "400"), // 67
 080            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "403"), // 68
 081            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "421"), // 69
 082            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "425"), // 70
 083            (new HeaderDescriptor(KnownHeaders.PseudoStatus), "500"), // 71
 084            (new HeaderDescriptor(KnownHeaders.AcceptLanguage), ""), // 72
 085            (new HeaderDescriptor(KnownHeaders.AccessControlAllowCredentials), "FALSE"), // 73
 086            (new HeaderDescriptor(KnownHeaders.AccessControlAllowCredentials), "TRUE"), // 74
 087            (new HeaderDescriptor(KnownHeaders.AccessControlAllowHeaders), "*"), // 75
 088            (new HeaderDescriptor(KnownHeaders.AccessControlAllowMethods), "get"), // 76
 089            (new HeaderDescriptor(KnownHeaders.AccessControlAllowMethods), "get, post, options"), // 77
 090            (new HeaderDescriptor(KnownHeaders.AccessControlAllowMethods), "options"), // 78
 091            (new HeaderDescriptor(KnownHeaders.AccessControlExposeHeaders), "content-length"), // 79
 092            (new HeaderDescriptor("access-control-request-headers"), "content-type"), // 80
 093            (new HeaderDescriptor("access-control-request-method"), "get"), // 81
 094            (new HeaderDescriptor("access-control-request-method"), "post"), // 82
 095            (new HeaderDescriptor(KnownHeaders.AltSvc), "clear"), // 83
 096            (new HeaderDescriptor(KnownHeaders.Authorization), ""), // 84
 097            (new HeaderDescriptor(KnownHeaders.ContentSecurityPolicy), "script-src 'none'; object-src 'none'; base-uri '
 098            (new HeaderDescriptor("early-data"), "1"), // 86
 099            (new HeaderDescriptor(KnownHeaders.ExpectCT), ""), // 87
 0100            (new HeaderDescriptor("forwarded"), ""), // 88
 0101            (new HeaderDescriptor(KnownHeaders.IfRange), ""), // 89
 0102            (new HeaderDescriptor(KnownHeaders.Origin), ""), // 90
 0103            (new HeaderDescriptor("purpose"), "prefetch"), // 91
 0104            (new HeaderDescriptor(KnownHeaders.Server), ""), // 92
 0105            (new HeaderDescriptor(KnownHeaders.TimingAllowOrigin), "*"), // 93
 0106            (new HeaderDescriptor(KnownHeaders.UpgradeInsecureRequests), "1"), // 94
 0107            (new HeaderDescriptor(KnownHeaders.UserAgent), ""), // 95
 0108            (new HeaderDescriptor("x-forwarded-for"), ""), // 96
 0109            (new HeaderDescriptor(KnownHeaders.XFrameOptions), "deny"), // 97
 0110            (new HeaderDescriptor(KnownHeaders.XFrameOptions), "sameorigin") // 98
 0111        };
 112    }
 113}

Methods/Properties

HeaderLookup()
.cctor()