[email protected] | d88e17f | 2012-06-29 21:09:14 | [diff] [blame^] | 1 | // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
[email protected] | ef73044e | 2010-03-11 15:25:54 | [diff] [blame] | 2 | // Use of this source code is governed by a BSD-style license that can be |
3 | // found in the LICENSE file. | ||||
4 | |||||
[email protected] | d88e17f | 2012-06-29 21:09:14 | [diff] [blame^] | 5 | #ifndef BASE_FILES_DIR_READER_FALLBACK_H_ |
6 | #define BASE_FILES_DIR_READER_FALLBACK_H_ | ||||
[email protected] | 32b76ef | 2010-07-26 23:08:24 | [diff] [blame] | 7 | #pragma once |
[email protected] | ef73044e | 2010-03-11 15:25:54 | [diff] [blame] | 8 | |
9 | namespace base { | ||||
10 | |||||
11 | class DirReaderFallback { | ||||
12 | public: | ||||
13 | // Open a directory. If |IsValid| is true, then |Next| can be called to start | ||||
14 | // the iteration at the beginning of the directory. | ||||
[email protected] | d88e17f | 2012-06-29 21:09:14 | [diff] [blame^] | 15 | explicit DirReaderFallback(const char* directory_path) {} |
16 | |||||
[email protected] | ef73044e | 2010-03-11 15:25:54 | [diff] [blame] | 17 | // After construction, IsValid returns true iff the directory was |
18 | // successfully opened. | ||||
19 | bool IsValid() const { return false; } | ||||
[email protected] | d88e17f | 2012-06-29 21:09:14 | [diff] [blame^] | 20 | |
[email protected] | ef73044e | 2010-03-11 15:25:54 | [diff] [blame] | 21 | // Move to the next entry returning false if the iteration is complete. |
22 | bool Next() { return false; } | ||||
[email protected] | d88e17f | 2012-06-29 21:09:14 | [diff] [blame^] | 23 | |
[email protected] | ef73044e | 2010-03-11 15:25:54 | [diff] [blame] | 24 | // Return the name of the current directory entry. |
25 | const char* name() { return 0;} | ||||
[email protected] | d88e17f | 2012-06-29 21:09:14 | [diff] [blame^] | 26 | |
[email protected] | ef73044e | 2010-03-11 15:25:54 | [diff] [blame] | 27 | // Return the file descriptor which is being used. |
28 | int fd() const { return -1; } | ||||
[email protected] | d88e17f | 2012-06-29 21:09:14 | [diff] [blame^] | 29 | |
[email protected] | ef73044e | 2010-03-11 15:25:54 | [diff] [blame] | 30 | // Returns true if this is a no-op fallback class (for testing). |
31 | static bool IsFallback() { return true; } | ||||
32 | }; | ||||
33 | |||||
34 | } // namespace base | ||||
35 | |||||
[email protected] | d88e17f | 2012-06-29 21:09:14 | [diff] [blame^] | 36 | #endif // BASE_FILES_DIR_READER_FALLBACK_H_ |