public ActionResult CreateSitemapIndex <T>(ISitemapProvider sitemapProvider, ISitemapIndexConfiguration <T> sitemapIndexConfiguration)
        {
            if (sitemapProvider == null)
            {
                throw new ArgumentNullException("sitemapProvider");
            }
            if (sitemapIndexConfiguration == null)
            {
                throw new ArgumentNullException("sitemapIndexConfiguration");
            }
            int num = sitemapIndexConfiguration.DataSource.Count <T>();

            if (sitemapIndexConfiguration.Size >= num)
            {
                return(this.CreateSitemap <T>(sitemapProvider, sitemapIndexConfiguration, sitemapIndexConfiguration.DataSource.ToList <T>()));
            }
            if (!sitemapIndexConfiguration.CurrentPage.HasValue || sitemapIndexConfiguration.CurrentPage.Value <= 0)
            {
                int num1 = (int)Math.Ceiling((double)num / (double)sitemapIndexConfiguration.Size);
                return(sitemapProvider.CreateSitemapIndex(this.CreateSitemapIndex <T>(sitemapIndexConfiguration, num1)));
            }
            int?     currentPage = sitemapIndexConfiguration.CurrentPage;
            int      value       = (currentPage.Value - 1) * sitemapIndexConfiguration.Size;
            List <T> list        = sitemapIndexConfiguration.DataSource.Skip <T>(value).Take <T>(sitemapIndexConfiguration.Size).ToList <T>();

            return(this.CreateSitemap <T>(sitemapProvider, sitemapIndexConfiguration, list));
        }
示例#2
0
 public SiteMapController(IMenuLinkService menuLinkService, IPostService postService, INewsService newsService, ISitemapProvider sitemapProvider)
 {
     this._menuLinkService = menuLinkService;
     this._postService     = postService;
     this._newsService     = newsService;
     this._sitemapProvider = sitemapProvider;
 }
示例#3
0
        /// <inheritDoc/>
        public ActionResult CreateSitemapIndex <T>(ISitemapProvider sitemapProvider, ISitemapIndexConfiguration <T> sitemapIndexConfiguration)
        {
            if (sitemapProvider == null)
            {
                throw new ArgumentNullException(nameof(sitemapProvider));
            }

            if (sitemapIndexConfiguration == null)
            {
                throw new ArgumentNullException(nameof(sitemapIndexConfiguration));
            }

            var nodeCount = sitemapIndexConfiguration.DataSource.Count();

            if (sitemapIndexConfiguration.Size >= nodeCount)
            {
                return(CreateSitemap(sitemapProvider, sitemapIndexConfiguration, sitemapIndexConfiguration.DataSource.ToList()));
            }

            if (sitemapIndexConfiguration.CurrentPage.HasValue && sitemapIndexConfiguration.CurrentPage.Value > 0)
            {
                int skipCount = (sitemapIndexConfiguration.CurrentPage.Value - 1) * sitemapIndexConfiguration.Size;
                var items     = sitemapIndexConfiguration.DataSource.Skip(skipCount).Take(sitemapIndexConfiguration.Size).ToList();
                return(CreateSitemap(sitemapProvider, sitemapIndexConfiguration, items));
            }


            int pageCount = (int)Math.Ceiling((double)nodeCount / sitemapIndexConfiguration.Size);

            return(sitemapProvider.CreateSitemapIndex(CreateSitemapIndex(sitemapIndexConfiguration, pageCount)));
        }
示例#4
0
 public SitemapController(IQuerySender querySender,
                          ISitemapProvider sitemapProvider, IHttpContextAccessor httpContextAccessor)
 {
     _querySender         = querySender;
     _sitemapProvider     = sitemapProvider;
     _httpContextAccessor = httpContextAccessor;
 }
示例#5
0
 public TesterService(ISitemapProvider smProvider, IResponseTimeTester tester, ITestsRepository testsRepository, IMapper map)
 {
     sitemapProvider    = smProvider;
     responseTimeTester = tester;
     repo   = testsRepository;
     mapper = map;
 }
示例#6
0
        private ActionResult CreateSitemap <T>(ISitemapProvider sitemapProvider, ISitemapIndexConfiguration <T> sitemapIndexConfiguration, List <T> items)
        {
            var sitemapNodes = items.Select(sitemapIndexConfiguration.CreateNode).ToList();

            return(sitemapProvider.CreateSitemap(new SitemapModel(sitemapNodes)
            {
                StyleSheets = sitemapIndexConfiguration.SitemapStyleSheets
            }));
        }
        protected override void FinalizeSetUp()
        {
            _actionResultFactory = MockFor <ISitemapActionResultFactory>();
            _sitemapProvider     = new SitemapProvider(_actionResultFactory.Object);

            _httpContext    = MockFor <HttpContextBase>();
            _config         = MockFor <ISitemapConfiguration <SampleData> >();
            _expectedResult = new EmptyResult();
        }
        private ActionResult CreateSitemap <T>(ISitemapProvider sitemapProvider, ISitemapIndexConfiguration <T> sitemapIndexConfiguration, List <T> items)
        {
            ISitemapIndexConfiguration <T> sitemapIndexConfiguration1 = sitemapIndexConfiguration;
            List <SitemapNode>             list = items.Select <T, SitemapNode>(new Func <T, SitemapNode>(sitemapIndexConfiguration1.CreateNode)).ToList <SitemapNode>();

            return(sitemapProvider.CreateSitemap(new SitemapModel(list)
            {
                StyleSheets = sitemapIndexConfiguration.SitemapStyleSheets
            }));
        }
 public SitemapMiddleware(SitemapSettings a, ISitemapProvider b, IActionDescriptorCollectionProvider c, ILocationHelper d)
 {
     Settings          = a;
     DataProvider      = b;
     ActionDescriptors = c.ActionDescriptors.Items;
     LocationHelper    = d;
     Serializer        = new XmlSerializer(typeof(SitemapRoot));
     Namespaces        = new XmlSerializerNamespaces();
     Namespaces.Add(string.Empty, "http://www.sitemaps.org/schemas/sitemap/0.9");
 }
示例#10
0
 public SitemapProviderTests()
 {
     sitemapProvider = new SitemapProvider();
 }
 public HomeController(ISitemapProvider sitemapProvider)
 {
     this.sitemapProvider = sitemapProvider;
     dataBuilder = new TestDataBuilder();
 }
        protected override void FinalizeSetUp()
        {
            _actionResultFactory = MockFor<ISitemapActionResultFactory>();
            _sitemapProvider = new SitemapProvider(_actionResultFactory.Object);

            _httpContext = MockFor<HttpContextBase>();
            _config = MockFor<ISitemapConfiguration<SampleData>>();
            _expectedResult = new EmptyResult();
        }
示例#13
0
 public SitemapController(ISitemapProvider sitemapProvider)
 {
     this.sitemapProvider = sitemapProvider;
     dataBuilder          = new TestDataBuilder();
 }
 public SitemapProviderTests()
 {
     sitemapProvider = new SitemapProvider();
 }
 public HomeController(ISitemapProvider sitemapProvider, ISampleSitemapNodeBuilder sampleSitemapNodeBuilder)
 {
     _sitemapProvider = sitemapProvider;
     _builder = sampleSitemapNodeBuilder;
     _products = new List<Product>().AsQueryable();
 }
示例#16
0
 public HomeController(ISitemapProvider sitemapProvider, ISampleSitemapNodeBuilder sampleSitemapNodeBuilder)
 {
     _sitemapProvider = sitemapProvider;
     _builder         = sampleSitemapNodeBuilder;
     _products        = new List <Product>().AsQueryable();
 }