RelativeFile rf = new RelativeFile(new File(base), new File(file)); mNameMap.put(rf, rename);
/** * Loads all files in a directory recursively. Creates al files relative to another directory. * * @param base the directory to use for relative files * @param directory the directory to get files from, must exist and be a readable directory * @return all files in the directory, sub-directories included */ @NonNull private static ImmutableSet<RelativeFile> fromDirectory( @NonNull File base, @NonNull File directory) { Preconditions.checkArgument(base.isDirectory(), "!base.isDirectory()"); Preconditions.checkArgument(directory.isDirectory(), "!directory.isDirectory()"); Set<RelativeFile> files = Sets.newHashSet(); File[] directoryFiles = Verify.verifyNotNull(directory.listFiles(), "directory.listFiles() == null"); for (File file : directoryFiles) { if (file.isDirectory()) { files.addAll(fromDirectory(base, file)); } else { files.add(new RelativeFile(base, file)); } } return ImmutableSet.copyOf(files); }
mFiles.put(new RelativeFile(new File(baseName), new File(fileName)), is);
RelativeFile resourcesFile = new RelativeFile(instantRunSupportDir, tmpZipFile); return ImmutableMap.of(resourcesFile, existedBefore? FileStatus.CHANGED : FileStatus.NEW);
while (possibleBaseDirectory != null) { if (baseFiles.contains(possibleBaseDirectory)) { relativeUpdates.put(new RelativeFile(possibleBaseDirectory, file), status); break;
/** * Reads a zip file and adds all files in the file in a new relative set. * * @param zip the zip file to read, must be a valid, existing zip file * @return the file set * @throws IOException failed to read the zip file */ @NonNull public static ImmutableSet<RelativeFile> fromZip(@NonNull File zip) throws IOException { Preconditions.checkArgument(zip.isFile(), "!zip.isFile()"); Set<RelativeFile> files = Sets.newHashSet(); try (ZFile zipReader = new ZFile(zip)) { for (StoredEntry entry : zipReader.entries()) { if (entry.getType() == StoredEntryType.FILE) { File file = new File(zip, FileUtils.toSystemDependentPath( entry.getCentralDirectoryHeader().getName())); files.add(new RelativeFile(zip, file)); } } } return ImmutableSet.copyOf(files); } }
FileUtils.toSystemDependentPath( entry.getCentralDirectoryHeader().getName())); builder.put(new RelativeFile(zip, file), FileStatus.REMOVED); if (entry.getType() == StoredEntryType.FILE) { File file = new File(zip, FileUtils.toSystemDependentPath(path)); RelativeFile newRelative = new RelativeFile(zip, file); String path = entry.getCentralDirectoryHeader().getName(); File file = new File(zip, FileUtils.toSystemDependentPath(path)); RelativeFile oldRelative = new RelativeFile(zip, file);
packager.updateAndroidResources(androidResources); for (File dexFile : dexFiles) { RelativeFile dex = new RelativeFile(dexFile.getParentFile(), dexFile); packager.updateDex(ImmutableMap.of(dex, FileStatus.NEW));