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 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); }
private ModelPageDetailCollectorSet[] getModelDetails(ModelPageCollectorSet modelPageSet, ModelPageModel modelPageModel) { ModelPageDetailCollectorSet modelPageDetailSet = new ModelPageDetailCollectorSet(); modelPageDetailSet.Parent = modelPageSet; modelPageDetailSet.Data = getRowModel(modelPageModel, modelPageSet); return(new[] { modelPageDetailSet }); }