internal static string GetSiteNameRestriction(RedirectFolderItem redirectFolder) { var site = redirectFolder.SiteNameRestriction.Value; return site; }
internal InboundRule CreateInboundRuleFromInboundRuleItem(InboundRuleItem inboundRuleItem, RedirectFolderItem redirectFolderItem) { var siteNameRestriction = GetSiteNameRestriction(redirectFolderItem); var inboundRule = inboundRuleItem.ToInboundRule(siteNameRestriction); return inboundRule; }
internal OutboundRule CreateOutboundRuleFromOutboundRuleItem(OutboundRuleItem outboundRuleItem, RedirectFolderItem redirectFolderItem) { var outboundRule = outboundRuleItem.ToOutboundRule(); return outboundRule; }
internal InboundRule CreateInboundRuleFromSimpleRedirectItem(SimpleRedirectItem simpleRedirectItem, RedirectFolderItem redirectFolderItem) { var inboundRulePattern = string.Format("^{0}/?$", simpleRedirectItem.Path.Value); var siteNameRestriction = GetSiteNameRestriction(redirectFolderItem); var redirectTo = simpleRedirectItem.Target; string actionRewriteUrl; Guid? redirectItem; string redirectItemAnchor; GetRedirectUrlOrItemId(redirectTo, out actionRewriteUrl, out redirectItem, out redirectItemAnchor); Log.Debug(this, simpleRedirectItem.Database, "Creating Inbound Rule From Simple Redirect Item - {0} - id: {1} actionRewriteUrl: {2} redirectItem: {3}", simpleRedirectItem.Name, simpleRedirectItem.ID.Guid, actionRewriteUrl, redirectItem); var inboundRule = new InboundRule { Action = new Redirect { AppendQueryString = true, Name = "Redirect", StatusCode = RedirectStatusCode.Permanent, RewriteUrl = actionRewriteUrl, RewriteItemId = redirectItem, RewriteItemAnchor = redirectItemAnchor, StopProcessingOfSubsequentRules = false, HttpCacheability = HttpCacheability.NoCache }, SiteNameRestriction = siteNameRestriction, Enabled = simpleRedirectItem.BaseEnabledItem.Enabled.Checked, IgnoreCase = true, ItemId = simpleRedirectItem.ID.Guid, ConditionLogicalGrouping = LogicalGrouping.MatchAll, Name = simpleRedirectItem.Name, Pattern = inboundRulePattern, MatchType = MatchType.MatchesThePattern, Using = Using.RegularExpressions }; return inboundRule; }