Class IncrementalFileMerger

java.lang.Object
com.android.builder.merge.IncrementalFileMerger

public final class IncrementalFileMerger extends Object
Class performing an incremental merge operation. This class is a utility with only one method, merge(List, IncrementalFileMergerOutput, IncrementalFileMergerState, Predicate). See package description for a discussion on merging concepts.
  • Method Details

    • merge

      @NonNull public static IncrementalFileMergerState merge(@NonNull List<IncrementalFileMergerInput> inputs, @NonNull IncrementalFileMergerOutput output, @NonNull IncrementalFileMergerState state, @NonNull Predicate<String> noCompressPredicate)
      Performs an incremental merge operation. An incremental merge operation is done by applying a set of changes represented by a list of instances of IncrementalFileMergerInput to a current state represented by an instance of IncrementalFileMergerState. All changes that need to be made to the output as a consequence of the inputs are reported to output.

      See package description for details.

      Parameters:
      inputs - all inputs representing changes to the inputs
      output - object receiving information about all changes that need to be made to the output
      state - state of the previous merge; an empty state if this is the first merge
      noCompressPredicate - a predicate indicating whether paths should be uncompressed