public SiteMapNodeFactory(
            ISiteMapNodeChildStateFactory siteMapNodeChildStateFactory,
            ILocalizationServiceFactory localizationServiceFactory,
            ISiteMapNodePluginProvider pluginProvider,
            IUrlPath urlPath,
            IMvcContextFactory mvcContextFactory
            )
        {
            if (siteMapNodeChildStateFactory == null)
                throw new ArgumentNullException("siteMapNodeChildStateFactory");
            if (localizationServiceFactory == null)
                throw new ArgumentNullException("localizationServiceFactory");
            if (pluginProvider == null)
                throw new ArgumentNullException("pluginProvider");
            if (urlPath == null)
                throw new ArgumentNullException("urlPath");
            if (mvcContextFactory == null)
                throw new ArgumentNullException("mvcContextFactory");

            this.siteMapNodeChildStateFactory = siteMapNodeChildStateFactory;
            this.localizationServiceFactory = localizationServiceFactory;
            this.pluginProvider = pluginProvider;
            this.urlPath = urlPath;
            this.mvcContextFactory = mvcContextFactory;
        }
 public LockableSiteMapNode(
     ISiteMap siteMap,
     string key,
     bool isDynamic,
     ISiteMapNodePluginProvider pluginProvider,
     IMvcContextFactory mvcContextFactory,
     ISiteMapNodeChildStateFactory siteMapNodeChildStateFactory,
     ILocalizationService localizationService,
     IUrlPath urlPath
     )
     : base(siteMap, 
         key, 
         isDynamic,
         pluginProvider,
         mvcContextFactory,
         siteMapNodeChildStateFactory, 
         localizationService, 
         urlPath)
 {
 }
        public SiteMapNode(
            ISiteMap siteMap, 
            string key,
            bool isDynamic,
            ISiteMapNodePluginProvider pluginProvider,
            IMvcContextFactory mvcContextFactory,
            ISiteMapNodeChildStateFactory siteMapNodeChildStateFactory,
            ILocalizationService localizationService,
            IUrlPath urlPath
            )
        {
            if (siteMap == null)
                throw new ArgumentNullException("siteMap");
            if (string.IsNullOrEmpty(key))
                throw new ArgumentNullException("key");
            if (pluginProvider == null)
                throw new ArgumentNullException("pluginProvider");
            if (mvcContextFactory == null)
                throw new ArgumentNullException("mvcContextFactory");
            if (siteMapNodeChildStateFactory == null)
                throw new ArgumentNullException("siteMapNodeChildStateFactory");
            if (localizationService == null)
                throw new ArgumentNullException("localizationService");
            if (urlPath == null)
                throw new ArgumentNullException("urlPath");

            this.siteMap = siteMap;
            this.key = key;
            this.isDynamic = isDynamic;
            this.pluginProvider = pluginProvider;
            this.mvcContextFactory = mvcContextFactory;
            this.localizationService = localizationService;
            this.urlPath = urlPath;

            // Initialize child collections
            this.attributes = siteMapNodeChildStateFactory.CreateAttributeDictionary(key, "Attributes", siteMap, localizationService);
            this.routeValues = siteMapNodeChildStateFactory.CreateRouteValueDictionary(key, "RouteValues", siteMap);
            this.preservedRouteParameters = siteMapNodeChildStateFactory.CreatePreservedRouteParameterCollection(siteMap);
            this.roles = siteMapNodeChildStateFactory.CreateRoleCollection(siteMap);
            this.metaRobotsValues = siteMapNodeChildStateFactory.CreateMetaRobotsValueCollection(siteMap);
        }
 public LockableSiteMapNode(
     ISiteMap siteMap,
     string key,
     bool isDynamic,
     ISiteMapNodePluginProvider pluginProvider,
     IMvcContextFactory mvcContextFactory,
     ISiteMapNodeChildStateFactory siteMapNodeChildStateFactory,
     ILocalizationService localizationService,
     IUrlPath urlPath
     )
     : base(
         siteMap,
         key,
         isDynamic,
         pluginProvider,
         mvcContextFactory,
         siteMapNodeChildStateFactory,
         localizationService,
         urlPath
         )
 {
 }