#include "extensions/browser/api/file_handlers/directory_util.h"
#include <memory>
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/functional/bind.h"
#include "base/task/single_thread_task_runner.h"
#include "base/task/thread_pool.h"
#include "build/chromeos_buildflags.h"
#include "content/public/browser/browser_context.h"
#include "net/base/filename_util.h"
#include "storage/browser/file_system/file_system_url.h"
#if BUILDFLAG(IS_CHROMEOS_ASH)
#include "extensions/browser/api/extensions_api_client.h"
#include "extensions/browser/api/file_handlers/non_native_file_system_delegate.h"
#endif
namespace extensions::app_file_handler_util {
namespace {
bool GetIsDirectoryFromFileInfo(const base::FilePath& path) { … }
}
void GetIsDirectoryForLocalPath(content::BrowserContext* context,
const base::FilePath& path,
base::OnceCallback<void(bool)> callback) { … }
IsDirectoryCollector::IsDirectoryCollector(content::BrowserContext* context)
: … { … }
IsDirectoryCollector::~IsDirectoryCollector() = default;
void IsDirectoryCollector::CollectForEntriesPaths(
const std::vector<base::FilePath>& paths,
CompletionCallback callback) { … }
void IsDirectoryCollector::OnIsDirectoryCollected(size_t index,
bool is_directory) { … }
}