summaryrefslogtreecommitdiffstats
path: root/webkit/fileapi/syncable
diff options
context:
space:
mode:
authorkinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-10-25 06:47:35 +0000
committerkinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-10-25 06:47:35 +0000
commit868dca9c230da3eddfa374b4619a82c22e58215b (patch)
treeaca5076c9ca3c1047acd4fb542249d284d13e1c7 /webkit/fileapi/syncable
parent0504e433d707b11c2d785ab616c9c776a8dbf7cb (diff)
downloadchromium_src-868dca9c230da3eddfa374b4619a82c22e58215b.zip
chromium_src-868dca9c230da3eddfa374b4619a82c22e58215b.tar.gz
chromium_src-868dca9c230da3eddfa374b4619a82c22e58215b.tar.bz2
Implement PlatformFileErrorToSyncStatusCode
BUG=157788 TEST=none Review URL: https://codereview.chromium.org/11264030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164025 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/fileapi/syncable')
-rw-r--r--webkit/fileapi/syncable/sync_status_code.cc40
-rw-r--r--webkit/fileapi/syncable/sync_status_code.h4
2 files changed, 44 insertions, 0 deletions
diff --git a/webkit/fileapi/syncable/sync_status_code.cc b/webkit/fileapi/syncable/sync_status_code.cc
index b249679..2586382 100644
--- a/webkit/fileapi/syncable/sync_status_code.cc
+++ b/webkit/fileapi/syncable/sync_status_code.cc
@@ -21,4 +21,44 @@ SyncStatusCode LevelDBStatusToSyncStatusCode(const leveldb::Status& status) {
return SYNC_DATABASE_ERROR_FAILED;
}
+SyncStatusCode PlatformFileErrorToSyncStatusCode(
+ base::PlatformFileError file_error) {
+ switch (file_error) {
+ case base::PLATFORM_FILE_OK:
+ return SYNC_STATUS_OK;
+ case base::PLATFORM_FILE_ERROR_FAILED:
+ return SYNC_FILE_ERROR_FAILED;
+ case base::PLATFORM_FILE_ERROR_IN_USE:
+ return SYNC_FILE_ERROR_IN_USE;
+ case base::PLATFORM_FILE_ERROR_EXISTS:
+ return SYNC_FILE_ERROR_EXISTS;
+ case base::PLATFORM_FILE_ERROR_NOT_FOUND:
+ return SYNC_FILE_ERROR_NOT_FOUND;
+ case base::PLATFORM_FILE_ERROR_ACCESS_DENIED:
+ return SYNC_FILE_ERROR_ACCESS_DENIED;
+ case base::PLATFORM_FILE_ERROR_TOO_MANY_OPENED:
+ return SYNC_FILE_ERROR_TOO_MANY_OPENED;
+ case base::PLATFORM_FILE_ERROR_NO_MEMORY:
+ return SYNC_FILE_ERROR_NO_MEMORY;
+ case base::PLATFORM_FILE_ERROR_NO_SPACE:
+ return SYNC_FILE_ERROR_NO_SPACE;
+ case base::PLATFORM_FILE_ERROR_NOT_A_DIRECTORY:
+ return SYNC_FILE_ERROR_NOT_A_DIRECTORY;
+ case base::PLATFORM_FILE_ERROR_INVALID_OPERATION:
+ return SYNC_FILE_ERROR_INVALID_OPERATION;
+ case base::PLATFORM_FILE_ERROR_SECURITY:
+ return SYNC_FILE_ERROR_SECURITY;
+ case base::PLATFORM_FILE_ERROR_ABORT:
+ return SYNC_FILE_ERROR_ABORT;
+ case base::PLATFORM_FILE_ERROR_NOT_A_FILE:
+ return SYNC_FILE_ERROR_NOT_A_FILE;
+ case base::PLATFORM_FILE_ERROR_NOT_EMPTY:
+ return SYNC_FILE_ERROR_NOT_EMPTY;
+ case base::PLATFORM_FILE_ERROR_INVALID_URL:
+ return SYNC_FILE_ERROR_INVALID_URL;
+ default:
+ return SYNC_FILE_ERROR_FAILED;
+ }
+}
+
} // namespace fileapi
diff --git a/webkit/fileapi/syncable/sync_status_code.h b/webkit/fileapi/syncable/sync_status_code.h
index 9cc16c7..ede977d 100644
--- a/webkit/fileapi/syncable/sync_status_code.h
+++ b/webkit/fileapi/syncable/sync_status_code.h
@@ -5,6 +5,7 @@
#ifndef WEBKIT_FILEAPI_SYNCABLE_SYNC_STATUS_CODE_H_
#define WEBKIT_FILEAPI_SYNCABLE_SYNC_STATUS_CODE_H_
+#include "base/platform_file.h"
#include "webkit/storage/webkit_storage_export.h"
namespace leveldb {
@@ -50,6 +51,9 @@ enum SyncStatusCode {
WEBKIT_STORAGE_EXPORT SyncStatusCode LevelDBStatusToSyncStatusCode(
const leveldb::Status& status);
+WEBKIT_STORAGE_EXPORT SyncStatusCode PlatformFileErrorToSyncStatusCode(
+ base::PlatformFileError file_error);
+
} // namespace fileapi
#endif // WEBKIT_FILEAPI_SYNCABLE_SYNC_STATUS_CODE_H_