diff options
Diffstat (limited to 'chromium/content/browser/renderer_host/pepper/pepper_file_system_browser_host.h')
-rw-r--r-- | chromium/content/browser/renderer_host/pepper/pepper_file_system_browser_host.h | 57 |
1 files changed, 23 insertions, 34 deletions
diff --git a/chromium/content/browser/renderer_host/pepper/pepper_file_system_browser_host.h b/chromium/content/browser/renderer_host/pepper/pepper_file_system_browser_host.h index f97ddde671d..f6f75fb9aa5 100644 --- a/chromium/content/browser/renderer_host/pepper/pepper_file_system_browser_host.h +++ b/chromium/content/browser/renderer_host/pepper/pepper_file_system_browser_host.h @@ -18,6 +18,7 @@ #include "ppapi/c/private/ppb_isolated_file_system_private.h" #include "ppapi/host/host_message_context.h" #include "ppapi/host/resource_host.h" +#include "ppapi/shared_impl/file_growth.h" #include "url/gurl.h" #include "webkit/browser/fileapi/file_system_context.h" @@ -72,26 +73,12 @@ class CONTENT_EXPORT PepperFileSystemBrowserHost const OpenQuotaFileCallback& callback); // Closes the file. This must be called after OpenQuotaFile and before the // PepperFileIOHost is destroyed. - void CloseQuotaFile(PepperFileIOHost* file_io_host); - // Requests the given amount of quota. Returns the amount requested or - // PP_OK_COMPLETIONPENDING, in which case the amount granted is returned in - // the callback. Requests can't partially succeed so the amount granted is - // either 0 or the amount of the request. Requesting an amount of 0 will - // return immediately with a 0 result. - typedef base::Callback<void(int32_t)> RequestQuotaCallback; - int32_t RequestQuota(int32_t amount, - const RequestQuotaCallback& callback); + void CloseQuotaFile(PepperFileIOHost* file_io_host, + const ppapi::FileGrowth& file_growth); + private: friend class PepperFileSystemBrowserHostTest; - struct QuotaRequest { - QuotaRequest(int32_t amount, const RequestQuotaCallback& callback); - ~QuotaRequest(); - - int32_t amount; - RequestQuotaCallback callback; - }; - void OpenExistingFileSystem( const base::Closure& callback, scoped_refptr<fileapi::FileSystemContext> file_system_context); @@ -99,11 +86,10 @@ class CONTENT_EXPORT PepperFileSystemBrowserHost ppapi::host::ReplyMessageContext reply_context, fileapi::FileSystemType file_system_type, scoped_refptr<fileapi::FileSystemContext> file_system_context); - void OpenFileSystemComplete( - ppapi::host::ReplyMessageContext reply_context, - const GURL& root, - const std::string& name, - base::PlatformFileError error); + void OpenFileSystemComplete(ppapi::host::ReplyMessageContext reply_context, + const GURL& root, + const std::string& name, + base::File::Error error); void OpenIsolatedFileSystem( ppapi::host::ReplyMessageContext reply_context, const std::string& fsid, @@ -116,7 +102,7 @@ class CONTENT_EXPORT PepperFileSystemBrowserHost void OpenPluginPrivateFileSystemComplete( ppapi::host::ReplyMessageContext reply_context, const std::string& fsid, - base::PlatformFileError error); + base::File::Error error); int32_t OnHostMsgOpen(ppapi::host::HostMessageContext* context, int64_t expected_size); @@ -124,10 +110,12 @@ class CONTENT_EXPORT PepperFileSystemBrowserHost ppapi::host::HostMessageContext* context, const std::string& fsid, PP_IsolatedFileSystemType_Private type); + int32_t OnHostMsgReserveQuota(ppapi::host::HostMessageContext* context, + int64_t amount, + const ppapi::FileGrowthMap& file_growths); - void SendReplyForFileSystem( - ppapi::host::ReplyMessageContext reply_context, - int32_t pp_error); + void SendReplyForFileSystem(ppapi::host::ReplyMessageContext reply_context, + int32_t pp_error); void SendReplyForIsolatedFileSystem( ppapi::host::ReplyMessageContext reply_context, const std::string& fsid, @@ -138,13 +126,15 @@ class CONTENT_EXPORT PepperFileSystemBrowserHost bool ShouldCreateQuotaReservation() const; void CreateQuotaReservation(const base::Closure& callback); - void GotQuotaReservation( - const base::Closure& callback, - scoped_refptr<QuotaReservation> quota_reservation); + void GotQuotaReservation(const base::Closure& callback, + scoped_refptr<QuotaReservation> quota_reservation); - void ReserveQuota(int32_t amount); - void GotReservedQuota(int64_t amount, - const QuotaReservation::OffsetMap& max_written_offsets); + void GotReservedQuota(ppapi::host::ReplyMessageContext reply_context, + int64_t amount, + const ppapi::FileSizeMap& file_sizes); + void DidOpenQuotaFile(PP_Resource file_io_resource, + const OpenQuotaFileCallback& callback, + int64_t max_written_offset); std::string GetPluginMimeType() const; @@ -155,7 +145,7 @@ class CONTENT_EXPORT PepperFileSystemBrowserHost PP_FileSystemType type_; bool called_open_; // whether open has been called. - bool opened_; // whether open succeeded. + bool opened_; // whether open succeeded. GURL root_url_; scoped_refptr<fileapi::FileSystemContext> file_system_context_; @@ -167,7 +157,6 @@ class CONTENT_EXPORT PepperFileSystemBrowserHost // destroyed. typedef std::map<int32_t, PepperFileIOHost*> FileMap; FileMap files_; - std::queue<QuotaRequest> pending_quota_requests_; int64_t reserved_quota_; bool reserving_quota_; // Access only on the FileSystemContext's default_file_task_runner(). |