diff options
author | Ulf Adams <ulfjack@google.com> | 2017-01-09 12:26:28 +0000 |
---|---|---|
committer | Marcel Hlopko <hlopko@google.com> | 2017-01-09 13:22:26 +0000 |
commit | 692f57613b3b4c85b735c6ad71e44f66f82574db (patch) | |
tree | 60420c06b6c3a003a1fbf9b036903a0cdc77f0c7 /src/main/java/com/google/devtools/build/lib/actions/ExecutionInfoSpecifier.java | |
parent | f9f41c739dfc13f028259dbd24628eeec78bb043 (diff) |
Move ExecutionInfoSpecifier to lib.actions
We were previously jumping through hoops to avoid cyclic dependencies. It's
unclear why the class was here in the first place rather than in lib.actions.
--
PiperOrigin-RevId: 143948959
MOS_MIGRATED_REVID=143948959
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/actions/ExecutionInfoSpecifier.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/actions/ExecutionInfoSpecifier.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/actions/ExecutionInfoSpecifier.java b/src/main/java/com/google/devtools/build/lib/actions/ExecutionInfoSpecifier.java new file mode 100644 index 0000000000..e7038a0472 --- /dev/null +++ b/src/main/java/com/google/devtools/build/lib/actions/ExecutionInfoSpecifier.java @@ -0,0 +1,34 @@ +// 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; + +import java.util.Map; + +/** + * An action that specifies requirements for its execution. + */ +public interface ExecutionInfoSpecifier { + + /** + * Returns execution data for this action. This is used to signal hardware requirements to the + * execution (ex. "requires-darwin"). This is a workaround to allow execution on platforms other + * than that specified by the host configuration. The ability to choose seperate platforms by + * action can provide a performance advantage. + * + * <p>Restrictions are mapped to arbitrary values (typically "") so as to be consistent with + * {@link com.google.devtools.build.lib.actions.Spawn#getExecutionInfo()}. + */ + Map<String, String> getExecutionInfo(); +} |