csharp/0ffffffffh/sozluk-cgi-revival/sozluk_backend/Core/Sys/Request/RequestObject.cs

RequestObject.cs
using sozluk_backend.Core.Sys.Logging;
using System;
using System.Collections.Generic;
using System.IO.Pipes;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace sozluk_backend.Core.Sys.Request
{
    clast RequestObject
    {
        private NamedPipeServerStream serverIoPipe;
        private Dictionary items;
        
        public RequestObject(NamedPipeServerStream nps, byte[] requestBuffer, int bufferLength)
        {
            this.serverIoPipe = nps;
            BuildRequestObjectAndQueue(requestBuffer, bufferLength);
        }

        private string NormalizeValue(string value)
        {
            
            value = value.Replace("$lt;", "").Replace("$amp;", "&").Replace("$eq;", "=")
                .Replace("$percnt;", "%");

            value = System.Web.HttpUtility.UrlDecode(value, Encoding.GetEncoding("ISO-8859-9"));
            value = System.Web.HttpUtility.HtmlDecode(value).Replace("$plus;","+");
            

            return value;
        }

        private void Parse(string data)
        {
            string key,value, tagEnd;

            int beg=-1, end=0;

            beg = data.IndexOf("", beg);

                if (end == -1)
                    break;

                beg++;

                key = data.Substring(beg, end - beg);

                tagEnd = string.Format("", key);

                beg = end + 1;

                end = data.IndexOf(tagEnd, beg);

                if (end == -1)
                    break;

                value = data.Substring(beg, end - beg);

                items.Add(key.ToLower(), NormalizeValue(value));

                beg = data.IndexOf("