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

Side by Side Diff: third_party/WebKit/Source/modules/filesystem/DOMFileSystem.cpp

Issue 2040563002: Remove FileError interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@fe-dep
Patch Set: handleEvent -> invoke and other review nits Created 4 years, 5 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Google Inc. All rights reserved. 2 * Copyright (C) 2010 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 15 matching lines...) Expand all
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */ 29 */
30 30
31 #include "modules/filesystem/DOMFileSystem.h" 31 #include "modules/filesystem/DOMFileSystem.h"
32 32
33 #include "core/fileapi/BlobCallback.h" 33 #include "core/fileapi/BlobCallback.h"
34 #include "modules/filesystem/DOMFilePath.h" 34 #include "modules/filesystem/DOMFilePath.h"
35 #include "modules/filesystem/DirectoryEntry.h" 35 #include "modules/filesystem/DirectoryEntry.h"
36 #include "modules/filesystem/ErrorCallback.h"
37 #include "modules/filesystem/FileEntry.h" 36 #include "modules/filesystem/FileEntry.h"
38 #include "modules/filesystem/FileSystemCallbacks.h" 37 #include "modules/filesystem/FileSystemCallbacks.h"
39 #include "modules/filesystem/FileWriter.h" 38 #include "modules/filesystem/FileWriter.h"
40 #include "modules/filesystem/FileWriterBaseCallback.h" 39 #include "modules/filesystem/FileWriterBaseCallback.h"
41 #include "modules/filesystem/FileWriterCallback.h" 40 #include "modules/filesystem/FileWriterCallback.h"
42 #include "modules/filesystem/MetadataCallback.h" 41 #include "modules/filesystem/MetadataCallback.h"
43 #include "platform/FileMetadata.h" 42 #include "platform/FileMetadata.h"
44 #include "platform/weborigin/SecurityOrigin.h" 43 #include "platform/weborigin/SecurityOrigin.h"
45 #include "public/platform/Platform.h" 44 #include "public/platform/Platform.h"
46 #include "public/platform/WebFileSystem.h" 45 #include "public/platform/WebFileSystem.h"
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 ASSERT(m_numberOfPendingCallbacks > 0); 107 ASSERT(m_numberOfPendingCallbacks > 0);
109 --m_numberOfPendingCallbacks; 108 --m_numberOfPendingCallbacks;
110 } 109 }
111 110
112 bool DOMFileSystem::hasPendingActivity() const 111 bool DOMFileSystem::hasPendingActivity() const
113 { 112 {
114 ASSERT(m_numberOfPendingCallbacks >= 0); 113 ASSERT(m_numberOfPendingCallbacks >= 0);
115 return m_numberOfPendingCallbacks; 114 return m_numberOfPendingCallbacks;
116 } 115 }
117 116
118 void DOMFileSystem::reportError(ErrorCallback* errorCallback, FileError* fileErr or) 117 void DOMFileSystem::reportError(ErrorCallbackBase* errorCallback, FileError::Err orCode fileError)
119 { 118 {
120 reportError(getExecutionContext(), errorCallback, fileError); 119 reportError(getExecutionContext(), errorCallback, fileError);
121 } 120 }
122 121
123 void DOMFileSystem::reportError(ExecutionContext* executionContext, ErrorCallbac k* errorCallback, FileError* fileError) 122 void DOMFileSystem::reportError(ExecutionContext* executionContext, ErrorCallbac kBase* errorCallback, FileError::ErrorCode fileError)
124 { 123 {
125 if (errorCallback) 124 if (errorCallback)
126 scheduleCallback(executionContext, createSameThreadTask(&ErrorCallback:: handleEvent, wrapPersistent(errorCallback), wrapPersistent(fileError))); 125 scheduleCallback(executionContext, createSameThreadTask(&ErrorCallbackBa se::invoke, wrapPersistent(errorCallback), fileError));
127 } 126 }
128 127
129 namespace { 128 namespace {
130 129
131 class ConvertToFileWriterCallback : public FileWriterBaseCallback { 130 class ConvertToFileWriterCallback : public FileWriterBaseCallback {
132 public: 131 public:
133 static ConvertToFileWriterCallback* create(FileWriterCallback* callback) 132 static ConvertToFileWriterCallback* create(FileWriterCallback* callback)
134 { 133 {
135 return new ConvertToFileWriterCallback(callback); 134 return new ConvertToFileWriterCallback(callback);
136 } 135 }
(...skipping 11 matching lines...) Expand all
148 private: 147 private:
149 explicit ConvertToFileWriterCallback(FileWriterCallback* callback) 148 explicit ConvertToFileWriterCallback(FileWriterCallback* callback)
150 : m_callback(callback) 149 : m_callback(callback)
151 { 150 {
152 } 151 }
153 Member<FileWriterCallback> m_callback; 152 Member<FileWriterCallback> m_callback;
154 }; 153 };
155 154
156 } // namespace 155 } // namespace
157 156
158 void DOMFileSystem::createWriter(const FileEntry* fileEntry, FileWriterCallback* successCallback, ErrorCallback* errorCallback) 157 void DOMFileSystem::createWriter(const FileEntry* fileEntry, FileWriterCallback* successCallback, ErrorCallbackBase* errorCallback)
159 { 158 {
160 ASSERT(fileEntry); 159 ASSERT(fileEntry);
161 160
162 if (!fileSystem()) { 161 if (!fileSystem()) {
163 reportError(errorCallback, FileError::create(FileError::ABORT_ERR)); 162 reportError(errorCallback, FileError::ABORT_ERR);
164 return; 163 return;
165 } 164 }
166 165
167 FileWriter* fileWriter = FileWriter::create(getExecutionContext()); 166 FileWriter* fileWriter = FileWriter::create(getExecutionContext());
168 FileWriterBaseCallback* conversionCallback = ConvertToFileWriterCallback::cr eate(successCallback); 167 FileWriterBaseCallback* conversionCallback = ConvertToFileWriterCallback::cr eate(successCallback);
169 std::unique_ptr<AsyncFileSystemCallbacks> callbacks = FileWriterBaseCallback s::create(fileWriter, conversionCallback, errorCallback, m_context); 168 std::unique_ptr<AsyncFileSystemCallbacks> callbacks = FileWriterBaseCallback s::create(fileWriter, conversionCallback, errorCallback, m_context);
170 fileSystem()->createFileWriter(createFileSystemURL(fileEntry), fileWriter, s td::move(callbacks)); 169 fileSystem()->createFileWriter(createFileSystemURL(fileEntry), fileWriter, s td::move(callbacks));
171 } 170 }
172 171
173 void DOMFileSystem::createFile(const FileEntry* fileEntry, BlobCallback* success Callback, ErrorCallback* errorCallback) 172 void DOMFileSystem::createFile(const FileEntry* fileEntry, BlobCallback* success Callback, ErrorCallbackBase* errorCallback)
174 { 173 {
175 KURL fileSystemURL = createFileSystemURL(fileEntry); 174 KURL fileSystemURL = createFileSystemURL(fileEntry);
176 if (!fileSystem()) { 175 if (!fileSystem()) {
177 reportError(errorCallback, FileError::create(FileError::ABORT_ERR)); 176 reportError(errorCallback, FileError::ABORT_ERR);
178 return; 177 return;
179 } 178 }
180 179
181 fileSystem()->createSnapshotFileAndReadMetadata(fileSystemURL, SnapshotFileC allback::create(this, fileEntry->name(), fileSystemURL, successCallback, errorCa llback, m_context)); 180 fileSystem()->createSnapshotFileAndReadMetadata(fileSystemURL, SnapshotFileC allback::create(this, fileEntry->name(), fileSystemURL, successCallback, errorCa llback, m_context));
182 } 181 }
183 182
184 DEFINE_TRACE(DOMFileSystem) 183 DEFINE_TRACE(DOMFileSystem)
185 { 184 {
186 DOMFileSystemBase::trace(visitor); 185 DOMFileSystemBase::trace(visitor);
187 ActiveDOMObject::trace(visitor); 186 ActiveDOMObject::trace(visitor);
188 visitor->trace(m_rootEntry); 187 visitor->trace(m_rootEntry);
189 } 188 }
190 189
191 } // namespace blink 190 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698