public void OnBody(IHttpCombinedParser parser, ArraySegment <byte> data)
 {
     if (data.Array != null)
     {
         RequestResponse.Body.Write(data.Array, 0, data.Array.Length);
     }
 }
Beispiel #2
0
 public void OnHeaderName(IHttpCombinedParser combinedParser, string name)
 {
     // Header Field Names are case-insensitive http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2
     if (HttpRequestReponse.Headers.ContainsKey(name.ToUpper()))
     {
         _headerAlreadyExist = true;
     }
     _headerName = name.ToUpper();
 }
Beispiel #3
0
 public void OnHeaderValue(IHttpCombinedParser combinedParser, string value)
 {
     if (_headerAlreadyExist)
     {
         // Join multiple message-header fields into one comma seperated list http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2
         HttpRequestReponse.Headers[_headerName] = $"{HttpRequestReponse.Headers[_headerName]}, {value}";
         _headerAlreadyExist = false;
     }
     else
     {
         HttpRequestReponse.Headers[_headerName] = value;
     }
 }
        public void OnMessageEnd(IHttpCombinedParser combinedParser)
        {
            HttpRequestResponse.IsEndOfMessage = true;

            if (!HttpRequestResponse.IsRequestTimedOut && !HttpRequestResponse.IsUnableToParseHttp)
            {
                _observerHandshakeParserState.OnNext(ParserState.HandshakeCompletedSuccessfully);
            }
            else
            {
                _observerHandshakeParserState.OnNext(ParserState.HandshakeFailed);
                _observerHandshakeParserState.OnError(new Exception("Unable to complete handshake"));
                return;
            }

            _observerHandshakeParserState.OnCompleted();
        }
Beispiel #5
0
 public void OnResponseType(IHttpCombinedParser combinedParser)
 {
     MessageType = MessageType.Response;
 }
Beispiel #6
0
 public void OnResponseType(IHttpCombinedParser combinedParser)
 {
     HttpRequestReponse.MessageType = MessageType.Response;
     MessageType = MessageType.Response;
 }
Beispiel #7
0
 public void OnFragment(IHttpCombinedParser combinedParser, string fragment)
 {
     //throw new NotImplementedException();
 }
Beispiel #8
0
 public void OnRequestUri(IHttpCombinedParser combinedParser, string requestUri)
 {
     //throw new NotImplementedException();
 }
Beispiel #9
0
 public void OnBody(IHttpCombinedParser combinedParser, ArraySegment <byte> data)
 {
     //throw new NotImplementedException();
 }
Beispiel #10
0
 public void OnMessageBegin(IHttpCombinedParser combinedParser)
 {
     //throw new NotImplementedException();
 }
 public void OnMethod(IHttpCombinedParser parser, string method)
 {
     HttpRequestReponse.Method = method;
 }
 public void OnMessageBegin(IHttpCombinedParser parser)
 {
 }
 public void OnMessageBegin(IHttpCombinedParser parser)
 {
     _observerParserState.OnNext(ParserState.Parsing);
 }
 public void OnMessageEnd(IHttpCombinedParser parser)
 {
     RequestResponse.IsEndOfRequest = true;
     _observerParserState.OnCompleted();
 }
 public void OnHeadersEnd(IHttpCombinedParser parser)
 {
     IsHeaderDone = true;
 }
Beispiel #16
0
 public void OnChunkReceived(IHttpCombinedParser combinedParser)
 {
 }
Beispiel #17
0
 public void OnMessageEnd(IHttpCombinedParser combinedParser)
 {
     HttpRequestReponse.IsEndOfMessage = true;
 }
 public void OnRequestUri(IHttpCombinedParser parser, string requestUri)
 {
     HttpRequestReponse.RequestUri = requestUri;
 }
 public void OnPath(IHttpCombinedParser parser, string path)
 {
     HttpRequestReponse.Path = path;
 }
 public void OnFragment(IHttpCombinedParser parser, string fragment)
 {
     HttpRequestReponse.Fragment = fragment;
 }
Beispiel #21
0
 public void OnHeadersEnd(IHttpCombinedParser combinedParser)
 {
     //throw new NotImplementedException();
 }
 public void OnQueryString(IHttpCombinedParser parser, string queryString)
 {
     HttpRequestReponse.QueryString = queryString;
 }
Beispiel #23
0
 public void OnMethod(IHttpCombinedParser combinedParser, string method)
 {
     //throw new NotImplementedException();
 }
 public void OnTransferEncodingChunked(IHttpCombinedParser combinedParser, bool isChunked)
 {
     HttpRequestReponse.IsChunked = isChunked;
 }
Beispiel #25
0
 public void OnPath(IHttpCombinedParser combinedParser, string path)
 {
     //throw new NotImplementedException();
 }
Beispiel #26
0
 public void OnTransferEncodingChunked(IHttpCombinedParser combinedParser, bool isChunked)
 {
 }
Beispiel #27
0
 public void OnQueryString(IHttpCombinedParser combinedParser, string queryString)
 {
     //throw new NotImplementedException();
 }
Beispiel #28
0
 public void OnChunkedLength(IHttpCombinedParser combinedParser, int length)
 {
 }
Beispiel #29
0
 public void OnResponseCode(IHttpCombinedParser combinedParser, int statusCode, string statusReason)
 {
     HttpRequestReponse.StatusCode     = statusCode;
     HttpRequestReponse.ResponseReason = statusReason;
 }
Beispiel #30
0
 public void OnRequestType(IHttpCombinedParser combinedParser)
 {
     MessageType = MessageType.Request;
 }