private static string GetDescriptionText(IRuleInfo ruleInfo) { var stringBuilder = new StringBuilder(ruleInfo.Description); if (ruleInfo.HelpUrl != null) { stringBuilder.AppendLine(LINE_BREAK); stringBuilder.AppendLine(GetLinkFormat(ruleInfo)); } else { stringBuilder.AppendLine(EMPTY_LINE); stringBuilder.AppendFormat("For reference, rule ID is {0}", ruleInfo.Id); } return stringBuilder.ToString(); }
private static string GetDescriptionText(IRuleInfo ruleInfo) { var stringBuilder = new StringBuilder(ruleInfo.Description); if (ruleInfo.HelpUrl != null) { stringBuilder.AppendLine(LINE_BREAK); stringBuilder.AppendLine(GetLinkFormat(ruleInfo)); } else { stringBuilder.AppendLine(EMPTY_LINE); stringBuilder.AppendFormat("For reference, rule ID is {0}", ruleInfo.Id); } return(stringBuilder.ToString()); }
private static string GetLinkFormat(IRuleInfo ruleInfo) { string url; if (ruleInfo is CustomRuleInfo) { url = ((CustomRuleInfo) ruleInfo).HelpUrlAsString; url = url ?? string.Empty; } else { url = ruleInfo.HelpUrl == null ? string.Empty : ruleInfo.HelpUrl.ToString(); } string linkContent = url; if (myArgumentsParser.IsMicrosoft) { linkContent = string.Format(MSDN_LINK_CONTENT, ruleInfo.Id); } return string.Format(A_HREF_FORMAT, url, linkContent); }
/// <summary> /// Зарегистрировать правило. /// </summary> /// <typeparam name="T">Тип правила.</typeparam> /// <param name="ruleInfo">Инфо правила.</param> public void Register <T>(IRuleInfo ruleInfo) where T : AbstractRule { if (this.RuleTypes.ContainsKey(ruleInfo)) { throw new ArgumentException("Rule with current info is already registered.", nameof(ruleInfo)); } if (this.RuleTypes.Any(pair => pair.Key.Name == ruleInfo.Name)) { throw new ArgumentException("Rule with current name is already registered.", nameof(ruleInfo)); } if (this.RuleTypes.ContainsValue(typeof(T))) { throw new Exception("Current rule is already registered with other info."); } this.RuleTypes.Add(ruleInfo, typeof(T)); }
private static string GetLinkFormat(IRuleInfo ruleInfo) { string url; if (ruleInfo is CustomRuleInfo) { url = ((CustomRuleInfo)ruleInfo).HelpUrlAsString; url = url ?? string.Empty; } else { url = ruleInfo.HelpUrl == null ? string.Empty : ruleInfo.HelpUrl.ToString(); } string linkContent = url; if (myArgumentsParser.IsMicrosoft) { linkContent = string.Format(MSDN_LINK_CONTENT, ruleInfo.Id); } return(string.Format(A_HREF_FORMAT, url, linkContent)); }
private static string GetHumanReadableName(IRuleInfo ruleInfo) { return ruleInfo is CustomRuleInfo ? ((CustomRuleInfo) ruleInfo).HumanReadableName : ruleInfo.Name; }
private static string GetHumanReadableName(IRuleInfo ruleInfo) { return(ruleInfo is CustomRuleInfo ? ((CustomRuleInfo)ruleInfo).HumanReadableName : ruleInfo.Name); }