blob: a435f25963d29cc8e92a34ba1419dee4db28b27a [file] [log] [blame]
brettw@chromium.orgbf3eb522012-06-30 06:09:14 +09001// Copyright (c) 2012 The Chromium Authors. All rights reserved.
agl@chromium.org4300a312010-03-12 00:25:54 +09002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
brettw@chromium.orgbf3eb522012-06-30 06:09:14 +09005#ifndef BASE_FILES_DIR_READER_FALLBACK_H_
6#define BASE_FILES_DIR_READER_FALLBACK_H_
agl@chromium.org4300a312010-03-12 00:25:54 +09007
8namespace base {
9
10class DirReaderFallback {
11 public:
12 // Open a directory. If |IsValid| is true, then |Next| can be called to start
13 // the iteration at the beginning of the directory.
brettw@chromium.orgbf3eb522012-06-30 06:09:14 +090014 explicit DirReaderFallback(const char* directory_path) {}
15
agl@chromium.org4300a312010-03-12 00:25:54 +090016 // After construction, IsValid returns true iff the directory was
17 // successfully opened.
18 bool IsValid() const { return false; }
brettw@chromium.orgbf3eb522012-06-30 06:09:14 +090019
agl@chromium.org4300a312010-03-12 00:25:54 +090020 // Move to the next entry returning false if the iteration is complete.
21 bool Next() { return false; }
brettw@chromium.orgbf3eb522012-06-30 06:09:14 +090022
agl@chromium.org4300a312010-03-12 00:25:54 +090023 // Return the name of the current directory entry.
24 const char* name() { return 0;}
brettw@chromium.orgbf3eb522012-06-30 06:09:14 +090025
agl@chromium.org4300a312010-03-12 00:25:54 +090026 // Return the file descriptor which is being used.
27 int fd() const { return -1; }
brettw@chromium.orgbf3eb522012-06-30 06:09:14 +090028
agl@chromium.org4300a312010-03-12 00:25:54 +090029 // Returns true if this is a no-op fallback class (for testing).
30 static bool IsFallback() { return true; }
31};
32
33} // namespace base
34
brettw@chromium.orgbf3eb522012-06-30 06:09:14 +090035#endif // BASE_FILES_DIR_READER_FALLBACK_H_