public ReflectionSiteMapNodeProvider( IEnumerable <String> includeAssemblies, IEnumerable <String> excludeAssemblies, IAttributeAssemblyProviderFactory attributeAssemblyProviderFactory, IMvcSiteMapNodeAttributeDefinitionProvider attributeNodeDefinitionProvider ) { if (includeAssemblies == null) { throw new ArgumentNullException("includeAssemblies"); } if (excludeAssemblies == null) { throw new ArgumentNullException("excludeAssemblies"); } if (attributeAssemblyProviderFactory == null) { throw new ArgumentNullException("attributeAssemblyProviderFactory"); } if (attributeNodeDefinitionProvider == null) { throw new ArgumentNullException("attributeNodeDefinitionProvider"); } this.includeAssemblies = includeAssemblies; this.excludeAssemblies = excludeAssemblies; this.attributeAssemblyProviderFactory = attributeAssemblyProviderFactory; this.attributeNodeDefinitionProvider = attributeNodeDefinitionProvider; }
public ReflectionSiteMapNodeProviderFactory( IAttributeAssemblyProviderFactory attributeAssemblyProviderFactory, IMvcSiteMapNodeAttributeDefinitionProvider attributeNodeDefinitionProvider ) { if (attributeAssemblyProviderFactory == null) throw new ArgumentNullException("attributeAssemblyProviderFactory"); if (attributeNodeDefinitionProvider == null) throw new ArgumentNullException("attributeNodeDefinitionProvider"); this.attributeAssemblyProviderFactory = attributeAssemblyProviderFactory; this.attributeNodeDefinitionProvider = attributeNodeDefinitionProvider; }
public SiteMapNodeFactoryContainer( ConfigurationSettings settings, IMvcContextFactory mvcContextFactory, IUrlPath urlPath) { this.absoluteFileName = HostingEnvironment.MapPath(settings.SiteMapFileName); this.settings = settings; this.mvcContextFactory = mvcContextFactory; this.requestCache = this.mvcContextFactory.GetRequestCache(); this.urlPath = urlPath; this.assemblyProvider = new AttributeAssemblyProvider(settings.IncludeAssembliesForScan, settings.ExcludeAssembliesForScan); this.mvcSiteMapNodeAttributeProvider = new MvcSiteMapNodeAttributeDefinitionProvider(); this.dynamicNodeProviders = this.ResolveDynamicNodeProviders(); this.siteMapNodeUrlResolvers = this.ResolveSiteMapNodeUrlResolvers(); this.siteMapNodeVisibilityProviders = this.ResolveSiteMapNodeVisibilityProviders(settings.DefaultSiteMapNodeVisibiltyProvider); }
public ReflectionSiteMapNodeProviderFactory( IAttributeAssemblyProviderFactory attributeAssemblyProviderFactory, IMvcSiteMapNodeAttributeDefinitionProvider attributeNodeDefinitionProvider ) { if (attributeAssemblyProviderFactory == null) { throw new ArgumentNullException("attributeAssemblyProviderFactory"); } if (attributeNodeDefinitionProvider == null) { throw new ArgumentNullException("attributeNodeDefinitionProvider"); } this.attributeAssemblyProviderFactory = attributeAssemblyProviderFactory; this.attributeNodeDefinitionProvider = attributeNodeDefinitionProvider; }
public ReflectionSiteMapNodeProvider( IEnumerable<String> includeAssemblies, IEnumerable<String> excludeAssemblies, IAttributeAssemblyProviderFactory attributeAssemblyProviderFactory, IMvcSiteMapNodeAttributeDefinitionProvider attributeNodeDefinitionProvider ) { if (includeAssemblies == null) throw new ArgumentNullException("includeAssemblies"); if (excludeAssemblies == null) throw new ArgumentNullException("excludeAssemblies"); if (attributeAssemblyProviderFactory == null) throw new ArgumentNullException("attributeAssemblyProviderFactory"); if (attributeNodeDefinitionProvider == null) throw new ArgumentNullException("attributeNodeDefinitionProvider"); this.includeAssemblies = includeAssemblies; this.excludeAssemblies = excludeAssemblies; this.attributeAssemblyProviderFactory = attributeAssemblyProviderFactory; this.attributeNodeDefinitionProvider = attributeNodeDefinitionProvider; }
public SiteMapNodeFactoryContainer( ConfigurationSettings settings, IMvcContextFactory mvcContextFactory, IUrlPath urlPath, IReservedAttributeNameProvider reservedAttributeNameProvider) { if (settings.EnableSiteMapFile) { this.absoluteFileName = HostingEnvironment.MapPath(settings.SiteMapFileName); } this.settings = settings; this.mvcContextFactory = mvcContextFactory; this.requestCache = this.mvcContextFactory.GetRequestCache(); this.urlPath = urlPath; this.reservedAttributeNameProvider = reservedAttributeNameProvider; this.javaScriptSerializer = new JavaScriptSerializerAdapter(); this.jsonToDictionaryDeserializer = new JsonToDictionaryDeserializer(this.javaScriptSerializer, this.mvcContextFactory); this.assemblyProvider = new AttributeAssemblyProvider(settings.IncludeAssembliesForScan, settings.ExcludeAssembliesForScan); this.mvcSiteMapNodeAttributeProvider = new MvcSiteMapNodeAttributeDefinitionProvider(); this.dynamicNodeProviders = this.ResolveDynamicNodeProviders(); this.siteMapNodeUrlResolvers = this.ResolveSiteMapNodeUrlResolvers(); this.siteMapNodeVisibilityProviders = this.ResolveSiteMapNodeVisibilityProviders(settings.DefaultSiteMapNodeVisibiltyProvider); }
public SiteMapLoaderContainer(ConfigurationSettings settings) { // Singleton instances if (settings.EnableSiteMapFile) { 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.cacheDependency = this.ResolveCacheDependency(settings); this.requestCache = this.mvcContextFactory.GetRequestCache(); this.urlPath = new UrlPath(this.mvcContextFactory); this.siteMapCacheKeyGenerator = new SiteMapCacheKeyGenerator(this.mvcContextFactory); this.siteMapCacheKeyToBuilderSetMapper = new SiteMapCacheKeyToBuilderSetMapper(); var siteMapNodeFactoryContainer = new SiteMapNodeFactoryContainer(settings, this.mvcContextFactory, this.urlPath); this.siteMapNodeToParentRelationFactory = new SiteMapNodeToParentRelationFactory(); this.nodeKeyGenerator = new NodeKeyGenerator(); this.siteMapNodeFactory = siteMapNodeFactoryContainer.ResolveSiteMapNodeFactory(); this.siteMapNodeCreatorFactory = this.ResolveSiteMapNodeCreatorFactory(); this.dynamicSiteMapNodeBuilderFactory = new DynamicSiteMapNodeBuilderFactory(this.siteMapNodeCreatorFactory); this.siteMapHierarchyBuilder = new SiteMapHierarchyBuilder(); this.siteMapXmlReservedAttributeNameProvider = new SiteMapXmlReservedAttributeNameProvider(settings.AttributesToIgnore); this.siteMapNodeHelperFactory = this.ResolveSiteMapNodeHelperFactory(); this.siteMapNodeVisitor = this.ResolveSiteMapNodeVisitor(settings); this.siteMapXmlNameProvider = new SiteMapXmlNameProvider(); this.attributeAssemblyProviderFactory = new AttributeAssemblyProviderFactory(); this.mvcSiteMapNodeAttributeDefinitionProvider = new MvcSiteMapNodeAttributeDefinitionProvider(); this.siteMapNodeProvider = this.ResolveSiteMapNodeProvider(settings); 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); }