DiagnosticFactory exposes severity

This commit is contained in:
Andrey Breslav
2013-09-20 18:34:23 +04:00
parent 97435a4266
commit 3d754dd788
7 changed files with 20 additions and 8 deletions
@@ -375,7 +375,9 @@ public class CheckerTestUtil {
public static class SyntaxErrorDiagnosticFactory extends DiagnosticFactory {
public static final SyntaxErrorDiagnosticFactory INSTANCE = new SyntaxErrorDiagnosticFactory();
private SyntaxErrorDiagnosticFactory() {}
private SyntaxErrorDiagnosticFactory() {
super(Severity.ERROR);
}
@NotNull
@Override
@@ -397,6 +399,7 @@ public class CheckerTestUtil {
private final String name;
private DebugInfoDiagnosticFactory(String name) {
super(Severity.ERROR);
this.name = name;
}
@@ -21,7 +21,12 @@ import org.jetbrains.annotations.NotNull;
public abstract class DiagnosticFactory {
private String name = null;
private final Severity severity;
protected DiagnosticFactory(@NotNull Severity severity) {
this.severity = severity;
}
/*package*/ void setName(@NotNull String name) {
this.name = name;
}
@@ -31,6 +36,11 @@ public abstract class DiagnosticFactory {
return name;
}
@NotNull
public Severity getSeverity() {
return severity;
}
@Override
public String toString() {
return getName();
@@ -35,6 +35,6 @@ public class DiagnosticFactory0<E extends PsiElement> extends DiagnosticFactoryW
@NotNull
public SimpleDiagnostic<E> on(@NotNull E element) {
return new SimpleDiagnostic<E>(element, this, severity);
return new SimpleDiagnostic<E>(element, this, getSeverity());
}
}
@@ -22,7 +22,7 @@ import org.jetbrains.annotations.NotNull;
public class DiagnosticFactory1<E extends PsiElement, A> extends DiagnosticFactoryWithPsiElement<E> {
@NotNull
public ParametrizedDiagnostic<E> on(@NotNull E element, @NotNull A argument) {
return new DiagnosticWithParameters1<E, A>(element, argument, this, severity);
return new DiagnosticWithParameters1<E, A>(element, argument, this, getSeverity());
}
protected DiagnosticFactory1(Severity severity, PositioningStrategy<? super E> positioningStrategy) {
@@ -23,7 +23,7 @@ public class DiagnosticFactory2<E extends PsiElement, A, B> extends DiagnosticFa
@NotNull
public ParametrizedDiagnostic<E> on(@NotNull E element, @NotNull A a, @NotNull B b) {
return new DiagnosticWithParameters2<E, A, B>(element, a, b, this, severity);
return new DiagnosticWithParameters2<E, A, B>(element, a, b, this, getSeverity());
}
private DiagnosticFactory2(Severity severity, PositioningStrategy<? super E> positioningStrategy) {
@@ -35,6 +35,6 @@ public class DiagnosticFactory3<E extends PsiElement, A, B, C> extends Diagnosti
@NotNull
public ParametrizedDiagnostic<E> on(@NotNull E element, @NotNull A a, @NotNull B b, @NotNull C c) {
return new DiagnosticWithParameters3<E, A, B, C>(element, a, b, c, this, severity);
return new DiagnosticWithParameters3<E, A, B, C>(element, a, b, c, this, getSeverity());
}
}
@@ -22,11 +22,10 @@ import com.intellij.psi.PsiElement;
import java.util.List;
public abstract class DiagnosticFactoryWithPsiElement<E extends PsiElement> extends DiagnosticFactory {
protected final Severity severity;
protected final PositioningStrategy<? super E> positioningStrategy;
public DiagnosticFactoryWithPsiElement(Severity severity, PositioningStrategy<? super E> positioningStrategy) {
this.severity = severity;
super(severity);
this.positioningStrategy = positioningStrategy;
}