public void appendAdHocRule(ScannerReport.AdHocRule adHocRule) { File file = fileStructure.adHocRules(); try (OutputStream out = new BufferedOutputStream(new FileOutputStream(file, true))) { adHocRule.writeDelimitedTo(out); } catch (Exception e) { throw ContextException.of("Unable to write ad hoc rule", e).addContext("file", file); } }
public CloseableIterator<ScannerReport.AdHocRule> readAdHocRules() { File file = fileStructure.adHocRules(); if (!fileExists(file)) { return emptyCloseableIterator(); } return Protobuf.readStream(file, ScannerReport.AdHocRule.parser()); }
@Test public void write_adhoc_rule() { // write data ScannerReport.AdHocRule rule = ScannerReport.AdHocRule.newBuilder() .setEngineId("eslint") .setRuleId("123") .setName("Foo") .setDescription("Description") .setSeverity(Constants.Severity.BLOCKER) .setType(ScannerReport.IssueType.BUG) .build(); underTest.appendAdHocRule(rule); File file = underTest.getFileStructure().adHocRules(); assertThat(file).exists().isFile(); try (CloseableIterator<ScannerReport.AdHocRule> read = Protobuf.readStream(file, ScannerReport.AdHocRule.parser())) { assertThat(Iterators.size(read)).isEqualTo(1); } }
public void appendAdHocRule(ScannerReport.AdHocRule adHocRule) { File file = fileStructure.adHocRules(); try (OutputStream out = new BufferedOutputStream(new FileOutputStream(file, true))) { adHocRule.writeDelimitedTo(out); } catch (Exception e) { throw ContextException.of("Unable to write ad hoc rule", e).addContext("file", file); } }
public CloseableIterator<ScannerReport.AdHocRule> readAdHocRules() { File file = fileStructure.adHocRules(); if (!fileExists(file)) { return emptyCloseableIterator(); } return Protobuf.readStream(file, ScannerReport.AdHocRule.parser()); }