Esempio n. 1
0
 private void radioMS_CheckedChanged(object sender, EventArgs e)
 {
     if (radioMagenta.Checked)
     {
         aParser = new MagentaParser <SiteLink>(); nameSiteForParse = "https://magentashop.ru/"; txtOut.Text = nameSiteForParse;
     }
 }
Esempio n. 2
0
        public void TestParserGenJavaScript()
        {
            IParserGen parserGen = new CocoParserGen();
            AParser    parser    = parserGen.CreateParser("JavaScript.ATG");

            Assert.IsNotNull(parser);
        }
Esempio n. 3
0
 private void radioUnit_CheckedChanged(object sender, EventArgs e)
 {
     if (radioUnit.Checked)
     {
         aParser = new Unitparser <SiteLink>(); nameSiteForParse = "https://www.unitrm.ru/"; txtOut.Text = nameSiteForParse;
     }
 }
Esempio n. 4
0
 private void radioMnogo_CheckedChanged(object sender, EventArgs e)
 {
     if (radioMnogo.Checked)
     {
         aParser = new MnogoParser <SiteLink>(); nameSiteForParse = "https://mnogochernil.ru/"; txtOut.Text = nameSiteForParse;
     }
 }
Esempio n. 5
0
        public BindingLanguage()
        {
            var p = new Parser();

            p.InitParser(new Scanner());
            Parser = p;
        }
Esempio n. 6
0
 private void radioRN_CheckedChanged(object sender, EventArgs e)
 {
     if (radioRN.Checked)
     {
         aParser          = new RMParser <SiteLink>();
         nameSiteForParse = "http://rashodnika.net/";
         txtOut.Text      = nameSiteForParse;
     }
 }
 public ParserFactory(
     AParser aParser, 
     AaaaParser aaaaParser, 
     MxParser mxParser, 
     RpParser rpParser,
     MrParser mrParser, 
     MbParser mbParser, 
     MgParser mgParser, 
     NsParser nsParser, 
     CNameParser cNameParser, 
     PtrParser ptrParser, 
     HInfoParser hInfoParser, 
     MInfoParser mInfoParser, 
     X25Parser x25Parser, 
     TxtParser txtParser, 
     LocParser locParser, 
     SoaParser soaParser, 
     SrvParser srvParser, 
     AfsdbParser afsdbParser, 
     AtmaParser atmParser, 
     IsdnParser isdnParser, 
     RtParser rtParser, 
     UnknownParser unkowParser, 
     WksParser wksParser)
 {
     _aParser = aParser;
     _aaaaParser = aaaaParser;
     _mxParser = mxParser;
     _rpParser = rpParser;
     _mrParser = mrParser;
     _mbParser = mbParser;
     _mgParser = mgParser;
     _nsParser = nsParser;
     _cNameParser = cNameParser;
     _ptrParser = ptrParser;
     _hInfoParser = hInfoParser;
     _mInfoParser = mInfoParser;
     _x25Parser = x25Parser;
     _txtParser = txtParser;
     _locParser = locParser;
     _soaParser = soaParser;
     _srvParser = srvParser;
     _afsdbParser = afsdbParser;
     _atmParser = atmParser;
     _isdnParser = isdnParser;
     _rtParser = rtParser;
     _unkowParser = unkowParser;
     _wksParser = wksParser;
 }
Esempio n. 8
0
 private async Task <StructDoc> Pars(string str, AParser aParser)
 {
     return(await aParser.GetSDoc(str));
 }
Esempio n. 9
0
        public async Task <IActionResult> Post()
        {
            var messages = new LinkedList <string>();

            if (!MultipartRequestHelper.IsMultipartContentType(Request.ContentType))
            {
                return(BadRequest($"Expected a multipart request, but got {Request.ContentType}"));
            }

            var boundary = MultipartRequestHelper.GetBoundary(
                MediaTypeHeaderValue.Parse(Request.ContentType),
                DefaultFormOptions.MultipartBoundaryLengthLimit);
            var reader = new MultipartReader(boundary, HttpContext.Request.Body);

            var parser = new AParser(_aContext, _fileStore, _logger, messages);
            MultipartSection section;

            while ((section = await reader.ReadNextSectionAsync()) != null)
            {
                ContentDispositionHeaderValue contentDisposition = null;
                if (!ContentDispositionHeaderValue.TryParse(section.ContentDisposition, out contentDisposition))
                {
                    continue;
                }

                var match = ParamParser.Match(HeaderUtilities.RemoveQuotes(contentDisposition.Name));
                if (!match.Success)
                {
                    messages.AddLast($"Unexpected parameter {contentDisposition.Name}. Expected guid[index], file1[index], file2[index], file3[index].");
                    continue;
                }

                var field = match.Groups["field"].Value;
                var index = int.Parse(match.Groups["index"].Value);

                if (string.Equals(field, "guid", StringComparison.OrdinalIgnoreCase))
                {
                    if (!MultipartRequestHelper.HasFormDataContentDisposition(contentDisposition))
                    {
                        messages.AddLast($"A form data content disposition is expected but was not provided for guid[{index}].");
                        continue;
                    }

                    var encoding = GetEncoding(section);
                    using (var streamReader = new StreamReader(
                               section.Body,
                               encoding,
                               detectEncodingFromByteOrderMarks: true,
                               bufferSize: _bufferSize,
                               leaveOpen: true))
                    {
                        // The value length limit is enforced by MultipartBodyLengthLimit
                        var value = await streamReader.ReadToEndAsync();

                        Guid id;
                        if (!Guid.TryParse(value, out id))
                        {
                            messages.AddLast($"Unable to parse guid[{index}].");
                            continue;
                        }
                        await parser.NextId(index, id);
                    }
                }
                else // file1, file2 or file3
                {
                    if (!MultipartRequestHelper.HasFileContentDisposition(contentDisposition))
                    {
                        messages.AddLast($"A file content disposition is expected but was not provided for {field}[{index}].");
                        continue;
                    }

                    var fileNo = field[4] - '0';
                    await parser.NextFile(index, fileNo, section.Body);
                }
            }
            await parser.Finish();

            return(Json(messages));
        }