code: private void deleteUnmentionedFiles(Dso[] dsos) throws IOException {
      String[] existingFiles = soDirectory.list();
      if (existingFiles == null) {
        throw new IOException("unable to list directory " + soDirectory);
      }
  
      for (int i = 0; i < existingFiles.length; ++i) {
        String fileName = existingFiles[i];
        if (fileName.equals(STATE_FILE_NAME) ||
            fileName.equals(LOCK_FILE_NAME) ||
            fileName.equals(DEPS_FILE_NAME) ||
            fileName.equals(MANIFEST_FILE_NAME)) {
          continue;
        }
  
        boolean found = false;
        for (int j = 0; !found && j < dsos.length; ++j) {
          if (dsos[j].name.equals(fileName)) {
            found = true;
          }
        }
  
        if (!found) {
          File fileNameToDelete = new File(soDirectory, fileName);
          Log.v(TAG, "deleting unaccounted-for file " + fileNameToDelete);
          SysUtil.dumbDeleteRecursive(fileNameToDelete);
        }
      }
    }
docs: Delete files not mentioned in the given DSO list.