/** * Creates a {@link SecondaryFile} instance that, when modified, will always trigger a full, * non-incremental build. */ public static SecondaryFile nonIncremental(@NonNull File file) { return new SecondaryFile(file, false); }
@NonNull @Override public Collection<SecondaryFile> getSecondaryFiles() { if (typedefRecipe.isFile()) { return ImmutableList.of(SecondaryFile.nonIncremental(typedefRecipe)); } else { return ImmutableList.of(); } }
private boolean checkSecondaryFiles( @NonNull Map<File, Status> changedMap, @NonNull Set<File> removedFiles) { for (SecondaryFile secondaryFile : getAllSecondaryInputs()) { File file = secondaryFile.getFile(); if ((changedMap.containsKey(file) || removedFiles.contains(file)) && !secondaryFile.supportsIncrementalBuild()) { return false; } } return true; }
private boolean isSecondaryFile(File file) { for (SecondaryFile secondaryFile : getAllSecondaryInputs()) { if (secondaryFile.getFile().equals(file)) { return true; } } return false; }
private Collection<SecondaryInput> gatherSecondaryInputChanges( Map<File, Status> changedMap, Set<File> removedFiles) { ImmutableList.Builder<SecondaryInput> builder = ImmutableList.builder(); for (final SecondaryFile secondaryFile : getAllSecondaryInputs()) { final File file = secondaryFile.getFile(); final Status status = changedMap.containsKey(file) ? changedMap.get(file) : removedFiles.contains(file) ? Status.REMOVED : Status.NOTCHANGED; builder.add(new SecondaryInput() { @Override public SecondaryFile getSecondaryInput() { return secondaryFile; } @Override public Status getStatus() { return status; } }); } return builder.build(); }
@NonNull @Override public Collection<SecondaryFile> getSecondaryFiles() { if (mainDexListFile != null) { return ImmutableList.of(SecondaryFile.nonIncremental(mainDexListFile)); } return ImmutableList.of(); }
/** * Creates a {@link SecondaryFile} instance that, when modified, will not trigger a full, * non-incremental build. */ public static SecondaryFile incremental(@NonNull File file) { return new SecondaryFile(file, true); }
@NonNull @Override public Collection<SecondaryFile> getSecondaryFiles() { final File secondaryFile = transform.getSecondaryFile(); return secondaryFile == null ? ImmutableSet.<SecondaryFile>of() : ImmutableSet.of(SecondaryFile.nonIncremental(secondaryFile)); }
@NonNull @Override public Collection<SecondaryFile> getSecondaryFiles() { return stripExecutables.values().stream() .map(f -> new SecondaryFile(f, false)) .collect(Collectors.toList()); }
@NonNull @Override public Collection<SecondaryFile> getSecondaryFiles() { ImmutableList.Builder<SecondaryFile> builder = ImmutableList.builder(); builder.addAll( Iterables.transform(options.getProguardFiles(), SecondaryFile::nonIncremental)); builder.addAll( Iterables.transform(options.getJarJarRuleFiles(), SecondaryFile::nonIncremental)); builder.addAll( Iterables.transform( options.getAnnotationProcessorClassPath(), SecondaryFile::nonIncremental)); builder.addAll(Iterables.transform(getSourceFiles(), SecondaryFile::incremental)); builder.add( SecondaryFile.nonIncremental( new File(androidBuilder .getTargetInfo() .getBuildTools() .getPath(BuildToolInfo.PathId.JACK)))); return builder.build(); }