Cast: Stop logging kVideoFrameSentToEncoder and rename a couple events.
[chromium-blink-merge.git] / chrome / browser / chromeos / file_system_provider / provided_file_system_interface.h
blob7cf174d8a21ebf7aceacc63d1810a11301cb3d38
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INTERFACE_H_
6 #define CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INTERFACE_H_
8 #include "webkit/browser/fileapi/async_file_util.h"
10 class EventRouter;
12 namespace base {
13 class FilePath;
14 } // namespace base
16 namespace chromeos {
17 namespace file_system_provider {
19 class ProvidedFileSystemInfo;
20 class RequestManager;
22 // Interface for a provided file system. Acts as a proxy between providers
23 // and clients.
24 // TODO(mtomasz): Add more methods once implemented.
25 class ProvidedFileSystemInterface {
26 public:
27 virtual ~ProvidedFileSystemInterface() {}
29 // Requests unmounting of the file system. The callback is called when the
30 // request is accepted or rejected, with an error code.
31 virtual void RequestUnmount(
32 const fileapi::AsyncFileUtil::StatusCallback& callback) = 0;
34 // Requests metadata of the passed |entry_path|. It can be either a file
35 // or a directory.
36 virtual void GetMetadata(
37 const base::FilePath& entry_path,
38 const fileapi::AsyncFileUtil::GetFileInfoCallback& callback) = 0;
40 // Returns a provided file system info for this file system.
41 virtual const ProvidedFileSystemInfo& GetFileSystemInfo() const = 0;
43 // Returns a request manager for the file system.
44 virtual RequestManager* GetRequestManager() = 0;
47 } // namespace file_system_provider
48 } // namespace chromeos
50 #endif // CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INTERFACE_H_