public bool Match(HttpContextBase httpContext, Route route, string parameterName, RouteValueDictionary values, RouteDirection routeDirection) { object value; if (values.TryGetValue(parameterName, out value)) { var parameterValue = Convert.ToString(value); var path = FindPath(parameterValue); if (path == null) { return(false); } var archiveData = FindArchiveData(parameterValue); if (archiveData == null) { return(false); } try { // is this a valid date ? archiveData.ToDateTime(); } catch { return(false); } IDictionary <string, string> routeValues; if (!_aliasHolder.GetMap("Orchard.Blogs").TryGetAlias(path, out routeValues)) { return(false); } var isBlog = //routeValues.ContainsKey("area") && //routeValues["area"] == "Orchard.Blogs" && routeValues.ContainsKey("controller") && routeValues["controller"] == "Blog" && routeValues.ContainsKey("action") && routeValues["action"] == "Item" ; return(isBlog); } return(false); }
public bool Match(HttpContextBase httpContext, Route route, string parameterName, RouteValueDictionary values, RouteDirection routeDirection) { object value; if (values.TryGetValue(parameterName, out value)) { var parameterValue = Convert.ToString(value); var path = FindPath(parameterValue); if (path == null) { return(false); } var archiveData = FindArchiveData(parameterValue); if (archiveData == null) { return(false); } try { // is this a valid date ? archiveData.ToDateTime(); } catch { return(false); } AliasInfo aliasInfo; if (!_aliasHolder.GetMap(" LawBookCases.Module").TryGetAlias(path, out aliasInfo)) { return(false); } var isCase = //routeValues.ContainsKey("area") && //routeValues["area"] == " LawBookCases.Module" && aliasInfo.RouteValues.ContainsKey("controller") && aliasInfo.RouteValues["controller"] == "Case" && aliasInfo.RouteValues.ContainsKey("action") && aliasInfo.RouteValues["action"] == "Item" ; return(isCase); } return(false); }
public ExtendedAliasRoute(string url, IRouteHandler routeHandler, IAliasHolder aliasHolder) : base( url, new RouteValueDictionary { { "httproute", true }, { "area", "dcp.Routing" } }, new RouteValueDictionary(), new RouteValueDictionary { { "area", "dcp.Routing" } }, routeHandler) { _url = url; _aliasHolder = aliasHolder; _aliasMap = aliasHolder.GetMap("Contents"); }
private string LookupAlias(RouteValueDictionary routeValues) { object area; if (!routeValues.TryGetValue("area", out area)) { return(null); } var map = _aliasHolder.GetMap(area.ToString()); if (map == null) { return(null); } var alias = map.GetAliases().FirstOrDefault(x => IsSameRoute(x.RouteValues, routeValues) && !String.IsNullOrWhiteSpace(x.Path)); return(alias != null ? alias.Path : null); }
public static AliasInfo GetAlias(string requestPath, IAliasHolder aliasHolder) { var alias = GetClosestParentAlias(requestPath, aliasHolder.GetMap("Contents"), true); if (alias != null) { return(alias); } foreach (var map in aliasHolder.GetMaps()) { alias = GetClosestParentAlias(requestPath, map, true); if (alias != null) { return(alias); } } return(null); }
public bool Match(HttpContextBase httpContext, Route route, string parameterName, RouteValueDictionary values, RouteDirection routeDirection) { if (routeDirection == RouteDirection.UrlGeneration) { return(true); } object value; if (values.TryGetValue(parameterName, out value)) { var parameterValue = Convert.ToString(value); var path = FindPath(parameterValue); if (path == null) { return(false); } AliasInfo aliasInfo; if (!_aliasHolder.GetMap("Orchard.Blogs").TryGetAlias(path, out aliasInfo)) { return(false); } var isBlog = //routeValues.ContainsKey("area") && //routeValues["area"] == "Orchard.Blogs" && aliasInfo.RouteValues.ContainsKey("controller") && aliasInfo.RouteValues["controller"] == "Blog" && aliasInfo.RouteValues.ContainsKey("action") && aliasInfo.RouteValues["action"] == "Item" ; return(isBlog); } return(false); }
public IDictionary <string, string> Get(string path) { // All aliases are already in memory, and updated. We don't need to query the // database to lookup an alias by path. AliasInfo alias; // Optimized code path on Contents as it's the main provider of aliases if (_aliasHolder.GetMap("Contents").TryGetAlias(path, out alias)) { return(alias.RouteValues); } foreach (var map in _aliasHolder.GetMaps()) { if (map.TryGetAlias(path, out alias)) { return(alias.RouteValues); } } return(null); }
public AliasRoute(IAliasHolder aliasHolder, string areaName, IRouteHandler routeHandler) { Area = areaName; _aliasMap = aliasHolder.GetMap(areaName); _routeHandler = routeHandler; }
public PartialAliasRoute(IAliasHolder aliasHolder, string areaName, IRouteHandler routeHandler) : base(aliasHolder, areaName, routeHandler) { mAliasMap = aliasHolder.GetMap(areaName); mRouteHandler = routeHandler; }
public HomeRoute(IAliasHolder aliasHolder, IWorkContextAccessor workContextAccessor) { _workContextAccessor = workContextAccessor; _aliasMap = aliasHolder.GetMap(AreaName); }