コード例 #1
0
        public void AddCustomSiteMapData(Webpage webpage, XElement urlset, XDocument xmlDocument)
        {
            if (webpage == null)
            {
                return;
            }
            ISitemapGenerationInfo info = GetInfo(webpage);

            info.Append(webpage, urlset, xmlDocument);
        }
コード例 #2
0
        public bool ShouldAppend(Webpage webpage)
        {
            if (webpage == null)
            {
                return(false);
            }
            if (_exclusionReasons.Any(sitemap => sitemap.ShouldExclude(webpage)))
            {
                return(false);
            }
            ISitemapGenerationInfo info = GetInfo(webpage);

            return(info.ShouldAppend(webpage));
        }
コード例 #3
0
        private ISitemapGenerationInfo GetInfo(Webpage webpage)
        {
            ISitemapGenerationInfo generationInfo = null;

            if (webpage == null)
            {
                return(null);
            }

            var typeName = webpage.GetType().FullName;

            if (SitemapGenerationInfoTypes.ContainsKey(typeName))
            {
                generationInfo = _kernel.Get(SitemapGenerationInfoTypes[typeName]) as ISitemapGenerationInfo;
            }
            return(generationInfo ?? _kernel.Get <DefaultSitemapGenerationInfo>());
        }