public ReflectionSiteMapBuilder( IEnumerable<String> includeAssemblies, IEnumerable<String> excludeAssemblies, ISiteMapXmlReservedAttributeNameProvider reservedAttributeNameProvider, INodeKeyGenerator nodeKeyGenerator, IDynamicNodeBuilder dynamicNodeBuilder, ISiteMapNodeFactory siteMapNodeFactory, ISiteMapCacheKeyGenerator siteMapCacheKeyGenerator ) { if (includeAssemblies == null) throw new ArgumentNullException("includeAssemblies"); if (excludeAssemblies == null) throw new ArgumentNullException("excludeAssemblies"); if (reservedAttributeNameProvider == null) throw new ArgumentNullException("reservedAttributeNameProvider"); if (nodeKeyGenerator == null) throw new ArgumentNullException("nodeKeyGenerator"); if (dynamicNodeBuilder == null) throw new ArgumentNullException("dynamicNodeBuilder"); if (siteMapNodeFactory == null) throw new ArgumentNullException("siteMapNodeFactory"); if (siteMapCacheKeyGenerator == null) throw new ArgumentNullException("siteMapCacheKeyGenerator"); this.includeAssemblies = includeAssemblies; this.excludeAssemblies = excludeAssemblies; this.reservedAttributeNameProvider = reservedAttributeNameProvider; this.nodeKeyGenerator = nodeKeyGenerator; this.dynamicNodeBuilder = dynamicNodeBuilder; this.siteMapNodeFactory = siteMapNodeFactory; this.siteMapCacheKeyGenerator = siteMapCacheKeyGenerator; }
public XmlSiteMapBuilder( IXmlSource xmlSource, ISiteMapXmlReservedAttributeNameProvider reservedAttributeNameProvider, INodeKeyGenerator nodeKeyGenerator, IDynamicNodeBuilder dynamicNodeBuilder, ISiteMapNodeFactory siteMapNodeFactory, ISiteMapXmlNameProvider xmlNameProvider ) { if (xmlSource == null) throw new ArgumentNullException("xmlSource"); if (reservedAttributeNameProvider == null) throw new ArgumentNullException("reservedAttributeNameProvider"); if (nodeKeyGenerator == null) throw new ArgumentNullException("nodeKeyGenerator"); if (dynamicNodeBuilder == null) throw new ArgumentNullException("dynamicNodeBuilder"); if (siteMapNodeFactory == null) throw new ArgumentNullException("siteMapNodeFactory"); if (xmlNameProvider == null) throw new ArgumentNullException("xmlNameProvider"); this.xmlSource = xmlSource; this.reservedAttributeNameProvider = reservedAttributeNameProvider; this.nodeKeyGenerator = nodeKeyGenerator; this.dynamicNodeBuilder = dynamicNodeBuilder; this.siteMapNodeFactory = siteMapNodeFactory; this.xmlNameProvider = xmlNameProvider; }
public XmlSiteMapBuilder( IXmlSource xmlSource, ISiteMapXmlReservedAttributeNameProvider reservedAttributeNameProvider, INodeKeyGenerator nodeKeyGenerator, IDynamicNodeBuilder dynamicNodeBuilder, ISiteMapNodeFactory siteMapNodeFactory, ISiteMapXmlNameProvider xmlNameProvider ) { if (xmlSource == null) { throw new ArgumentNullException("xmlSource"); } if (reservedAttributeNameProvider == null) { throw new ArgumentNullException("reservedAttributeNameProvider"); } if (nodeKeyGenerator == null) { throw new ArgumentNullException("nodeKeyGenerator"); } if (dynamicNodeBuilder == null) { throw new ArgumentNullException("dynamicNodeBuilder"); } if (siteMapNodeFactory == null) { throw new ArgumentNullException("siteMapNodeFactory"); } if (xmlNameProvider == null) { throw new ArgumentNullException("xmlNameProvider"); } this.xmlSource = xmlSource; this.reservedAttributeNameProvider = reservedAttributeNameProvider; this.nodeKeyGenerator = nodeKeyGenerator; this.dynamicNodeBuilder = dynamicNodeBuilder; this.siteMapNodeFactory = siteMapNodeFactory; this.xmlNameProvider = xmlNameProvider; }
public SiteMapLoaderContainer(ConfigurationSettings settings) { // Singleton instances this.absoluteFileName = HostingEnvironment.MapPath(settings.SiteMapFileName); this.mvcContextFactory = new MvcContextFactory(); #if NET35 this.siteMapCache = new SiteMapCache(new AspNetCacheProvider<ISiteMap>(this.mvcContextFactory)); #else this.siteMapCache = new SiteMapCache(new RuntimeCacheProvider<ISiteMap>(System.Runtime.Caching.MemoryCache.Default)); #endif this.requestCache = this.mvcContextFactory.GetRequestCache(); this.urlPath = new UrlPath(this.mvcContextFactory); this.siteMapCacheKeyGenerator = new SiteMapCacheKeyGenerator(this.mvcContextFactory); this.siteMapCacheKeyToBuilderSetMapper = new SiteMapCacheKeyToBuilderSetMapper(); this.nodeKeyGenerator = new NodeKeyGenerator(); var siteMapNodeFactoryContainer = new SiteMapNodeFactoryContainer(settings, this.mvcContextFactory, this.urlPath); this.siteMapNodeFactory = siteMapNodeFactoryContainer.ResolveSiteMapNodeFactory(); this.siteMapXmlNameProvider = new SiteMapXmlNameProvider(); this.dynamicNodeBuilder = new DynamicNodeBuilder(this.nodeKeyGenerator, this.siteMapNodeFactory); this.siteMapBuiderSetStrategy = this.ResolveSiteMapBuilderSetStrategy(settings); var siteMapFactoryContainer = new SiteMapFactoryContainer(settings, this.mvcContextFactory, this.urlPath); this.siteMapFactory = siteMapFactoryContainer.ResolveSiteMapFactory(); this.siteMapCreator = new SiteMapCreator(this.siteMapCacheKeyToBuilderSetMapper, this.siteMapBuiderSetStrategy, this.siteMapFactory); }