Beispiel #1
0
        /// <exclude />
        public override SiteMapNode GetParentNode(SiteMapNode node)
        {
            Verify.ArgumentNotNull(node, "node");

            var pageSiteMapNode = (CmsPageSiteMapNode)node;

            IPage parentPage = null;

            using (new DataScope(pageSiteMapNode.Culture))
            {
                Guid parentPageId = PageManager.GetParentId(pageSiteMapNode.Page.Id);
                if (parentPageId != Guid.Empty)
                {
                    parentPage = PageManager.GetPageById(parentPageId);
                }
            }

            SiteMapNode parentNode;

            if (parentPage != null)
            {
                parentNode = new CmsPageSiteMapNode(this, parentPage);
            }
            else
            {
                parentNode = ParentProvider?.GetParentNode(node);
            }

            return(parentNode != null && parentNode.IsAccessibleToUser(HttpContext.Current) ? parentNode : null);
        }
        public override SiteMapNode GetParentNode(SiteMapNode node)
        {
            if (node == null)
            {
                throw new ArgumentNullException("node");
            }
            CheckStaticSiteMap();

            // Look up the table.

            SiteMapNode parentNode;

            if (_currentState.ParentNodes.TryGetValue(node, out parentNode))
            {
                return(parentNode);
            }

            // Ask the parent provider.

            if (parentNode == null && ParentProvider != null)
            {
                return(ParentProvider.GetParentNode(node));
            }
            else
            {
                return(null);
            }
        }
        public override SiteMapNode GetParentNode(SiteMapNode node)
        {
            if (node == null)
            {
                throw new ArgumentNullException("node");
            }

            BuildSiteMap();
            SiteMapNode parent = (SiteMapNode)ParentNodeTable[node];

            if (parent == null)
            {
                // Try to find the original node in the table using the key
                SiteMapNode fallbackNode = (SiteMapNode)KeyTable[node.Key];
                if (fallbackNode != null)
                {
                    parent = (SiteMapNode)ParentNodeTable[fallbackNode];
                }
            }

            // Try the parent providers.
            if (parent == null && ParentProvider != null)
            {
                parent = ParentProvider.GetParentNode(node);
            }

            return(ReturnNodeIfAccessible(parent));
        }
        /// <exclude />
        public override SiteMapNode GetParentNode(SiteMapNode node)
        {
            Verify.ArgumentNotNull(node, "node");

            SiteMapNode parentNode;
            var         culture = node is CompositeC1SiteMapNode
                ? ((CompositeC1SiteMapNode)node).Culture
                : LocalizationScopeManager.CurrentLocalizationScope;

            var container = GetContainer(culture);

            container.ParentNodesMap.TryGetValue(node.Key, out parentNode);

            if (parentNode == null && ParentProvider != null)
            {
                parentNode = ParentProvider.GetParentNode(node);
            }

            if (parentNode == null)
            {
                return(null);
            }
            if (!parentNode.IsAccessibleToUser(HttpContext.Current))
            {
                return(null);
            }

            return(parentNode);
        }
        public override SiteMapNode GetParentNode(SiteMapNode node)
        {
            if (node.Key == rootPath)
            {
                return(ParentProvider.GetParentNode(node));
            }

            return(directoryFactory.CreateNodeFromPath(Path.GetDirectoryName(node.Key)));
        }
Beispiel #6
0
 /// <summary>
 /// Ctor
 /// </summary>
 /// <param name="Proc">The Proc involved in this request</param>
 /// <param name="user">The user making the request</param>
 /// <param name="query">The query that originated this node</param>
 /// <param name="request">The request inputted into the system</param>
 /// <param name="result">The result to be passed to the user</param>
 /// <param name="templateNode">The node to be Processed</param>
 public root(AltBot bot,
             User user,
             SubQuery query,
             Request request,
             Result result,
             XmlNode templateNode, ParentProvider pp)
     : base(bot, user, query, request, result, templateNode)
 {
     GetTargetSettings = pp ?? (() => this.query.TargetSettings);
 }
Beispiel #7
0
        private void StartMainThreadScheduler()
        {
            if (mainThreadScheduler != null)
            {
                return;
            }

            mainThreadScheduler = new GameObject($"{nameof(MainThreadJobSystem)}").AddComponent <MainThreadJobSystem>();
            ParentProvider.AddChildToParent(mainThreadScheduler.transform, "MultiThreading-Coroutine");
            GameObject.DontDestroyOnLoad(mainThreadScheduler);
        }
Beispiel #8
0
    void StartStandard()
    {
        // App
        Application.targetFrameRate = 60;

        // Init
        ScoreAdder     scoreAdder     = new ScoreAdder();
        StateTrigger   stateTrigger   = new StateTrigger();
        CursorStandard cursorStandard = new CursorStandard();
        RandomProvider randomProvider = new RandomProvider();
        Resetter       resetter       = new Resetter();
        ParentProvider parentProvider = new ParentProvider();

        // Connect
        inputSender.AddSpawnReceiver(spawnerStandard.GetSpawnReceiver());
        inputSender.SetRandomProvider(randomProvider);
        inputSender.AddAudioReceiver(audioPlayer.GetAudioReceiver());
        inputSenderConstant.AddSpawnReceiver(cursorStandard.GetSpawnReceiver());
        inputSenderConstant.SetRandomProvider(randomProvider);
        spawnerStandard.ReceiveFactory(fruitFactoryStandard);
        cursorStandard.ReceiveFactory(fruitFactoryStandard);
        spawnerStandard.AddScoreReceiver(scoreAdder.GetScoreReceiver());
        spawnerStandard.AddAudioReceiver(audioPlayer.GetAudioReceiver());
        spawnerStandard.AddStateReceiver(stateTrigger.GetStateReceiver());
        spawnerStandard.SetParentProvider(parentProvider);
        scoreAdder.AddScoreReceiver(outputRenderer.GetScoreReceiver());
        stateTrigger.AddStateReceiver(outputRenderer.GetStateReceiver());
        preFailer.AddRedReceiver(redder.GetRedReceiver());
        failer.AddRedReceiver(redder.GetRedReceiver());
        failer.AddStateReceiver(stateTrigger.GetStateReceiver());
        outputRenderer.SetResetter(resetter);
        resetter.AddResetable(inputSender);
        resetter.AddResetable(inputSenderConstant);
        resetter.AddResetable(fruitFactoryStandard);
        resetter.AddResetable(outputRenderer);
        resetter.AddResetable(preFailer);
        resetter.AddResetable(failer);
        resetter.AddResetable(redder);
        resetter.AddResetable(scoreAdder);
        resetter.AddResetable(spawnerStandard);
        resetter.AddResetable(stateTrigger);
        resetter.AddResetable(cursorStandard);
        resetter.AddResetable(randomProvider);
        resetter.AddResetable(parentProvider);
    }
Beispiel #9
0
        public object GetService(Type serviceType)
        {
            if (serviceType == null)
            {
                throw new ArgumentNullException("serviceType");
            }

            // Process self
            if (serviceType.GetTypeInfo().IsInstanceOfType(this))
            {
                return(this);
            }

            var dict   = GetServiceDictionary(serviceType, false);
            var result = dict == null ? null : dict.Get(serviceType).FirstOrDefault();

            return(result ?? ParentProvider.GetService(serviceType));
        }