private void StoreResponseItem(ResponseItem item)
 {
     _processor.Items.Add(item);
 }
        private void StoreResponseItem(FetchableAttribute fetchable, string dynamicIdentifier = "")
        {
            var reader = Activator.CreateInstance(fetchable.ReaderType) as ISectionReader;
            var parser = Activator.CreateInstance(fetchable.ParserType) as ISectionParser;
            var identifier = string.IsNullOrEmpty(dynamicIdentifier) ? fetchable.Identifier : dynamicIdentifier;

            var item = new ResponseItem {Identifier = identifier, IsInline = fetchable.IsInline, SectionParser = parser, SectionReader = reader};

            StoreResponseItem(item);
        }
        private static ResponseItem CreateResponseItemFromFetchToken(string token)
        {
            token = token.ToUpper();
            var command = FormatBodyResponseIdentifier(token);
            var item = new ResponseItem {Identifier = command};

            if (token.EndsWith("HEADER") || token.EndsWith("MIME")) {
                item.SectionParser = new HeaderCollectionParser();
            } else {
                item.SectionParser = new TextParser();
            }
            item.SectionReader = new DynamicSectionReader(command);

            return item;
        }