From 5b99e50da3e57ffe8ab14e453f28e590a299255f Mon Sep 17 00:00:00 2001 From: ulfjack Date: Thu, 20 Jul 2017 22:22:36 +0200 Subject: Move ActionInputPrefetcher to the actions package The plan is to add it to ActionExecutionContext, which is also there. PiperOrigin-RevId: 162656835 --- .../build/lib/actions/ActionInputPrefetcher.java | 32 ++++++++++++++++++++ .../build/lib/buildtool/ExecutionTool.java | 2 +- .../build/lib/exec/ActionContextProvider.java | 3 +- .../build/lib/exec/ActionInputPrefetcher.java | 34 ---------------------- .../devtools/build/lib/exec/ExecutorBuilder.java | 1 + .../lib/remote/RemoteActionContextProvider.java | 2 +- .../build/lib/remote/RemoteSpawnStrategy.java | 2 +- .../build/lib/sandbox/SandboxStrategy.java | 2 +- .../StandaloneActionContextProvider.java | 2 +- .../lib/standalone/StandaloneSpawnStrategy.java | 2 +- 10 files changed, 41 insertions(+), 41 deletions(-) create mode 100644 src/main/java/com/google/devtools/build/lib/actions/ActionInputPrefetcher.java delete mode 100644 src/main/java/com/google/devtools/build/lib/exec/ActionInputPrefetcher.java (limited to 'src/main/java/com/google') diff --git a/src/main/java/com/google/devtools/build/lib/actions/ActionInputPrefetcher.java b/src/main/java/com/google/devtools/build/lib/actions/ActionInputPrefetcher.java new file mode 100644 index 0000000000..92c6325c21 --- /dev/null +++ b/src/main/java/com/google/devtools/build/lib/actions/ActionInputPrefetcher.java @@ -0,0 +1,32 @@ +// Copyright 2016 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.actions; + +/** Prefetches files to local disk. */ +public interface ActionInputPrefetcher { + public static final ActionInputPrefetcher NONE = + new ActionInputPrefetcher() { + @Override + public void prefetchFiles(Iterable input) { + // Do nothing. + } + }; + + /** + * Initiates best-effort prefetching of all given inputs. This should not block. + * + *

For any path not under this prefetcher's control, the call should be a no-op. + */ + void prefetchFiles(Iterable input); +} diff --git a/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java b/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java index 8c01bd040d..bd44d70446 100644 --- a/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java +++ b/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java @@ -35,6 +35,7 @@ import com.google.devtools.build.lib.actions.ActionContext; import com.google.devtools.build.lib.actions.ActionContextMarker; import com.google.devtools.build.lib.actions.ActionGraph; import com.google.devtools.build.lib.actions.ActionInputFileCache; +import com.google.devtools.build.lib.actions.ActionInputPrefetcher; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.actions.ArtifactFactory; import com.google.devtools.build.lib.actions.BuildFailedException; @@ -65,7 +66,6 @@ import com.google.devtools.build.lib.events.EventKind; import com.google.devtools.build.lib.events.Reporter; import com.google.devtools.build.lib.exec.ActionContextConsumer; import com.google.devtools.build.lib.exec.ActionContextProvider; -import com.google.devtools.build.lib.exec.ActionInputPrefetcher; import com.google.devtools.build.lib.exec.BlazeExecutor; import com.google.devtools.build.lib.exec.CheckUpToDateFilter; import com.google.devtools.build.lib.exec.ExecutionOptions; diff --git a/src/main/java/com/google/devtools/build/lib/exec/ActionContextProvider.java b/src/main/java/com/google/devtools/build/lib/exec/ActionContextProvider.java index eb3f744cce..27e147b701 100644 --- a/src/main/java/com/google/devtools/build/lib/exec/ActionContextProvider.java +++ b/src/main/java/com/google/devtools/build/lib/exec/ActionContextProvider.java @@ -16,6 +16,7 @@ package com.google.devtools.build.lib.exec; import com.google.devtools.build.lib.actions.ActionContext; import com.google.devtools.build.lib.actions.ActionGraph; import com.google.devtools.build.lib.actions.ActionInputFileCache; +import com.google.devtools.build.lib.actions.ActionInputPrefetcher; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.actions.ExecutorInitException; @@ -36,7 +37,7 @@ public abstract class ActionContextProvider { /** * Two-phase initialization. The input file cache and the input prefetcher usually come from a * different module than the {@link ActionContextProvider} instances that require them, so this - * method is called after {@link BlazeModule#executorInit}. + * method is called after {@link com.google.devtools.build.lib.runtime.BlazeModule#executorInit}. * * @param actionInputFileCache the input file cache * @param actionInputPrefetcher the input file prefetcher diff --git a/src/main/java/com/google/devtools/build/lib/exec/ActionInputPrefetcher.java b/src/main/java/com/google/devtools/build/lib/exec/ActionInputPrefetcher.java deleted file mode 100644 index 1178544fb0..0000000000 --- a/src/main/java/com/google/devtools/build/lib/exec/ActionInputPrefetcher.java +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright 2016 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.exec; - -import com.google.devtools.build.lib.actions.ActionInput; - -/** Prefetches files to local disk. */ -public interface ActionInputPrefetcher { - public static final ActionInputPrefetcher NONE = - new ActionInputPrefetcher() { - @Override - public void prefetchFiles(Iterable input) { - // Do nothing. - } - }; - - /** - * Initiates best-effort prefetching of all given inputs. This should not block. - * - *

For any path not under this prefetcher's control, the call should be a no-op. - */ - void prefetchFiles(Iterable input); -} diff --git a/src/main/java/com/google/devtools/build/lib/exec/ExecutorBuilder.java b/src/main/java/com/google/devtools/build/lib/exec/ExecutorBuilder.java index b849384c97..77aede0b89 100644 --- a/src/main/java/com/google/devtools/build/lib/exec/ExecutorBuilder.java +++ b/src/main/java/com/google/devtools/build/lib/exec/ExecutorBuilder.java @@ -16,6 +16,7 @@ package com.google.devtools.build.lib.exec; import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.actions.ActionContext; import com.google.devtools.build.lib.actions.ActionInputFileCache; +import com.google.devtools.build.lib.actions.ActionInputPrefetcher; import com.google.devtools.build.lib.actions.Executor; import com.google.devtools.build.lib.util.Preconditions; import java.util.ArrayList; diff --git a/src/main/java/com/google/devtools/build/lib/remote/RemoteActionContextProvider.java b/src/main/java/com/google/devtools/build/lib/remote/RemoteActionContextProvider.java index c9e0655c71..d48cd8c0d6 100644 --- a/src/main/java/com/google/devtools/build/lib/remote/RemoteActionContextProvider.java +++ b/src/main/java/com/google/devtools/build/lib/remote/RemoteActionContextProvider.java @@ -18,9 +18,9 @@ import static com.google.common.base.Preconditions.checkNotNull; import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.actions.ActionContext; import com.google.devtools.build.lib.actions.ActionInputFileCache; +import com.google.devtools.build.lib.actions.ActionInputPrefetcher; import com.google.devtools.build.lib.actions.ResourceManager; import com.google.devtools.build.lib.exec.ActionContextProvider; -import com.google.devtools.build.lib.exec.ActionInputPrefetcher; import com.google.devtools.build.lib.exec.ExecutionOptions; import com.google.devtools.build.lib.exec.SpawnRunner; import com.google.devtools.build.lib.exec.apple.XCodeLocalEnvProvider; diff --git a/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnStrategy.java index 7af46aebcd..aa870a75cf 100644 --- a/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnStrategy.java +++ b/src/main/java/com/google/devtools/build/lib/remote/RemoteSpawnStrategy.java @@ -18,6 +18,7 @@ import com.google.common.eventbus.EventBus; import com.google.devtools.build.lib.actions.ActionExecutionContext; import com.google.devtools.build.lib.actions.ActionInput; import com.google.devtools.build.lib.actions.ActionInputFileCache; +import com.google.devtools.build.lib.actions.ActionInputPrefetcher; import com.google.devtools.build.lib.actions.ActionStatusMessage; import com.google.devtools.build.lib.actions.Artifact.ArtifactExpander; import com.google.devtools.build.lib.actions.EnvironmentalExecException; @@ -27,7 +28,6 @@ import com.google.devtools.build.lib.actions.Spawn; import com.google.devtools.build.lib.actions.SpawnActionContext; import com.google.devtools.build.lib.actions.Spawns; import com.google.devtools.build.lib.events.Event; -import com.google.devtools.build.lib.exec.ActionInputPrefetcher; import com.google.devtools.build.lib.exec.SpawnExecException; import com.google.devtools.build.lib.exec.SpawnInputExpander; import com.google.devtools.build.lib.exec.SpawnResult; diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxStrategy.java index bea49b7cbd..e64a795f03 100644 --- a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxStrategy.java +++ b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxStrategy.java @@ -18,6 +18,7 @@ import com.google.common.eventbus.EventBus; import com.google.devtools.build.lib.actions.ActionExecutionContext; import com.google.devtools.build.lib.actions.ActionInput; import com.google.devtools.build.lib.actions.ActionInputFileCache; +import com.google.devtools.build.lib.actions.ActionInputPrefetcher; import com.google.devtools.build.lib.actions.ActionStatusMessage; import com.google.devtools.build.lib.actions.Artifact.ArtifactExpander; import com.google.devtools.build.lib.actions.ExecException; @@ -25,7 +26,6 @@ import com.google.devtools.build.lib.actions.SandboxedSpawnActionContext; import com.google.devtools.build.lib.actions.Spawn; import com.google.devtools.build.lib.actions.SpawnActionContext; import com.google.devtools.build.lib.actions.Spawns; -import com.google.devtools.build.lib.exec.ActionInputPrefetcher; import com.google.devtools.build.lib.exec.SpawnExecException; import com.google.devtools.build.lib.exec.SpawnInputExpander; import com.google.devtools.build.lib.exec.SpawnResult; diff --git a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneActionContextProvider.java b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneActionContextProvider.java index 0050c2c4e9..9300b5f9b7 100644 --- a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneActionContextProvider.java +++ b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneActionContextProvider.java @@ -19,12 +19,12 @@ import com.google.devtools.build.lib.actions.Action; import com.google.devtools.build.lib.actions.ActionContext; import com.google.devtools.build.lib.actions.ActionExecutionContext; import com.google.devtools.build.lib.actions.ActionInputFileCache; +import com.google.devtools.build.lib.actions.ActionInputPrefetcher; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.actions.ArtifactResolver; import com.google.devtools.build.lib.actions.ExecutionStrategy; import com.google.devtools.build.lib.actions.ResourceManager; import com.google.devtools.build.lib.exec.ActionContextProvider; -import com.google.devtools.build.lib.exec.ActionInputPrefetcher; import com.google.devtools.build.lib.exec.ExecutionOptions; import com.google.devtools.build.lib.exec.FileWriteStrategy; import com.google.devtools.build.lib.exec.StandaloneTestStrategy; diff --git a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java index a32e99c9ae..82794d14a4 100644 --- a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java +++ b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java @@ -17,6 +17,7 @@ import com.google.common.eventbus.EventBus; import com.google.devtools.build.lib.actions.ActionExecutionContext; import com.google.devtools.build.lib.actions.ActionInput; import com.google.devtools.build.lib.actions.ActionInputFileCache; +import com.google.devtools.build.lib.actions.ActionInputPrefetcher; import com.google.devtools.build.lib.actions.ActionStatusMessage; import com.google.devtools.build.lib.actions.Artifact.ArtifactExpander; import com.google.devtools.build.lib.actions.ExecException; @@ -26,7 +27,6 @@ import com.google.devtools.build.lib.actions.Spawn; import com.google.devtools.build.lib.actions.SpawnActionContext; import com.google.devtools.build.lib.actions.Spawns; import com.google.devtools.build.lib.actions.UserExecException; -import com.google.devtools.build.lib.exec.ActionInputPrefetcher; import com.google.devtools.build.lib.exec.SpawnExecException; import com.google.devtools.build.lib.exec.SpawnInputExpander; import com.google.devtools.build.lib.exec.SpawnResult; -- cgit v1.2.3