Example usage for org.apache.commons.io FileUtils openInputStream

List of usage examples for org.apache.commons.io FileUtils openInputStream

Introduction

In this page you can find the example usage for org.apache.commons.io FileUtils openInputStream.

Prototype

public static FileInputStream openInputStream(File file) throws IOException 

Source Link

Document

Opens a FileInputStream for the specified file, providing better error messages than simply calling new FileInputStream(file).

Usage

From source file:org.sonar.batch.mediumtest.TaskResult.java

public BatchReport.Test testExecutionFor(InputFile testFile, String testName) {
    int ref = reportComponents.get(((DefaultInputFile) testFile).key()).getRef();
    try (InputStream inputStream = FileUtils.openInputStream(getReportReader().readTests(ref))) {
        BatchReport.Test test = BatchReport.Test.PARSER.parseDelimitedFrom(inputStream);
        while (test != null) {
            if (test.getName().equals(testName)) {
                return test;
            }/*  w  w w.j a v a 2s  . co m*/
            test = BatchReport.Test.PARSER.parseDelimitedFrom(inputStream);
        }
    } catch (Exception e) {
        throw new IllegalStateException(e);
    }
    return null;
}

From source file:org.sonar.batch.mediumtest.TaskResult.java

public BatchReport.CoverageDetail coveragePerTestFor(InputFile testFile, String testName) {
    int ref = reportComponents.get(((DefaultInputFile) testFile).key()).getRef();
    try (InputStream inputStream = FileUtils.openInputStream(getReportReader().readCoverageDetails(ref))) {
        BatchReport.CoverageDetail details = BatchReport.CoverageDetail.PARSER.parseDelimitedFrom(inputStream);
        while (details != null) {
            if (details.getTestName().equals(testName)) {
                return details;
            }/*from  w  ww  .jav  a2 s.  c o m*/
            details = BatchReport.CoverageDetail.PARSER.parseDelimitedFrom(inputStream);
        }
    } catch (Exception e) {
        throw new IllegalStateException(e);
    }
    return null;
}

From source file:org.sonar.batch.protocol.output.BatchReportReaderTest.java

@Test
public void read_tests() throws Exception {
    BatchReportWriter writer = new BatchReportWriter(dir);
    writer.writeTests(1, asList(BatchReport.Test.newBuilder().setDurationInMs(60_000)
            .setStacktrace("stacktrace").setMsg("message").setStatus(Constants.TestStatus.OK).build()));

    try (InputStream inputStream = FileUtils.openInputStream(underTest.readTests(1))) {
        BatchReport.Test testResult = BatchReport.Test.PARSER.parseDelimitedFrom(inputStream);
        assertThat(testResult.getDurationInMs()).isEqualTo(60_000);
        assertThat(testResult.getStacktrace()).isEqualTo("stacktrace");
        assertThat(testResult.getMsg()).isEqualTo("message");
        assertThat(testResult.getStatus()).isEqualTo(Constants.TestStatus.OK);
    }// ww  w.  jav  a  2 s  .c om
}

From source file:org.sonar.batch.protocol.output.BatchReportReaderTest.java

@Test
public void read_coverage_details() throws Exception {
    BatchReportWriter writer = new BatchReportWriter(dir);
    writer.writeCoverageDetails(1,// w w  w .  java2s .c  om
            asList(BatchReport.CoverageDetail.newBuilder().setTestName("test-name")
                    .addCoveredFile(BatchReport.CoverageDetail.CoveredFile.newBuilder()
                            .addAllCoveredLine(asList(1, 2, 3, 5, 7)).setFileRef(2))
                    .build()));

    try (InputStream inputStream = FileUtils.openInputStream(underTest.readCoverageDetails(1))) {
        BatchReport.CoverageDetail coverageDetail = BatchReport.CoverageDetail.PARSER
                .parseDelimitedFrom(inputStream);
        assertThat(coverageDetail.getTestName()).isEqualTo("test-name");
        assertThat(coverageDetail.getCoveredFile(0).getFileRef()).isEqualTo(2);
        assertThat(coverageDetail.getCoveredFile(0).getCoveredLineList()).containsExactly(1, 2, 3, 5, 7);
    }
}

From source file:org.sonar.batch.protocol.output.BatchReportReaderTest.java

@Test
public void read_file_source() throws Exception {
    BatchReportWriter writer = new BatchReportWriter(dir);
    try (FileOutputStream outputStream = new FileOutputStream(writer.getSourceFile(1))) {
        IOUtils.write("line1\nline2", outputStream);
    }/*w w  w  . j  a  v  a2s.  c o m*/

    try (InputStream inputStream = FileUtils.openInputStream(underTest.readFileSource(1))) {
        assertThat(IOUtils.readLines(inputStream)).containsOnly("line1", "line2");
    }
}

From source file:org.sonar.batch.report.CoveragePublisherTest.java

@Test
public void publishCoverage() throws Exception {

    Measure utLineHits = new Measure<>(CoreMetrics.COVERAGE_LINE_HITS_DATA).setData("2=1;3=1;5=0;6=3");
    when(measureCache.byMetric("foo:src/Foo.php", CoreMetrics.COVERAGE_LINE_HITS_DATA_KEY))
            .thenReturn(Arrays.asList(utLineHits));

    Measure conditionsByLine = new Measure<>(CoreMetrics.CONDITIONS_BY_LINE).setData("3=4");
    when(measureCache.byMetric("foo:src/Foo.php", CoreMetrics.CONDITIONS_BY_LINE_KEY))
            .thenReturn(Arrays.asList(conditionsByLine));

    Measure coveredConditionsByUts = new Measure<>(CoreMetrics.COVERED_CONDITIONS_BY_LINE).setData("3=2");
    when(measureCache.byMetric("foo:src/Foo.php", CoreMetrics.COVERED_CONDITIONS_BY_LINE_KEY))
            .thenReturn(Arrays.asList(coveredConditionsByUts));

    Measure itLineHits = new Measure<>(CoreMetrics.IT_COVERAGE_LINE_HITS_DATA).setData("2=0;3=0;5=1");
    when(measureCache.byMetric("foo:src/Foo.php", CoreMetrics.IT_COVERAGE_LINE_HITS_DATA_KEY))
            .thenReturn(Arrays.asList(itLineHits));

    Measure coveredConditionsByIts = new Measure<>(CoreMetrics.IT_COVERED_CONDITIONS_BY_LINE).setData("3=1");
    when(measureCache.byMetric("foo:src/Foo.php", CoreMetrics.IT_COVERED_CONDITIONS_BY_LINE_KEY))
            .thenReturn(Arrays.asList(coveredConditionsByIts));

    Measure overallCoveredConditions = new Measure<>(CoreMetrics.OVERALL_COVERED_CONDITIONS_BY_LINE)
            .setData("3=2");
    when(measureCache.byMetric("foo:src/Foo.php", CoreMetrics.OVERALL_COVERED_CONDITIONS_BY_LINE_KEY))
            .thenReturn(Arrays.asList(overallCoveredConditions));

    File outputDir = temp.newFolder();
    BatchReportWriter writer = new BatchReportWriter(outputDir);

    publisher.publish(writer);/*from  ww  w .j a va2 s .  c  om*/

    try (InputStream inputStream = FileUtils
            .openInputStream(new BatchReportReader(outputDir).readComponentCoverage(2))) {
        assertThat(BatchReport.Coverage.PARSER.parseDelimitedFrom(inputStream))
                .isEqualTo(Coverage.newBuilder().setLine(2).setUtHits(true).setItHits(false).build());
        assertThat(BatchReport.Coverage.PARSER.parseDelimitedFrom(inputStream)).isEqualTo(Coverage.newBuilder()
                .setLine(3).setUtHits(true).setItHits(false).setConditions(4).setUtCoveredConditions(2)
                .setItCoveredConditions(1).setOverallCoveredConditions(2).build());
        assertThat(BatchReport.Coverage.PARSER.parseDelimitedFrom(inputStream))
                .isEqualTo(Coverage.newBuilder().setLine(5).setUtHits(false).setItHits(true).build());

    }
}

From source file:org.sonar.core.config.ConfigurationUtils.java

public static Properties openProperties(File file) throws IOException {
    FileInputStream input = FileUtils.openInputStream(file);
    return readInputStream(input);
}

From source file:org.sonar.core.config.Logback.java

public static void configure(File logbackFile, Map<String, String> substitutionVariables) {
    try {// w  w  w .  j av  a2 s .  co  m
        FileInputStream input = FileUtils.openInputStream(logbackFile);
        configure(input, substitutionVariables);
    } catch (IOException e) {
        throw new IllegalArgumentException("Fail to load the Logback configuration: " + logbackFile, e);
    }
}

From source file:org.sonar.core.persistence.AbstractDaoTestCase.java

private void loadOrchestratorSettings(Settings settings) throws URISyntaxException, IOException {
    String url = settings.getString("orchestrator.configUrl");
    URI uri = new URI(url);
    InputStream input = null;//from  www .  ja v a 2 s  .  c om
    try {
        if (url.startsWith("file:")) {
            File file = new File(uri);
            input = FileUtils.openInputStream(file);
        } else {
            HttpURLConnection connection = (HttpURLConnection) uri.toURL().openConnection();
            int responseCode = connection.getResponseCode();
            if (responseCode >= 400) {
                throw new IllegalStateException("Fail to request: " + uri + ". Status code=" + responseCode);
            }

            input = connection.getInputStream();

        }
        Properties props = new Properties();
        props.load(input);
        settings.addProperties(props);
        for (Map.Entry<String, String> entry : settings.getProperties().entrySet()) {
            String interpolatedValue = StrSubstitutor.replace(entry.getValue(), System.getenv(), "${", "}");
            settings.setProperty(entry.getKey(), interpolatedValue);
        }
    } finally {
        IOUtils.closeQuietly(input);
    }
}

From source file:org.sonar.db.CoreTestDb.java

private void loadOrchestratorSettings(Settings settings) {
    String url = settings.getString("orchestrator.configUrl");
    InputStream input = null;/*from   www  .j a v a  2s.  c  o m*/
    try {
        URI uri = new URI(url);
        if (url.startsWith("file:")) {
            File file = new File(uri);
            input = FileUtils.openInputStream(file);
        } else {
            HttpURLConnection connection = (HttpURLConnection) uri.toURL().openConnection();
            int responseCode = connection.getResponseCode();
            if (responseCode >= 400) {
                throw new IllegalStateException("Fail to request: " + uri + ". Status code=" + responseCode);
            }

            input = connection.getInputStream();

        }
        Properties props = new Properties();
        props.load(input);
        settings.addProperties(props);
        for (Map.Entry<String, String> entry : settings.getProperties().entrySet()) {
            String interpolatedValue = StrSubstitutor.replace(entry.getValue(), System.getenv(), "${", "}");
            settings.setProperty(entry.getKey(), interpolatedValue);
        }
    } catch (Exception e) {
        throw new IllegalStateException(e);
    } finally {
        IOUtils.closeQuietly(input);
    }
}