PageDefinition GetPageDefinition(PageFile page)
        {
            var pageDefinition = _pageParser.Parse(page.ResourceLocation);

            var inheritedDefinitions = GetInheritedDefinitions(page.Parent);

            return inheritedDefinitions.Combine(pageDefinition);
        }
Esempio n. 2
0
        public void It_Should_be_possible_to_check_priority_of_two_item()
        {
            var a = new PageFile("a.xrc");
            var b = new PageFile("b.xrc");
            Assert.IsTrue(a.Priority == b.Priority);

            a = new PageFile("test.xrc");
            b = new PageFile("test.xrc");
            Assert.IsTrue(a.Priority == b.Priority);

            // when an item have a dynamic paramater is less priority than a fixed item
            a = new PageFile("{p}.xrc");
            b = new PageFile("b.xrc");
            Assert.IsTrue(a.Priority > b.Priority);

            // when an item have a dynamic parameter the priority s calculated using the number of fixed characters
            a = new PageFile("lnooooongerprefix{p}.xrc");
            b = new PageFile("shorterprefix{p}.xrc");
            Assert.IsTrue(a.Priority < b.Priority);
        }
Esempio n. 3
0
 public PageLocatorResult(PageFile page, UriSegmentParameterList urlSegmentsParameters)
 {
     _page = page;
     _urlSegmentsParameters = urlSegmentsParameters;
 }
        void SetLayout(PageDefinition pageDefinition, PageFile pageFile, UriSegmentParameterList uriParameters)
        {
            if (pageFile.IsSlot || pageFile.IsDefaultLayout)
                return;

            if (!pageDefinition.Actions.Contains("GET"))
                return;

            if (pageFile.DefaultLayoutFile == null)
                return;

            var action = pageDefinition.Actions["GET"];
            if (action != null && action.Layout == null)
                action.Layout = pageFile.DefaultLayoutFile.BuildUrl(uriParameters).ToString();
        }