public class DefaultWorkerToolRule extends WriteFile implements HasRuntimeDeps, InitializableFromDisk<UUID>, ProvidesWorkerTool
Modifier | Constructor and Description |
---|---|
protected |
DefaultWorkerToolRule(BuildTarget buildTarget,
ProjectFilesystem projectFilesystem,
SourcePathRuleFinder ruleFinder,
Tool tool,
int maxWorkers,
boolean isAsync,
boolean isPersistent) |
Modifier and Type | Method and Description |
---|---|
SortedSet<BuildRule> |
getBuildDeps() |
BuildOutputInitializer<UUID> |
getBuildOutputInitializer() |
java.util.stream.Stream<BuildTarget> |
getRuntimeDeps(BuildRuleResolver buildRuleResolver) |
WorkerTool |
getWorkerTool() |
UUID |
initializeFromDisk(SourcePathResolverAdapter pathResolver) |
boolean |
isCacheable()
Whether this
BuildRule can be cached. |
getBuildSteps, getFileContents, getSourcePathToOutput
equals, getBuildTarget, getDependencies, getProjectFilesystem, getSourcePathOutputs, getType, hasBuildSteps, hashCode, injectFields, toString, updateBuildRuleResolver
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
compareTo, getBuildSteps, getBuildTarget, getFullyQualifiedName, getProjectFilesystem, getSourcePathToOutput, hasBuildSteps, outputFileCanBeCopied, shouldRespectInputSizeLimitForRemoteExecution, toString, updateBuildRuleResolver
getDependencies, getSourcePathOutputs
getType
invalidateInitializeFromDiskState
protected DefaultWorkerToolRule(BuildTarget buildTarget, ProjectFilesystem projectFilesystem, SourcePathRuleFinder ruleFinder, Tool tool, int maxWorkers, boolean isAsync, boolean isPersistent)
public SortedSet<BuildRule> getBuildDeps()
getBuildDeps
in interface BuildRule
getBuildDeps
in class WriteFile
deps
argument for this build rule in the build file in which it was defined.
However, there are special cases where other arguments pull in implicit dependencies
(e.g., the keystore
argument in android_binary
). In these cases, the
implicit dependencies are also included in the set returned by this method. The value of
the original deps
argument, as defined in the build file, must be accessed via a
custom getter provided by the build rule.
public boolean isCacheable()
BuildRule
BuildRule
can be cached.
Uncached build rules are never written out to cache, never read from cache, and does not count in cache statistics. This rule is useful for artifacts which cannot be easily normalized.
Uncached rules are not always rebuilt, however, as long as the existing on-disk
representation is up to date. This means that these rules can take advantage of SupportsInputBasedRuleKey
to prevent rebuilding.
isCacheable
in interface BuildEngineAction
isCacheable
in interface BuildRule
isCacheable
in class AbstractBuildRule
public java.util.stream.Stream<BuildTarget> getRuntimeDeps(BuildRuleResolver buildRuleResolver)
getRuntimeDeps
in interface HasRuntimeDeps
public UUID initializeFromDisk(SourcePathResolverAdapter pathResolver)
initializeFromDisk
in interface InitializableFromDisk<UUID>
public BuildOutputInitializer<UUID> getBuildOutputInitializer()
getBuildOutputInitializer
in interface InitializableFromDisk<UUID>
public WorkerTool getWorkerTool()
getWorkerTool
in interface ProvidesWorkerTool