Esempio n. 1
0
        public async Task <IEnumerable <string> > Get()
        {
            const string url = "https://hirespace.com/"; // Pass this in to method, i.e with POST

            var siteMap = await _siteMapBuilder.BuildSiteMap(url);

            return(siteMap.Select(l => l.Url));
        }
        public SiteMap GetSiteMap(string siteMapCacheKey = null)
        {
            if (string.IsNullOrEmpty(siteMapCacheKey))
            {
                siteMapCacheKey = siteMapCacheKeyGenerator.GenerateKey();
            }

            // retrieve builderset
            var builderSet = GetBuilderSet(siteMapCacheKey);

            // check cache for sitemap if not available generate using builder
            // cache using cachedetails
            var siteMap = siteMapCache.GetOrAdd(
                siteMapCacheKey,
                () => siteMapBuilder.BuildSiteMap(builderSet, siteMapCacheKey),
                builderSet.CacheDetails
                );

            // create new restricted sitemap based on user's permissions
            var restrictedSiteMap = VisitSiteMap(siteMap);

            // return new filtered sitemap
            return(restrictedSiteMap);
        }