diff options
author | 2017-09-04 12:20:56 +0200 | |
---|---|---|
committer | 2017-09-04 18:23:32 +0200 | |
commit | 9d8a5bd160b3c8c11e7198a95d4520b18ace7254 (patch) | |
tree | 5ba5c651f969cc6ac59adeff7f19a34959d9ee6f /src/main/java/com/google/devtools/build/lib/analysis/actions | |
parent | cdb8a63d3e01e396204c1a372cab49147886d100 (diff) |
Automated rollback of commit 8d6fc64b18c7e35b93f5c43dae1dbd2f8cae2147.
PiperOrigin-RevId: 167480127
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/actions')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/analysis/actions/LazyWritePathsFileAction.java | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/LazyWritePathsFileAction.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/LazyWritePathsFileAction.java deleted file mode 100644 index d349c6c02e..0000000000 --- a/src/main/java/com/google/devtools/build/lib/analysis/actions/LazyWritePathsFileAction.java +++ /dev/null @@ -1,91 +0,0 @@ -// 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.lib.analysis.actions; - -import static java.nio.charset.StandardCharsets.UTF_8; - -import com.google.common.collect.ImmutableSet; -import com.google.devtools.build.lib.actions.ActionExecutionContext; -import com.google.devtools.build.lib.actions.ActionOwner; -import com.google.devtools.build.lib.actions.Artifact; -import com.google.devtools.build.lib.collect.nestedset.NestedSet; -import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; -import com.google.devtools.build.lib.util.Fingerprint; -import java.io.IOException; -import java.io.OutputStream; - -/** - * Lazily writes the exec path of the given files separated by newline into a specified output file. - */ -public final class LazyWritePathsFileAction extends AbstractFileWriteAction { - private static final String GUID = "6be94d90-96f3-4bec-8104-1fb08abc2546"; - - private final NestedSet<Artifact> files; - private final boolean includeOnlyIfSource; - - public LazyWritePathsFileAction( - ActionOwner owner, Artifact output, NestedSet<Artifact> files, boolean includeOnlyIfSource) { - super(owner, Artifact.NO_ARTIFACTS, output, false); - this.files = NestedSetBuilder.fromNestedSet(files).build(); - this.includeOnlyIfSource = includeOnlyIfSource; - } - - public LazyWritePathsFileAction( - ActionOwner owner, Artifact output, - ImmutableSet<Artifact> files, - boolean includeOnlyIfSource) { - super(owner, Artifact.NO_ARTIFACTS, output, false); - this.files = NestedSetBuilder.<Artifact>stableOrder().addAll(files).build(); - this.includeOnlyIfSource = includeOnlyIfSource; - } - - @Override - public DeterministicWriter newDeterministicWriter(ActionExecutionContext ctx) { - return new DeterministicWriter() { - @Override - public void writeOutputFile(OutputStream out) throws IOException { - out.write(getContents().toString().getBytes(UTF_8)); - } - }; - } - - /** - * Computes the Action key for this action by computing the fingerprint for the file contents. - */ - @Override - protected String computeKey() { - Fingerprint f = new Fingerprint(); - f.addString(GUID); - f.addBoolean(includeOnlyIfSource); - f.addString(getContents()); - return f.hexDigestAndReset(); - } - - private String getContents() { - StringBuilder stringBuilder = new StringBuilder(); - for (Artifact file : files) { - if (includeOnlyIfSource) { - if (file.isSourceArtifact()) { - stringBuilder.append(file.getRootRelativePathString()); - stringBuilder.append("\n"); - } - } else { - stringBuilder.append(file.getRootRelativePathString()); - stringBuilder.append("\n"); - } - } - return stringBuilder.toString(); - } -}
\ No newline at end of file |