Index: webkit/fileapi/file_system_options.h |
diff --git a/webkit/fileapi/file_system_options.h b/webkit/fileapi/file_system_options.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..7d53a813b1eeacfa47aa8736cd59d18b2b973ac3 |
--- /dev/null |
+++ b/webkit/fileapi/file_system_options.h |
@@ -0,0 +1,51 @@ |
+// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef WEBKIT_FILEAPI_FILE_SYSTEM_OPTIONS_H_ |
+#define WEBKIT_FILEAPI_FILE_SYSTEM_OPTIONS_H_ |
+ |
+#include <string> |
+#include <vector> |
+ |
+namespace fileapi { |
+ |
+// Provides runtime options that may change FileSystem API behavior. |
+// This object is copyable. |
+class FileSystemOptions { |
+ public: |
+ enum ProfileMode { |
+ PROFILE_MODE_NORMAL = 0, |
+ PROFILE_MODE_INCOGNITO |
+ }; |
+ |
+ // |profile_mode| specifies if the profile (for this filesystem) |
+ // is running in incognito mode (PROFILE_MODE_INCOGNITO) or no |
+ // (PROFILE_MODE_NORMAL). |
+ // |additional_allowed_schemes| specifies schemes that are allowed |
+ // to access FileSystem API in addition to "http" and "https". |
+ FileSystemOptions( |
+ ProfileMode profile_mode, |
+ const std::vector<std::string>& additional_allowed_schemes); |
+ |
+ ~FileSystemOptions(); |
+ |
+ // Returns true if it is running in the incognito mode. |
+ bool is_incognito() const { return profile_mode_ == PROFILE_MODE_INCOGNITO; } |
+ |
+ // Returns the schemes that must be allowed to access FileSystem API |
+ // in addition to standard "http" and "https". |
+ // (e.g. If the --allow-file-access-from-files option is given in chrome |
+ // "file" scheme will also need to be allowed). |
+ const std::vector<std::string>& additional_allowed_schemes() const { |
+ return additional_allowed_schemes_; |
+ } |
+ |
+ private: |
+ const ProfileMode profile_mode_; |
+ const std::vector<std::string> additional_allowed_schemes_; |
+}; |
+ |
+} // namespace fileapi |
+ |
+#endif // WEBKIT_FILEAPI_FILE_SYSTEM_OPTIONS_H_ |