コード例 #1
0
 public void OnStartLine(Http.Method method, Http.Version version, ReadOnlySpan <byte> target, ReadOnlySpan <byte> path, ReadOnlySpan <byte> query, ReadOnlySpan <byte> customMethod, bool pathEncoded)
 {
     //Method = method;
     //Version = version;
     //Path = PrimitiveEncoder.DecodeAscii(path);
     //Query = PrimitiveEncoder.DecodeAscii(query);
     //Target = PrimitiveEncoder.DecodeAscii(target);
 }
コード例 #2
0
 public void OnStartLine(Http.Method method, Http.Version version, ReadOnlySpan <byte> target, ReadOnlySpan <byte> path, ReadOnlySpan <byte> query, ReadOnlySpan <byte> customMethod, bool pathEncoded)
 {
     Method  = method;
     Version = version;
     Path    = Encodings.Ascii.ToUtf16String(path);
     Query   = Encodings.Ascii.ToUtf16String(query);
     Target  = Encodings.Ascii.ToUtf16String(target);
 }
コード例 #3
0
ファイル: HttpParserTests.cs プロジェクト: al6uiz/corefxlab
 public void OnStartLine(Http.Method method, Http.Version version, ReadOnlySpan <byte> target, ReadOnlySpan <byte> path, ReadOnlySpan <byte> query, ReadOnlySpan <byte> customMethod, bool pathEncoded)
 {
     Method      = method != Http.Method.Custom ? method.ToString().ToUpper() : Encodings.Ascii.ToUtf16String(customMethod);
     Version     = ToString(version);
     RawTarget   = Encodings.Ascii.ToUtf16String(target);
     RawPath     = Encodings.Ascii.ToUtf16String(path);
     Query       = Encodings.Ascii.ToUtf16String(query);
     PathEncoded = pathEncoded;
 }
コード例 #4
0
ファイル: HttpRequest.cs プロジェクト: zerodev1200/corefxlab
 public void OnStartLine(Http.Method method, Http.Version version, ReadOnlySpan <byte> target, ReadOnlySpan <byte> path, ReadOnlySpan <byte> query, ReadOnlySpan <byte> customMethod, bool pathEncoded)
 {
     _method       = method;
     _version      = version;
     _target       = target.ToArray();
     _path         = path.ToArray();
     _query        = query.ToArray();
     _customMethod = customMethod.ToArray();
 }
コード例 #5
0
ファイル: HttpParserTests.cs プロジェクト: llenroc/corefxlab
 public void OnStartLine(Http.Method method, Http.Version version, ReadOnlySpan <byte> target, ReadOnlySpan <byte> path, ReadOnlySpan <byte> query, ReadOnlySpan <byte> customMethod, bool pathEncoded)
 {
     Method      = method != Http.Method.Custom ? method.ToString().ToUpper() : PrimitiveEncoder.DecodeAscii(customMethod);
     Version     = ToString(version);
     RawTarget   = PrimitiveEncoder.DecodeAscii(target);
     RawPath     = PrimitiveEncoder.DecodeAscii(path);
     Query       = PrimitiveEncoder.DecodeAscii(query);
     PathEncoded = pathEncoded;
 }
コード例 #6
0
ファイル: HttpParserTests.cs プロジェクト: al6uiz/corefxlab
            private string ToString(Http.Version version)
            {
                switch (version)
                {
                case Http.Version.Http10: return("HTTP/1.0");

                case Http.Version.Http11: return("HTTP/1.1");

                case Http.Version.Unknown: return("Unknown");

                default: throw new NotImplementedException();
                }
            }
コード例 #7
0
        protected static void WriteCommonHeaders <TFormatter>(
            ref TFormatter formatter,
            Http.Version version,
            int statuCode,
            string reasonCode)
            where TFormatter : ITextOutput
        {
            var currentTime = DateTime.UtcNow;

            formatter.AppendHttpStatusLine(version, statuCode, new Utf8Span(reasonCode));
            formatter.Append("Transfer-Encoding : chunked\r\n");
            formatter.Append("Server : .NET Core Sample Server\r\n");
            formatter.Format("Date : {0:R}\r\n", DateTime.UtcNow);
        }
コード例 #8
0
ファイル: HttpUtilities.cs プロジェクト: scslmd/corefxlab
        public static string VersionToString(Http.Version httpVersion)
        {
            switch (httpVersion)
            {
            case Http.Version.Http10:
                return(Http10Version);

            case Http.Version.Http11:
                return(Http11Version);

            default:
                return(null);
            }
        }
コード例 #9
0
ファイル: HttpUtilities.cs プロジェクト: scslmd/corefxlab
        public static unsafe bool GetKnownVersion(this Span <byte> span, out Http.Version knownVersion, out byte length)
        {
            fixed(byte *data = &MemoryMarshal.GetReference(span))
            {
                knownVersion = GetKnownVersion(data, span.Length);
                if (knownVersion != Http.Version.Unknown)
                {
                    length = sizeof(ulong);
                    return(true);
                }

                length = 0;
                return(false);
            }
        }
コード例 #10
0
        public static unsafe bool GetKnownVersion(this Span <byte> span, out Http.Version knownVersion, out byte length)
        {
            fixed(byte *data = &span.DangerousGetPinnableReference())
            {
                knownVersion = GetKnownVersion(data, span.Length);
                if (knownVersion != Http.Version.Unknown)
                {
                    length = sizeof(ulong);
                    return(true);
                }

                length = 0;
                return(false);
            }
        }
コード例 #11
0
ファイル: StorageClient.cs プロジェクト: safern/corefxlab
 public void OnStatusLine(Http.Version version, ushort statusCode, ReadOnlySpan <byte> status)
 {
     StatusCode = statusCode;
 }