public class HashInputJarsToDexStep extends AbstractExecutionStep implements SmartDexingStep.DexInputHashesProvider
SmartDexingStep
. It goes through
each dex input, looks at the classes that went into that jar, and uses the class hashes collected
in AndroidPackageableCollection
to calculate the final hash of the input.Constructor and Description |
---|
HashInputJarsToDexStep(ProjectFilesystem filesystem,
java.util.function.Supplier<Set<Path>> primaryInputsToDex,
Optional<java.util.function.Supplier<com.google.common.collect.Multimap<Path,Path>>> secondaryOutputToInputs,
java.util.function.Supplier<com.google.common.collect.ImmutableMap<String,com.google.common.hash.HashCode>> classNamesToHashesSupplier) |
Modifier and Type | Method and Description |
---|---|
StepExecutionResult |
execute(ExecutionContext context) |
com.google.common.collect.ImmutableMap<Path,Sha1HashCode> |
getDexInputHashes() |
getDescription, getShortName
public HashInputJarsToDexStep(ProjectFilesystem filesystem, java.util.function.Supplier<Set<Path>> primaryInputsToDex, Optional<java.util.function.Supplier<com.google.common.collect.Multimap<Path,Path>>> secondaryOutputToInputs, java.util.function.Supplier<com.google.common.collect.ImmutableMap<String,com.google.common.hash.HashCode>> classNamesToHashesSupplier)
public StepExecutionResult execute(ExecutionContext context) throws IOException
execute
in interface Step
execute
in class AbstractExecutionStep
IOException
public com.google.common.collect.ImmutableMap<Path,Sha1HashCode> getDexInputHashes()
getDexInputHashes
in interface SmartDexingStep.DexInputHashesProvider