/// <summary> /// Gets the URL referenced by "String" with all translation URL filters. /// </summary> /// <param name="urlType"></param> /// <returns></returns> public NciUrl GetTranslationUrl(string urlType) { NciUrl nciTranslationUrl = new NciUrl(); string linkTypeKey = urlType.ToLower(); if (TranslationFilterDelegates.ContainsKey(linkTypeKey) == true) { UrlFilterDelegate translationFilterLinkDelegate = TranslationFilterDelegates[linkTypeKey]; translationFilterLinkDelegate(linkTypeKey, nciTranslationUrl); } return(nciTranslationUrl); }
/// <summary> /// Adds a translation URL filter which modifies the URL referenced by "string" when GetTranslationUrl is called. /// </summary> /// <param name="translationType">Pretty translation URL</param> /// <param name="fieldFilter"></param> public void AddTranslationFilter(string translationType, UrlFilterDelegate fieldFilter) { if (string.IsNullOrEmpty(translationType)) { throw new ArgumentException("The urlType parameter may not be null or empty."); } string linkTypeKey = translationType.ToLower(); if (TranslationFilterDelegates.ContainsKey(linkTypeKey) == false) { TranslationFilterDelegates.Add(linkTypeKey, fieldFilter); } else { TranslationFilterDelegates[linkTypeKey] += fieldFilter; } }