PageDefinition GetPageDefinition(PageFile page) { var pageDefinition = _pageParser.Parse(page.ResourceLocation); var inheritedDefinitions = GetInheritedDefinitions(page.Parent); return inheritedDefinitions.Combine(pageDefinition); }
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); }
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(); }