Home | History | Annotate | Download | only in file_system_provider
      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.
      4 
      5 #ifndef CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INFO_H_
      6 #define CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INFO_H_
      7 
      8 #include <string>
      9 
     10 #include "base/files/file_path.h"
     11 
     12 namespace chromeos {
     13 namespace file_system_provider {
     14 
     15 // Contains information about the provided file system instance.
     16 class ProvidedFileSystemInfo {
     17  public:
     18   ProvidedFileSystemInfo();
     19   ProvidedFileSystemInfo(const std::string& extension_id,
     20                          const std::string& file_system_id,
     21                          const std::string& display_name,
     22                          const bool writable,
     23                          const base::FilePath& mount_path);
     24 
     25   ~ProvidedFileSystemInfo();
     26 
     27   const std::string& extension_id() const { return extension_id_; }
     28   const std::string& file_system_id() const { return file_system_id_; }
     29   const std::string& display_name() const { return display_name_; }
     30   bool writable() const { return writable_; }
     31   const base::FilePath& mount_path() const { return mount_path_; }
     32 
     33  private:
     34   // ID of the extension providing this file system.
     35   std::string extension_id_;
     36 
     37   // ID of the file system.
     38   std::string file_system_id_;
     39 
     40   // Name of the file system, can be rendered in the UI.
     41   std::string display_name_;
     42 
     43   // Whether the file system is writable or just read-only.
     44   bool writable_;
     45 
     46   // Mount path of the underlying file system.
     47   base::FilePath mount_path_;
     48 };
     49 
     50 }  // namespace file_system_provider
     51 }  // namespace chromeos
     52 
     53 #endif  // CHROME_BROWSER_CHROMEOS_FILE_SYSTEM_PROVIDER_PROVIDED_FILE_SYSTEM_INFO_H_
     54