private void processFileHighlighting(InputFile inputFile, SensorContext context) { File ioFile = inputFile.file(); File highlightingFile = new File(ioFile.getParentFile(), ioFile.getName() + HIGHLIGHTING_EXTENSION); if (highlightingFile.exists()) { LOG.debug("Processing " + highlightingFile.getAbsolutePath()); try { List<String> lines = FileUtils.readLines(highlightingFile, context.fileSystem().encoding().name()); int lineNumber = 0; NewHighlighting highlighting = context.newHighlighting() .onFile(inputFile); for (String line : lines) { lineNumber++; if (StringUtils.isBlank(line) || line.startsWith("#")) { continue; } processLine(highlightingFile, lineNumber, highlighting, line); } highlighting.save(); } catch (IOException e) { throw new IllegalStateException(e); } } }
@Override public void execute(SensorContext context) { Iterator<InputFile> inputFiles = context.fileSystem().inputFiles(context.fileSystem().predicates().all()).iterator(); if (!inputFiles.hasNext()) { throw new IllegalStateException("No files indexed"); } InputFile file = inputFiles.next(); context.newHighlighting() .onFile(file) .highlight(file.selectLine(1), TypeOfText.CONSTANT) .save(); context.newHighlighting() .onFile(file) .highlight(file.selectLine(file.lines()), TypeOfText.COMMENT) .save(); } }
@Test public void testHighlighting() { assertThat(tester.highlightingTypeAt("foo:src/Foo.java", 1, 3)).isEmpty(); tester.newHighlighting() .onFile(new TestInputFileBuilder("foo", "src/Foo.java").initMetadata("annot dsf fds foo bar").build()) .highlight(1, 0, 1, 5, TypeOfText.ANNOTATION) .highlight(8, 10, TypeOfText.CONSTANT) .highlight(9, 10, TypeOfText.COMMENT) .save(); assertThat(tester.highlightingTypeAt("foo:src/Foo.java", 1, 3)).containsExactly(TypeOfText.ANNOTATION); assertThat(tester.highlightingTypeAt("foo:src/Foo.java", 1, 9)).containsExactly(TypeOfText.CONSTANT, TypeOfText.COMMENT); }
@Test(expected = UnsupportedOperationException.class) public void duplicateHighlighting() { tester.newHighlighting() .onFile(new TestInputFileBuilder("foo", "src/Foo.java").initMetadata("annot dsf fds foo bar").build()) .highlight(1, 0, 1, 5, TypeOfText.ANNOTATION) .save(); tester.newHighlighting() .onFile(new TestInputFileBuilder("foo", "src/Foo.java").initMetadata("annot dsf fds foo bar").build()) .highlight(1, 0, 1, 5, TypeOfText.ANNOTATION) .save(); }
public PythonHighlighter(SensorContext context, InputFile inputFile) { docStringTokens = new HashSet<>(); newHighlighting = context.newHighlighting(); newHighlighting.onFile(inputFile); }
public PythonHighlighter(SensorContext context, InputFile inputFile) { docStringTokens = new HashSet<>(); newHighlighting = context.newHighlighting(); newHighlighting.onFile(inputFile); }
public PerlHighlighter(SensorContext context, InputFile inputFile) { newHighlighting = context.newHighlighting(); newHighlighting.onFile(inputFile); }
public HighlightingVisitor(SensorContext sensorContext, InputFile inputFile) { this.inputFile = inputFile; newHighlighting = sensorContext.newHighlighting() .onFile(inputFile); }
public PlSqlHighlighterVisitor(SensorContext context, InputFile inputFile) { highlighting = context.newHighlighting().onFile(inputFile); }
public NewHighlighting highlightableFor(File file) { Preconditions.checkNotNull(context); return context.newHighlighting().onFile(inputFromIOFile(file)); }
public NewHighlighting highlightableFor(File file) { Preconditions.checkNotNull(context); return context.newHighlighting().onFile(inputFromIOFile(file)); }
public NewHighlighting getSyntaxHighlighting(SensorContext context, InputFile inputFile) { NewHighlighting highlighting = context.newHighlighting().onFile(inputFile); SyntaxHighlighterVisitor.highlight(currentFileTree, highlighting); return highlighting; }
public NewHighlighting getSyntaxHighlighting(SensorContext context, InputFile inputFile) { NewHighlighting highlighting = context.newHighlighting().onFile(inputFile); SyntaxHighlighterVisitor.highlight(currentFileTree, highlighting); return highlighting; }
private static void saveHighlights(SensorContext sensorContext, SensorContextUtils.Highlight[] highlights, InputFile inputFile) { NewHighlighting highlighting = sensorContext.newHighlighting().onFile(inputFile); for (SensorContextUtils.Highlight highlight : highlights) { highlighting.highlight(highlight.startLine, highlight.startCol, highlight.endLine, highlight.endCol, TypeOfText.valueOf(highlight.textType.toUpperCase(Locale.ENGLISH))); } highlighting.save(); }
private void highlight(SensorContext context) { highlighting = context.newHighlighting().onFile(xmlFile.getInputFile()); xmlFile.getPrologElement().ifPresent(this::highlightProlog); children(xmlFile.getDocument()).forEach(this::highlightNode); highlighting.save(); }
@Override public void visitFile(Tree tree) { highlighting = sensorContext.newHighlighting().onFile(fileSystem.inputFile(fileSystem.predicates().is(getContext().getFile()))); }
@Override public void visitFile(Tree tree) { highlighting = sensorContext.newHighlighting().onFile(fileSystem.inputFile(fileSystem.predicates().is(getContext().getFile()))); }
/** * Saves the syntax highlighting for the analyzed code * * @param context the sensor context * @param sourceCode the YAML source code */ private static void saveSyntaxHighlighting(SensorContext context, YamlSourceCode sourceCode) throws IOException { List<HighlightingData> highlightingDataList = new YamlHighlighting(sourceCode).getHighlightingData(); NewHighlighting highlighting = context.newHighlighting().onFile(sourceCode.getYamlFile()); for (HighlightingData highlightingData : highlightingDataList) { highlightingData.highlight(highlighting); } highlighting.save(); }
@Override public void execute(final SensorContext context) { FileSystem fs = context.fileSystem(); for (InputFile f : fs.inputFiles(fs.predicates().all())) { BatchReportReader reader = new BatchReportReader(reportPublisher.getReportDir()); int batchId = resourceCache.get(f).batchId(); String language = f.language(); if (reader.hasSyntaxHighlighting(batchId) || language == null) { continue; } codeColorizers.toSyntaxHighlighting(f.file(), fs.encoding(), language, context.newHighlighting().onFile(f)); } }
private void highlight(String s) { DefaultInputFile inputFile = TestInputFileBuilder.create("moduleKey", file.getName()) .setLanguage("php") .setType(Type.MAIN) .initMetadata(s) .build(); fileSystem.add(inputFile); context = SensorContextTester.create(tempFolder.getRoot()); NewHighlighting highlighting = context.newHighlighting().onFile(inputFile); Tree tree = PARSER.parse(s); SyntaxHighlighterVisitor.highlight(tree, highlighting); highlighting.save(); }