/// <summary> /// Trys to parse an htmlpage /// </summary> private void UseParser(Object para) { DateTime startTime = DateTime.Now; //if its a link request if (para is LinkClass) { if (requestParserLink((LinkClass)para) == false) { return; } } //if its a search request else if (para is object[]) { object[] searchparams = (object[])para; if (requestParserSearch((string)searchparams[0], (SearchType)searchparams[1]) == false) { return; } } //if its a server request else if (para == null) { if (requestParserServer() == false) { return; } } //start parsing html content RequestActionEventArgs ex = null; ; if (_completedHtml != null) { try { parser = new ParserMain(); parser.Status += new EventHandler(parser_Status); ex = new RequestActionEventArgs(false, parser.GetPageList(_completedHtml), parser.GetPageType()); } catch (Exception exc) { OnRequestAction(new MyErrorEventArgs(exc.Message)); return; } } else { ex = new RequestActionEventArgs(false); return; } //get passed time TimeSpan span = DateTime.Now - startTime; OnRequestAction(ex); OnRequestAction(new RequestActionEventArgs("Loaded in " + span.TotalSeconds + " Sec")); }
private void UseApiServer() { RequestActionEventArgs ex = new RequestActionEventArgs(false); try { api = new JinzoraApi(request.RequestXML(_serverItem.Url)); api.Status += new EventHandler(api_Status); ex = new RequestActionEventArgs(false, api.GetLinkListe(), api.getPageType); } catch (Exception exc) { OnRequestAction(new MyErrorEventArgs(exc.Message)); api.Status -= api_Status; return; } api.Status -= api_Status; OnRequestAction(ex); }
private void threadRequest(Object parameter) { RequestActionEventArgs e = new RequestActionEventArgs(true); OnRequestAction(e); if (_serverItem.PageVersion == JinzoraVersion.Nothing) { lookupPageVersion(); } if (_serverItem.PageVersion == JinzoraVersion.NewVersion) { UseApi(parameter); } if (_serverItem.PageVersion == JinzoraVersion.OldVersion) { UseParser(parameter); } }
private void UseApiLink(LinkClass link) { RequestActionEventArgs ex = new RequestActionEventArgs(false); try { api = new JinzoraApi(request.RequestXmlLink(link.UrlContent)); api.Status += new EventHandler(api_Status); ex = new RequestActionEventArgs(false, api.GetLinkListe(), api.getPageType); } catch (Exception exc) { OnRequestAction(new MyErrorEventArgs(exc.Message)); api.Status -= api_Status; return; } api.Status -= api_Status; OnRequestAction(ex); }
private void returnAction(string action) { RequestActionEventArgs e = new RequestActionEventArgs(action); OnRequestAction(e); }