示例#1
0
            public override ProcessingThreadLocalData InitializeThreadLocalState()
            {
                ProcessingThreadLocalData ret = new ProcessingThreadLocalData();

                ret.headRe          = CloneRegex(reader.fmtInfo.HeadRe, reader.IsQuickFormatDetectionMode ? ReOptions.Timeboxed : ReOptions.None);
                ret.bodyRe          = CloneRegex(reader.fmtInfo.BodyRe);
                ret.fieldsProcessor = reader.CreateNewFieldsProcessor();
                ret.callback        = reader.CreateMessageBuilderCallback();
                ret.bodyMatch       = null;
                return(ret);
            }
示例#2
0
 public SingleThreadedStrategyImpl(MessagesReader reader) : base(
         reader.LogMedia,
         reader.StreamEncoding,
         CloneRegex(reader.fmtInfo.HeadRe, reader.IsQuickFormatDetectionMode ? ReOptions.Timeboxed : ReOptions.None).Regex,
         reader.fmtInfo.HeadRe.GetHeaderReSplitterFlags(),
         reader.fmtInfo.TextStreamPositioningParams
         )
 {
     this.reader          = reader;
     this.fieldsProcessor = reader.CreateNewFieldsProcessor();
     this.callback        = reader.CreateMessageBuilderCallback();
     this.headerRegex     = headerRe;
     this.bodyRegex       = CloneRegex(reader.fmtInfo.BodyRe).Regex;
 }