@Override public List<ErrorDescription> run(CompilationInfo info, TreePath treePath) { Tree t = treePath.getLeaf(); JTextComponent editor = EditorRegistry.lastFocusedComponent(); Document doc = editor.getDocument(); SourcePositions sp = info.getTrees().getSourcePositions(); int start = (int) sp.getStartPosition(info.getCompilationUnit(), t); int end = (int) sp.getEndPosition(info.getCompilationUnit(), t); int endLine = info.getText().indexOf("\n", start); String line = info.getText().substring(start, endLine).trim(); if (!Suppression.isSuppressed(line)) { return Collections.<ErrorDescription>singletonList( ErrorDescriptionFactory.createErrorDescription( Severity.HINT, ERROR_DESCRIPTION, createFixes(doc, start, endLine), info.getFileObject(), start, end)); } else { return null; } }
protected List<Fix> createFixes(Document doc, int start, int end) { return Collections.<Fix>singletonList( new SuppressI18nHintFix(doc, end, " " + Suppression.getSuppressorComment())); }