| henrike@webrtc.org | f048872 | 2014-05-13 18:00:26 +0000 | [diff] [blame] | 1 | /* | 
 | 2 |  *  Copyright 2004 The WebRTC Project Authors. All rights reserved. | 
 | 3 |  * | 
 | 4 |  *  Use of this source code is governed by a BSD-style license | 
 | 5 |  *  that can be found in the LICENSE file in the root of the source | 
 | 6 |  *  tree. An additional intellectual property rights grant can be found | 
 | 7 |  *  in the file PATENTS.  All contributing project authors may | 
 | 8 |  *  be found in the AUTHORS file in the root of the source tree. | 
 | 9 |  */ | 
 | 10 |  | 
| Mirko Bonadei | 92ea95e | 2017-09-15 06:47:31 +0200 | [diff] [blame] | 11 | #ifndef RTC_BASE_WIN32FILESYSTEM_H_ | 
 | 12 | #define RTC_BASE_WIN32FILESYSTEM_H_ | 
| henrike@webrtc.org | f048872 | 2014-05-13 18:00:26 +0000 | [diff] [blame] | 13 |  | 
| Henrik Kjellander | ec78f1c | 2017-06-29 07:52:50 +0200 | [diff] [blame] | 14 | #include "fileutils.h" | 
| henrike@webrtc.org | f048872 | 2014-05-13 18:00:26 +0000 | [diff] [blame] | 15 |  | 
| Henrik Kjellander | ec78f1c | 2017-06-29 07:52:50 +0200 | [diff] [blame] | 16 | namespace rtc { | 
| henrike@webrtc.org | f048872 | 2014-05-13 18:00:26 +0000 | [diff] [blame] | 17 |  | 
| Henrik Kjellander | ec78f1c | 2017-06-29 07:52:50 +0200 | [diff] [blame] | 18 | class Win32Filesystem : public FilesystemInterface { | 
 | 19 |  public: | 
 | 20 |   // This will attempt to delete the path located at filename. | 
 | 21 |   // If the path points to a folder, it will fail with VERIFY | 
 | 22 |   bool DeleteFile(const Pathname& filename) override; | 
 | 23 |  | 
| Henrik Kjellander | c036276 | 2017-06-29 08:03:04 +0200 | [diff] [blame] | 24 |   // This moves a file from old_path to new_path. If the new path is on a | 
| Henrik Kjellander | ec78f1c | 2017-06-29 07:52:50 +0200 | [diff] [blame] | 25 |   // different volume than the old, it will attempt to copy and then delete | 
 | 26 |   // the folder | 
 | 27 |   // Returns true if the file is successfully moved | 
 | 28 |   bool MoveFile(const Pathname& old_path, const Pathname& new_path) override; | 
 | 29 |  | 
 | 30 |   // Returns true if a pathname is a directory | 
 | 31 |   bool IsFolder(const Pathname& pathname) override; | 
 | 32 |  | 
 | 33 |   // Returns true if a file exists at path | 
 | 34 |   bool IsFile(const Pathname& path) override; | 
 | 35 |  | 
| Henrik Kjellander | ec78f1c | 2017-06-29 07:52:50 +0200 | [diff] [blame] | 36 |   bool GetFileSize(const Pathname& path, size_t* size) override; | 
| Henrik Kjellander | ec78f1c | 2017-06-29 07:52:50 +0200 | [diff] [blame] | 37 | }; | 
 | 38 |  | 
 | 39 | }  // namespace rtc | 
 | 40 |  | 
| Mirko Bonadei | 92ea95e | 2017-09-15 06:47:31 +0200 | [diff] [blame] | 41 | #endif  // RTC_BASE_WIN32FILESYSTEM_H_ |