public static String GetPageURL(WebSiteDocument page, WebSiteDocuments site)
        {
            String url = WebSiteDocumentsSetTools.GetRequestURL(page.HTTPHeader);

            if (url.isNullOrEmpty())
            {
                url = site.domain.add(page.path, "/");
                url = url.ensureStartsWith("http://");
            }
            return(url);
        }
        /// <summary>
        /// Gets the or add.
        /// </summary>
        /// <param name="fullUrl">The full URL.</param>
        /// <returns></returns>
        public WebSiteDocument GetOrAdd(String fullUrl)
        {
            Int32 p = fullUrl.IndexOf(domain);

            if (p > -1)
            {
                fullUrl = fullUrl.Substring(p + domain.Length);
            }
            //            fullUrl = fullUrl.removeStartsWith(domain);
            if (documents.Any(x => x.path == fullUrl))
            {
                return(documents.First(x => x.path == fullUrl));
            }
            WebSiteDocument doc = new WebSiteDocument();

            doc.path = fullUrl;
            documents.Add(doc);
            return(doc);
        }