summaryrefslogtreecommitdiffstats
path: root/chromium/content/browser/renderer_host/pepper/pepper_file_system_browser_host.h
diff options
context:
space:
mode:
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.h57
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().