public class ExopackageInstallFinisher extends AbstractBuildRule
Constructor and Description |
---|
ExopackageInstallFinisher(BuildTarget installerTarget,
ProjectFilesystem projectFilesystem,
SourcePathRuleFinder sourcePathRuleFinder,
HasInstallableApk.ApkInfo apkInfo,
ExopackageDeviceDirectoryLister directoryLister,
com.google.common.collect.ImmutableList<BuildRule> extraDeps) |
Modifier and Type | Method and Description |
---|---|
SortedSet<BuildRule> |
getBuildDeps() |
com.google.common.collect.ImmutableList<? extends Step> |
getBuildSteps(BuildContext buildContext,
BuildableContext buildableContext) |
SourcePath |
getSourcePathToOutput() |
boolean |
isCacheable()
Whether this
BuildRule can be cached. |
equals, getBuildTarget, getDependencies, getProjectFilesystem, getSourcePathOutputs, getType, hasBuildSteps, hashCode, injectFields, toString, updateBuildRuleResolver
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
compareTo, getFullyQualifiedName, outputFileCanBeCopied, shouldRespectInputSizeLimitForRemoteExecution
public ExopackageInstallFinisher(BuildTarget installerTarget, ProjectFilesystem projectFilesystem, SourcePathRuleFinder sourcePathRuleFinder, HasInstallableApk.ApkInfo apkInfo, ExopackageDeviceDirectoryLister directoryLister, com.google.common.collect.ImmutableList<BuildRule> extraDeps)
public SortedSet<BuildRule> getBuildDeps()
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 com.google.common.collect.ImmutableList<? extends Step> getBuildSteps(BuildContext buildContext, BuildableContext buildableContext)
@Nullable public SourcePath getSourcePathToOutput()
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