public class PreDexSplitDexGroup extends AbstractBuildRuleWithDeclaredAndExtraDeps implements InitializableFromDisk<com.facebook.buck.android.PreDexSplitDexGroup.BuildOutput>, SupportsInputBasedRuleKey
Separating this from PreDexSplitDexMerge and making it cacheable makes it possible to fetch a much smaller set of artifacts from cache when the predexed libraries are invalidated.
Modifier and Type | Field and Description |
---|---|
Collection<DexProducedFromJavaLibrary> |
preDexDeps |
Constructor and Description |
---|
PreDexSplitDexGroup(BuildTarget buildTarget,
ProjectFilesystem projectFilesystem,
BuildRuleParams params,
AndroidPlatformTarget androidPlatformTarget,
String dexTool,
com.facebook.buck.android.DexSplitMode dexSplitMode,
APKModuleGraph apkModuleGraph,
APKModule apkModule,
Collection<DexProducedFromJavaLibrary> preDexDeps,
com.google.common.util.concurrent.ListeningExecutorService dxExecutorService,
int xzCompressionLevel,
Optional<String> dxMaxHeapSize,
Optional<Integer> groupIndex) |
Modifier and Type | Method and Description |
---|---|
BuildOutputInitializer<com.facebook.buck.android.PreDexSplitDexGroup.BuildOutput> |
getBuildOutputInitializer() |
com.google.common.collect.ImmutableList<Step> |
getBuildSteps(BuildContext context,
BuildableContext buildableContext) |
List<DexWithClasses> |
getDexWithClasses() |
Optional<Integer> |
getGroupIndex() |
Path |
getMetadataTxtPath() |
Path |
getPrimaryDexInputHashesPath() |
com.facebook.buck.android.ImmutablePrimaryDexInputMetadata |
getPrimaryDexInputMetadata() |
Path |
getPrimaryDexRoot() |
com.google.common.collect.ImmutableList<String> |
getReferencedResources() |
Path |
getReferencedResourcesPath() |
SourcePath |
getSourcePathToOutput() |
com.facebook.buck.android.PreDexSplitDexGroup.BuildOutput |
initializeFromDisk(SourcePathResolverAdapter pathResolver) |
deprecatedGetExtraDeps, getBuildDeps, getDeclaredDeps, getTargetGraphOnlyDeps
equals, getBuildTarget, getDependencies, getProjectFilesystem, getSourcePathOutputs, getType, hasBuildSteps, hashCode, injectFields, isCacheable, toString, updateBuildRuleResolver
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
invalidateInitializeFromDiskState
inputBasedRuleKeyIsEnabled, isSupported
compareTo, getBuildDeps, getBuildTarget, getFullyQualifiedName, getProjectFilesystem, hasBuildSteps, isCacheable, outputFileCanBeCopied, shouldRespectInputSizeLimitForRemoteExecution, toString, updateBuildRuleResolver
getDependencies, getSourcePathOutputs
getType
public final Collection<DexProducedFromJavaLibrary> preDexDeps
public PreDexSplitDexGroup(BuildTarget buildTarget, ProjectFilesystem projectFilesystem, BuildRuleParams params, AndroidPlatformTarget androidPlatformTarget, String dexTool, com.facebook.buck.android.DexSplitMode dexSplitMode, APKModuleGraph apkModuleGraph, APKModule apkModule, Collection<DexProducedFromJavaLibrary> preDexDeps, com.google.common.util.concurrent.ListeningExecutorService dxExecutorService, int xzCompressionLevel, Optional<String> dxMaxHeapSize, Optional<Integer> groupIndex)
public List<DexWithClasses> getDexWithClasses()
public com.google.common.collect.ImmutableList<Step> getBuildSteps(BuildContext context, BuildableContext buildableContext)
getBuildSteps
in interface BuildRule
public com.google.common.collect.ImmutableList<String> getReferencedResources()
public Path getPrimaryDexRoot()
public Path getReferencedResourcesPath()
public Path getPrimaryDexInputHashesPath()
public Path getMetadataTxtPath()
@Nullable public SourcePath getSourcePathToOutput()
getSourcePathToOutput
in interface BuildRule
public com.facebook.buck.android.PreDexSplitDexGroup.BuildOutput initializeFromDisk(SourcePathResolverAdapter pathResolver) throws IOException
initializeFromDisk
in interface InitializableFromDisk<com.facebook.buck.android.PreDexSplitDexGroup.BuildOutput>
IOException
public BuildOutputInitializer<com.facebook.buck.android.PreDexSplitDexGroup.BuildOutput> getBuildOutputInitializer()
getBuildOutputInitializer
in interface InitializableFromDisk<com.facebook.buck.android.PreDexSplitDexGroup.BuildOutput>
public com.facebook.buck.android.ImmutablePrimaryDexInputMetadata getPrimaryDexInputMetadata()