blob: d9405f86ec88ef5df086f01c76ae4f0213c9f1c4 [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_EXTENSIONS_API_FILE_HANDLERS_NON_NATIVE_FILE_SYSTEM_DELEGATE_CHROMEOS_H_
#define CHROME_BROWSER_EXTENSIONS_API_FILE_HANDLERS_NON_NATIVE_FILE_SYSTEM_DELEGATE_CHROMEOS_H_
#include <string>
#include "base/callback.h"
#include "base/files/file_path.h"
#include "base/optional.h"
#include "extensions/browser/api/file_handlers/non_native_file_system_delegate.h"
namespace content {
class BrowserContext;
}
namespace extensions {
class NonNativeFileSystemDelegateChromeOS
: public extensions::NonNativeFileSystemDelegate {
public:
NonNativeFileSystemDelegateChromeOS();
~NonNativeFileSystemDelegateChromeOS() override;
// extensions::NonNativeFileSystemDelegate:
bool IsUnderNonNativeLocalPath(content::BrowserContext* context,
const base::FilePath& path) override;
bool HasNonNativeMimeTypeProvider(content::BrowserContext* context,
const base::FilePath& path) override;
void GetNonNativeLocalPathMimeType(
content::BrowserContext* context,
const base::FilePath& path,
base::OnceCallback<void(const base::Optional<std::string>&)> callback)
override;
void IsNonNativeLocalPathDirectory(
content::BrowserContext* context,
const base::FilePath& path,
const base::Callback<void(bool)>& callback) override;
void PrepareNonNativeLocalFileForWritableApp(
content::BrowserContext* context,
const base::FilePath& path,
const base::Callback<void(bool)>& callback) override;
private:
DISALLOW_COPY_AND_ASSIGN(NonNativeFileSystemDelegateChromeOS);
};
} // namespace extensions
#endif // CHROME_BROWSER_EXTENSIONS_API_FILE_HANDLERS_NON_NATIVE_FILE_SYSTEM_DELEGATE_CHROMEOS_H_