com.google.devtools.build.buildjar.javac.BlazeJavacResult.java Source code

Java tutorial

Introduction

Here is the source code for com.google.devtools.build.buildjar.javac.BlazeJavacResult.java

Source

// Copyright 2017 The Bazel Authors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//    http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package com.google.devtools.build.buildjar.javac;

import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.ImmutableList;

/** The result of a single compilation performed by {@link BlazeJavacMain}. */
public class BlazeJavacResult {

    private final boolean ok;
    private final ImmutableList<FormattedDiagnostic> diagnostics;
    private final String output;
    private final BlazeJavaCompiler compiler;

    public static BlazeJavacResult ok() {
        return new BlazeJavacResult(true, ImmutableList.of(), "", null);
    }

    public static BlazeJavacResult error(String message) {
        return new BlazeJavacResult(false, ImmutableList.of(), message, null);
    }

    public BlazeJavacResult(boolean ok, ImmutableList<FormattedDiagnostic> diagnostics, String output,
            BlazeJavaCompiler compiler) {
        this.ok = ok;
        this.diagnostics = diagnostics;
        this.output = output;
        this.compiler = compiler;
    }

    public boolean isOk() {
        return ok;
    }

    public ImmutableList<FormattedDiagnostic> diagnostics() {
        return diagnostics;
    }

    public String output() {
        return output;
    }

    @VisibleForTesting
    public BlazeJavaCompiler compiler() {
        return compiler;
    }
}