public virtual IList<Tour> Create(IPttRequest request, IOperator op, out TourFactoryStatus status) { if (op.ExtensiveLoggingNeeded) { Logger.LogProcess("TourFactory.Create trying to get html for " + request.Url + " with postdata:"+request.PostValue); } var htmlSource = op.RequestResponseBehavior.GetHtmlMaster(request, false, op.ExtensiveLoggingNeeded, op.Name); if(op.ExtensiveLoggingNeeded) { Logger.LogProcess("TourFactory.Create Html coming from htmlmaster"); Logger.LogProcess(htmlSource ?? ""); } if (string.IsNullOrEmpty(htmlSource)) { status = new TourFactoryStatus { Success = false }; return null; } var htmlSourceRefined = op.Refine(request, htmlSource); if (op.ExtensiveLoggingNeeded) { Logger.LogProcess("TourFactory.Create Html refined"); Logger.LogProcess(htmlSourceRefined ?? ""); } var html = new HtmlDocument(); html.LoadHtml(htmlSourceRefined); var list = GetToursFromHtml(request, op, html, out status); return list; }