Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1646)

Unified Diff: Source/modules/filesystem/DOMFileSystemSync.cpp

Issue 23704004: Make WebFileSystemCallbacks not self-destruct, deprecate AsyncFileSystem (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/modules/filesystem/DOMFileSystemSync.h ('k') | Source/modules/filesystem/DOMWindowFileSystem.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/modules/filesystem/DOMFileSystemSync.cpp
diff --git a/Source/modules/filesystem/DOMFileSystemSync.cpp b/Source/modules/filesystem/DOMFileSystemSync.cpp
index 4bb0df5c0f3de666100857bde060815f5b18df4f..cca36042dec4b2375b91ef617c5ec58d0c55d4d0 100644
--- a/Source/modules/filesystem/DOMFileSystemSync.cpp
+++ b/Source/modules/filesystem/DOMFileSystemSync.cpp
@@ -35,7 +35,6 @@
#include "core/dom/ExceptionCode.h"
#include "core/fileapi/File.h"
#include "core/fileapi/FileError.h"
-#include "core/platform/AsyncFileSystem.h"
#include "core/platform/FileMetadata.h"
#include "modules/filesystem/DOMFilePath.h"
#include "modules/filesystem/DirectoryEntrySync.h"
@@ -44,6 +43,8 @@
#include "modules/filesystem/FileSystemCallbacks.h"
#include "modules/filesystem/FileWriterBaseCallback.h"
#include "modules/filesystem/FileWriterSync.h"
+#include "public/platform/WebFileSystem.h"
+#include "public/platform/WebFileSystemCallbacks.h"
namespace WebCore {
@@ -51,11 +52,11 @@ class FileWriterBase;
PassRefPtr<DOMFileSystemSync> DOMFileSystemSync::create(DOMFileSystemBase* fileSystem)
{
- return adoptRef(new DOMFileSystemSync(fileSystem->m_context, fileSystem->name(), fileSystem->type(), fileSystem->rootURL(), fileSystem->m_asyncFileSystem.release()));
+ return adoptRef(new DOMFileSystemSync(fileSystem->m_context, fileSystem->name(), fileSystem->type(), fileSystem->rootURL()));
}
-DOMFileSystemSync::DOMFileSystemSync(ScriptExecutionContext* context, const String& name, FileSystemType type, const KURL& rootURL, PassOwnPtr<AsyncFileSystem> asyncFileSystem)
- : DOMFileSystemBase(context, name, type, rootURL, asyncFileSystem)
+DOMFileSystemSync::DOMFileSystemSync(ScriptExecutionContext* context, const String& name, FileSystemType type, const KURL& rootURL)
+ : DOMFileSystemBase(context, name, type, rootURL)
{
ScriptWrappable::init(this);
}
@@ -97,9 +98,9 @@ public:
friend class WTF::RefCounted<CreateFileResult>;
};
- static PassOwnPtr<CreateFileHelper> create(PassRefPtr<CreateFileResult> result, const String& name, const KURL& url, FileSystemType type)
+ static PassOwnPtr<AsyncFileSystemCallbacks> create(PassRefPtr<CreateFileResult> result, const String& name, const KURL& url, FileSystemType type)
{
- return adoptPtr(new CreateFileHelper(result, name, url, type));
+ return adoptPtr(static_cast<AsyncFileSystemCallbacks*>(new CreateFileHelper(result, name, url, type)));
}
virtual void didFail(int code)
@@ -161,11 +162,7 @@ PassRefPtr<File> DOMFileSystemSync::createFile(const FileEntrySync* fileEntry, E
{
KURL fileSystemURL = createFileSystemURL(fileEntry);
RefPtr<CreateFileHelper::CreateFileResult> result(CreateFileHelper::CreateFileResult::create());
- m_asyncFileSystem->createSnapshotFileAndReadMetadata(fileSystemURL, CreateFileHelper::create(result, fileEntry->name(), fileSystemURL, type()));
- if (!m_asyncFileSystem->waitForOperationToComplete()) {
- es.throwDOMException(AbortError, FileError::abortErrorMessage);
- return 0;
- }
+ fileSystem()->createSnapshotFileAndReadMetadata(fileSystemURL, CreateFileHelper::create(result, fileEntry->name(), fileSystemURL, type()));
if (result->m_failed) {
es.throwDOMException(result->m_code);
return 0;
@@ -247,14 +244,10 @@ PassRefPtr<FileWriterSync> DOMFileSystemSync::createWriter(const FileEntrySync*
RefPtr<ReceiveFileWriterCallback> successCallback = ReceiveFileWriterCallback::create();
RefPtr<LocalErrorCallback> errorCallback = LocalErrorCallback::create();
- OwnPtr<FileWriterBaseCallbacks> callbacks = FileWriterBaseCallbacks::create(fileWriter, successCallback, errorCallback);
+ OwnPtr<AsyncFileSystemCallbacks> callbacks = FileWriterBaseCallbacks::create(fileWriter, successCallback, errorCallback);
callbacks->setShouldBlockUntilCompletion(true);
- m_asyncFileSystem->createWriter(fileWriter.get(), createFileSystemURL(fileEntry), callbacks.release());
- if (!m_asyncFileSystem->waitForOperationToComplete()) {
- es.throwDOMException(AbortError, FileError::abortErrorMessage);
- return 0;
- }
+ fileSystem()->createFileWriter(createFileSystemURL(fileEntry), fileWriter.get(), callbacks.release());
if (errorCallback->error()) {
ASSERT(!successCallback->fileWriterBase());
FileError::ErrorCode errorCode = errorCallback->error()->code();
« no previous file with comments | « Source/modules/filesystem/DOMFileSystemSync.h ('k') | Source/modules/filesystem/DOMWindowFileSystem.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698