public NRefactoryIssueProvider(ICSharpCode.NRefactory.CSharp.Refactoring.CodeIssueProvider issue, IssueDescriptionAttribute attr) { issueProvider = issue; this.attr = attr; providerIdString = issueProvider.GetType().FullName; Category = GettextCatalog.GetString(attr.Category ?? ""); Title = GettextCatalog.GetString(attr.Title ?? ""); Description = GettextCatalog.GetString(attr.Description ?? ""); DefaultSeverity = attr.Severity; SetMimeType("text/x-csharp"); subIssues = issueProvider.SubIssues.Select(subIssue => (BaseCodeIssueProvider) new BaseNRefactoryIssueProvider(this, subIssue)).ToList(); // Additional source of actions var actionProvider = attr.ActionProvider; if (actionProvider != null) { var actionAttr = actionProvider.GetCustomAttributes(typeof(ContextActionAttribute), false); if (actionAttr != null && actionAttr.Length == 1) { boundActionProvider = (ICSharpCode.NRefactory.CSharp.Refactoring.CodeActionProvider)Activator.CreateInstance(actionProvider); } } counter = InstrumentationService.CreateTimerCounter(IdString, "CodeIssueProvider run times"); }
public NRefactoryIssueProvider (ICSharpCode.NRefactory.CSharp.Refactoring.CodeIssueProvider issue, IssueDescriptionAttribute attr) { issueProvider = issue; this.attr = attr; providerIdString = issueProvider.GetType ().FullName; Category = GettextCatalog.GetString (attr.Category ?? ""); Title = GettextCatalog.GetString (attr.Title ?? ""); Description = GettextCatalog.GetString (attr.Description ?? ""); DefaultSeverity = attr.Severity; IsEnabledByDefault = attr.IsEnabledByDefault; SetMimeType ("text/x-csharp"); subIssues = issueProvider.SubIssues.Select (subIssue => (BaseCodeIssueProvider)new BaseNRefactoryIssueProvider (this, subIssue)).ToList (); // Additional source of actions var actionProvider = attr.ActionProvider; if (actionProvider != null) { var actionAttr = actionProvider.GetCustomAttributes (typeof(ContextActionAttribute), false); if (actionAttr != null && actionAttr.Length == 1) boundActionProvider = (ICSharpCode.NRefactory.CSharp.Refactoring.CodeActionProvider)Activator.CreateInstance (actionProvider); } counter = InstrumentationService.CreateTimerCounter (IdString, "CodeIssueProvider run times"); }