Class StrategyPolicy.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessage.Builder<StrategyPolicy.Builder>
com.google.devtools.build.lib.runtime.proto.StrategyPolicy.Builder
All Implemented Interfaces:
StrategyPolicyOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cloneable
Enclosing class:
StrategyPolicy

public static final class StrategyPolicy.Builder extends com.google.protobuf.GeneratedMessage.Builder<StrategyPolicy.Builder> implements StrategyPolicyOrBuilder
 Provides control over what strategies (local, remote, etc) may be used.

 An empty policies (e.g. unset) implies no enforcement, anything is allowed.

 Policies are enforced against both user-provided values (flags) and
 application-internal defaults. The latter is useful for guarding against
 unexpectedly hard-coded defaults.

 Sample usage to allow everything to execute remotely, while only allowing
 genrules to execute locally:

 strategy_policy {
 mnemonic_policy {
 default_allowlist: ["remote"]
 strategy_allowlist: [
 { mnemonic: "Genrule" strategy: ["local"] }
 ]
 }
 }
 
Protobuf type blaze.strategy_policy.StrategyPolicy
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage.Builder<StrategyPolicy.Builder>
    • clear

      public StrategyPolicy.Builder clear()
      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessage.Builder<StrategyPolicy.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessage.Builder<StrategyPolicy.Builder>
    • getDefaultInstanceForType

      public StrategyPolicy getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      public StrategyPolicy build()
      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public StrategyPolicy buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • mergeFrom

      public StrategyPolicy.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<StrategyPolicy.Builder>
    • mergeFrom

      public StrategyPolicy.Builder mergeFrom(StrategyPolicy other)
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage.Builder<StrategyPolicy.Builder>
    • mergeFrom

      public StrategyPolicy.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<StrategyPolicy.Builder>
      Throws:
      IOException
    • hasMnemonicPolicy

      public boolean hasMnemonicPolicy()
       Controls per-mnemonic policies for regular spawn/action execution. Relevant
       command-line flags this controls include --strategy and --genrule_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy mnemonic_policy = 1;
      Specified by:
      hasMnemonicPolicy in interface StrategyPolicyOrBuilder
      Returns:
      Whether the mnemonicPolicy field is set.
    • getMnemonicPolicy

      public MnemonicPolicy getMnemonicPolicy()
       Controls per-mnemonic policies for regular spawn/action execution. Relevant
       command-line flags this controls include --strategy and --genrule_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy mnemonic_policy = 1;
      Specified by:
      getMnemonicPolicy in interface StrategyPolicyOrBuilder
      Returns:
      The mnemonicPolicy.
    • setMnemonicPolicy

      public StrategyPolicy.Builder setMnemonicPolicy(MnemonicPolicy value)
       Controls per-mnemonic policies for regular spawn/action execution. Relevant
       command-line flags this controls include --strategy and --genrule_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy mnemonic_policy = 1;
    • setMnemonicPolicy

      public StrategyPolicy.Builder setMnemonicPolicy(MnemonicPolicy.Builder builderForValue)
       Controls per-mnemonic policies for regular spawn/action execution. Relevant
       command-line flags this controls include --strategy and --genrule_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy mnemonic_policy = 1;
    • mergeMnemonicPolicy

      public StrategyPolicy.Builder mergeMnemonicPolicy(MnemonicPolicy value)
       Controls per-mnemonic policies for regular spawn/action execution. Relevant
       command-line flags this controls include --strategy and --genrule_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy mnemonic_policy = 1;
    • clearMnemonicPolicy

      public StrategyPolicy.Builder clearMnemonicPolicy()
       Controls per-mnemonic policies for regular spawn/action execution. Relevant
       command-line flags this controls include --strategy and --genrule_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy mnemonic_policy = 1;
    • getMnemonicPolicyBuilder

      public MnemonicPolicy.Builder getMnemonicPolicyBuilder()
       Controls per-mnemonic policies for regular spawn/action execution. Relevant
       command-line flags this controls include --strategy and --genrule_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy mnemonic_policy = 1;
    • getMnemonicPolicyOrBuilder

      public MnemonicPolicyOrBuilder getMnemonicPolicyOrBuilder()
       Controls per-mnemonic policies for regular spawn/action execution. Relevant
       command-line flags this controls include --strategy and --genrule_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy mnemonic_policy = 1;
      Specified by:
      getMnemonicPolicyOrBuilder in interface StrategyPolicyOrBuilder
    • hasDynamicRemotePolicy

      public boolean hasDynamicRemotePolicy()
       Controls per-mnemonic policies for the remote execution leg of dynamic
       execution. Relevant flag is --dynamic_remote_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_remote_policy = 2;
      Specified by:
      hasDynamicRemotePolicy in interface StrategyPolicyOrBuilder
      Returns:
      Whether the dynamicRemotePolicy field is set.
    • getDynamicRemotePolicy

      public MnemonicPolicy getDynamicRemotePolicy()
       Controls per-mnemonic policies for the remote execution leg of dynamic
       execution. Relevant flag is --dynamic_remote_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_remote_policy = 2;
      Specified by:
      getDynamicRemotePolicy in interface StrategyPolicyOrBuilder
      Returns:
      The dynamicRemotePolicy.
    • setDynamicRemotePolicy

      public StrategyPolicy.Builder setDynamicRemotePolicy(MnemonicPolicy value)
       Controls per-mnemonic policies for the remote execution leg of dynamic
       execution. Relevant flag is --dynamic_remote_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_remote_policy = 2;
    • setDynamicRemotePolicy

      public StrategyPolicy.Builder setDynamicRemotePolicy(MnemonicPolicy.Builder builderForValue)
       Controls per-mnemonic policies for the remote execution leg of dynamic
       execution. Relevant flag is --dynamic_remote_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_remote_policy = 2;
    • mergeDynamicRemotePolicy

      public StrategyPolicy.Builder mergeDynamicRemotePolicy(MnemonicPolicy value)
       Controls per-mnemonic policies for the remote execution leg of dynamic
       execution. Relevant flag is --dynamic_remote_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_remote_policy = 2;
    • clearDynamicRemotePolicy

      public StrategyPolicy.Builder clearDynamicRemotePolicy()
       Controls per-mnemonic policies for the remote execution leg of dynamic
       execution. Relevant flag is --dynamic_remote_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_remote_policy = 2;
    • getDynamicRemotePolicyBuilder

      public MnemonicPolicy.Builder getDynamicRemotePolicyBuilder()
       Controls per-mnemonic policies for the remote execution leg of dynamic
       execution. Relevant flag is --dynamic_remote_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_remote_policy = 2;
    • getDynamicRemotePolicyOrBuilder

      public MnemonicPolicyOrBuilder getDynamicRemotePolicyOrBuilder()
       Controls per-mnemonic policies for the remote execution leg of dynamic
       execution. Relevant flag is --dynamic_remote_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_remote_policy = 2;
      Specified by:
      getDynamicRemotePolicyOrBuilder in interface StrategyPolicyOrBuilder
    • hasDynamicLocalPolicy

      public boolean hasDynamicLocalPolicy()
       Controls per-mnemonic policies for the local execution leg of dynamic
       execution. Relevant flag is --dynamic_local_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_local_policy = 3;
      Specified by:
      hasDynamicLocalPolicy in interface StrategyPolicyOrBuilder
      Returns:
      Whether the dynamicLocalPolicy field is set.
    • getDynamicLocalPolicy

      public MnemonicPolicy getDynamicLocalPolicy()
       Controls per-mnemonic policies for the local execution leg of dynamic
       execution. Relevant flag is --dynamic_local_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_local_policy = 3;
      Specified by:
      getDynamicLocalPolicy in interface StrategyPolicyOrBuilder
      Returns:
      The dynamicLocalPolicy.
    • setDynamicLocalPolicy

      public StrategyPolicy.Builder setDynamicLocalPolicy(MnemonicPolicy value)
       Controls per-mnemonic policies for the local execution leg of dynamic
       execution. Relevant flag is --dynamic_local_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_local_policy = 3;
    • setDynamicLocalPolicy

      public StrategyPolicy.Builder setDynamicLocalPolicy(MnemonicPolicy.Builder builderForValue)
       Controls per-mnemonic policies for the local execution leg of dynamic
       execution. Relevant flag is --dynamic_local_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_local_policy = 3;
    • mergeDynamicLocalPolicy

      public StrategyPolicy.Builder mergeDynamicLocalPolicy(MnemonicPolicy value)
       Controls per-mnemonic policies for the local execution leg of dynamic
       execution. Relevant flag is --dynamic_local_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_local_policy = 3;
    • clearDynamicLocalPolicy

      public StrategyPolicy.Builder clearDynamicLocalPolicy()
       Controls per-mnemonic policies for the local execution leg of dynamic
       execution. Relevant flag is --dynamic_local_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_local_policy = 3;
    • getDynamicLocalPolicyBuilder

      public MnemonicPolicy.Builder getDynamicLocalPolicyBuilder()
       Controls per-mnemonic policies for the local execution leg of dynamic
       execution. Relevant flag is --dynamic_local_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_local_policy = 3;
    • getDynamicLocalPolicyOrBuilder

      public MnemonicPolicyOrBuilder getDynamicLocalPolicyOrBuilder()
       Controls per-mnemonic policies for the local execution leg of dynamic
       execution. Relevant flag is --dynamic_local_strategy.
       
      optional .blaze.strategy_policy.MnemonicPolicy dynamic_local_policy = 3;
      Specified by:
      getDynamicLocalPolicyOrBuilder in interface StrategyPolicyOrBuilder