private ModelPageCollectorSet[] getModelPages(ModelCollectorSet modelSet, ITitleLinkPair model) { ModelPageDocumentRequestor mpDR = new ModelPageDocumentRequestor(new WebRequestor(), $"{baseUrl}{model.Link}"); ModelPageParser mpParser = new ModelPageParser(mpDR); string[] modelPages = mpParser.Parse(); List <ModelPageCollectorSet> modelPageSets = new List <ModelPageCollectorSet>(); foreach (var modelPage in modelPages) { ModelPageCollectorSet modelPageSet = new ModelPageCollectorSet(); ModelDetailDocumentRequestor mdDR = new ModelDetailDocumentRequestor(new WebRequestor(), $"{baseUrl}{modelPage}"); ModelDetailParser mdParser = new ModelDetailParser(mdDR); ModelPageModel modelPageModel = mdParser.Parse(); modelPageSet.Data = mdDR; modelPageSet.Parent = modelSet; modelPageSet.Subsets = getModelDetails(modelPageSet, modelPageModel); modelPageSets.Add(modelPageSet); } return(modelPageSets.ToArray()); }
private ModelCollectorSet[] getModels(ProducerCollectorSet producerSet, ITitleLinkPair producer) { ModelDocumentRequestor modelDR = new ModelDocumentRequestor(new WebRequestor(), $"{baseUrl}{producer.Link}"); ModelParser modelParser = new ModelParser(modelDR); ITitleLinkPair[] models = modelParser.Parse(); List <ModelCollectorSet> modelSets = new List <ModelCollectorSet>(); foreach (var model in models) { ModelCollectorSet modelSet = new ModelCollectorSet(); modelSet.Data = model.Title; modelSet.Parent = producerSet; modelSet.Subsets = getModelPages(modelSet, model); modelSets.Add(modelSet); } return(modelSets.ToArray()); }
private RowModel getRowModel(ModelPageModel modelPageModel, ModelPageCollectorSet modelPageSet) { ModelCollectorSet modelSet = (ModelCollectorSet)modelPageSet.Parent; ProducerCollectorSet producerSet = (ProducerCollectorSet)modelSet.Parent; VehicleTypeCollectorSet vehicleType = (VehicleTypeCollectorSet)producerSet.Parent; RowModel rm = new RowModel(); rm.VehicleType = vehicleType.Data; rm.Producer = producerSet.Data; rm.Model = modelSet.Data; rm.ModelType = modelPageModel.ModelType; rm.MotorCode = modelPageModel.MotorCode; rm.kW = modelPageModel.kW; rm.PS = modelPageModel.PS; rm.Year = modelPageModel.Year; addFilters(modelPageSet, rm); return(rm); }