summaryrefslogtreecommitdiffstats
path: root/base/file_util_proxy.h
diff options
context:
space:
mode:
authorkinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-04 11:46:19 +0000
committerkinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-04 11:46:19 +0000
commitc7a36cfa4f51efb7b089fa1c3e70536e866c24df (patch)
treeeb462f535f5dd5a76d6356e48196ddccee136c9a /base/file_util_proxy.h
parent4841b7784f624e7d47942fbaf459373d7f08563b (diff)
downloadchromium_src-c7a36cfa4f51efb7b089fa1c3e70536e866c24df.zip
chromium_src-c7a36cfa4f51efb7b089fa1c3e70536e866c24df.tar.gz
chromium_src-c7a36cfa4f51efb7b089fa1c3e70536e866c24df.tar.bz2
Original issue with review is:
http://codereview.chromium.org/8424006/ BUG=none TEST=test_shell_tests:\*FileSystem\* TBR=willchan, caseq Review URL: http://codereview.chromium.org/8466003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108639 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/file_util_proxy.h')
-rw-r--r--base/file_util_proxy.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/base/file_util_proxy.h b/base/file_util_proxy.h
index eb1d144..15a3e82 100644
--- a/base/file_util_proxy.h
+++ b/base/file_util_proxy.h
@@ -32,7 +32,7 @@ class BASE_EXPORT FileUtilProxy {
};
// This callback is used by methods that report only an error code. It is
- // valid to pass StatusCallback() to any function that takes a StatusCallback,
+ // valid to pass a null callback to any function that takes a StatusCallback,
// in which case the operation will complete silently.
typedef Callback<void(PlatformFileError)> StatusCallback;
@@ -51,6 +51,9 @@ class BASE_EXPORT FileUtilProxy {
typedef Callback<void(PlatformFileError,
int /* bytes written */)> WriteCallback;
+ typedef Callback<PlatformFileError(PlatformFile*, bool*)> CreateOrOpenTask;
+ typedef Callback<PlatformFileError(PlatformFile)> CloseTask;
+
// Creates or opens a file with the given flags. It is invalid to pass a null
// callback. If PLATFORM_FILE_CREATE is set in |file_flags| it always tries to
// create a new file at the given |file_path| and calls back with
@@ -164,6 +167,19 @@ class BASE_EXPORT FileUtilProxy {
PlatformFile file,
const StatusCallback& callback);
+ // Relay helpers.
+ static bool RelayCreateOrOpen(
+ scoped_refptr<MessageLoopProxy> message_loop_proxy,
+ const CreateOrOpenTask& open_task,
+ const CloseTask& close_task,
+ const CreateOrOpenCallback& callback);
+
+ static bool RelayClose(
+ scoped_refptr<MessageLoopProxy> message_loop_proxy,
+ const CloseTask& close_task,
+ PlatformFile,
+ const StatusCallback& callback);
+
private:
DISALLOW_IMPLICIT_CONSTRUCTORS(FileUtilProxy);
};