Files
SQLLint/SQLLinter/Infrastructure/Rules/RuleViolations/RuleViolation.cs

50 lines
1.3 KiB
C#

using SQLLinter.Common;
namespace SQLLinter.Infrastructure.Rules.RuleViolations
{
public class RuleViolation : IRuleViolation
{
public RuleViolation(string fileName, string ruleName, string text, int startLine, int startColumn, RuleViolationSeverity severity)
{
FileName = fileName;
RuleName = ruleName;
Text = text;
Line = startLine;
Column = startColumn;
Severity = severity;
}
public RuleViolation(string fileName, string ruleName, int startLine, int startColumn)
{
FileName = fileName;
RuleName = ruleName;
Line = startLine;
Column = startColumn;
}
public RuleViolation(string ruleName, int startLine, int startColumn)
{
RuleName = ruleName;
Line = startLine;
Column = startColumn;
}
public int Column { get; set; }
public string FileName { get; set; }
public int Line { get; set; }
public string RuleName { get; set; }
public RuleViolationSeverity Severity { get; set; }
public string Text { get; set; }
public override string ToString()
{
return $@"{Severity.ToString().ToUpper()}: L{Line} C{Column} {FileName} ""{Text}""";
}
}
}