public NavigationViewModel(
            string startingNodeKey,
            string navigationFilterName,
            HttpContext context,
            IUrlHelper urlHelper,
            TreeNode<NavigationNode> rootNode,
            INavigationNodePermissionResolver permissionResolver,
            string nodeSearchUrlPrefix,
            ILogger logger)
        {
            this.navigationFilterName = navigationFilterName;
            this.nodeSearchUrlPrefix = nodeSearchUrlPrefix;
            this.context = context;
            this.RootNode = rootNode;
            this.permissionResolver = permissionResolver;
            this.urlHelper = urlHelper;
            this.startingNodeKey = startingNodeKey;
            log = logger;

            removalFilters.Add(FilterIsAllowed);
            removalFilters.Add(permissionResolver.ShouldAllowView);
            removalFilters.Add(IsAllowedByAdjuster);



        }
 public NavigationViewComponent(
     INavigationTreeBuilder siteMapTreeBuilder,
     INavigationNodePermissionResolver permissionResolver,
     IUrlHelper urlHelper,
     INodeUrlPrefixProvider prefixProvider,
     ILogger <NavigationViewComponent> logger)
 {
     builder = siteMapTreeBuilder;
     this.permissionResolver = permissionResolver;
     this.urlHelper          = urlHelper;
     if (prefixProvider == null)
     {
         this.prefixProvider = new DefaultNodeUrlPrefixProvider();
     }
     else
     {
         this.prefixProvider = prefixProvider;
     }
     log = logger;
 }
 public NavigationViewComponent(
     INavigationTreeBuilder siteMapTreeBuilder,
     INavigationNodePermissionResolver permissionResolver,
     IUrlHelper urlHelper,
     INodeUrlPrefixProvider prefixProvider,
     ILogger<NavigationViewComponent> logger)
 {
     builder = siteMapTreeBuilder;
     this.permissionResolver = permissionResolver;
     this.urlHelper = urlHelper;
     if(prefixProvider == null)
     {
         this.prefixProvider = new DefaultNodeUrlPrefixProvider();
     }
     else
     {
         this.prefixProvider = prefixProvider;
     }
     log = logger;
 }
        public NavigationViewModel(
            string startingNodeKey,
            string navigationFilterName,
            HttpContext context,
            IUrlHelper urlHelper,
            TreeNode <NavigationNode> rootNode,
            INavigationNodePermissionResolver permissionResolver,
            string nodeSearchUrlPrefix,
            ILogger logger)
        {
            this.navigationFilterName = navigationFilterName;
            this.nodeSearchUrlPrefix  = nodeSearchUrlPrefix;
            this.context            = context;
            this.RootNode           = rootNode;
            this.permissionResolver = permissionResolver;
            this.urlHelper          = urlHelper;
            this.startingNodeKey    = startingNodeKey;
            log = logger;

            removalFilters.Add(FilterIsAllowed);
            removalFilters.Add(permissionResolver.ShouldAllowView);
            removalFilters.Add(IsAllowedByAdjuster);
        }