Chromium Code Reviews| Index: Source/modules/indexeddb/WebIDBCallbacksImpl.cpp |
| diff --git a/Source/modules/indexeddb/WebIDBCallbacksImpl.cpp b/Source/modules/indexeddb/WebIDBCallbacksImpl.cpp |
| index 9fa9f2fd6abc13996a4a2f8a68c0ae161cd1f8b3..1e396452ae4dd999376c07055748ceff9dc5dc0e 100644 |
| --- a/Source/modules/indexeddb/WebIDBCallbacksImpl.cpp |
| +++ b/Source/modules/indexeddb/WebIDBCallbacksImpl.cpp |
| @@ -33,12 +33,14 @@ |
| #include "modules/indexeddb/IDBMetadata.h" |
| #include "modules/indexeddb/IDBRequest.h" |
| #include "platform/SharedBuffer.h" |
| +#include "public/platform/WebBlobInfo.h" |
| #include "public/platform/WebData.h" |
| #include "public/platform/WebIDBCursor.h" |
| #include "public/platform/WebIDBDatabase.h" |
| #include "public/platform/WebIDBDatabaseError.h" |
| #include "public/platform/WebIDBKey.h" |
| +using blink::WebBlobInfo; |
| using blink::WebData; |
| using blink::WebIDBCursor; |
| using blink::WebIDBDatabase; |
| @@ -47,9 +49,11 @@ using blink::WebIDBIndex; |
| using blink::WebIDBKey; |
| using blink::WebIDBKeyPath; |
| using blink::WebIDBMetadata; |
| +using blink::WebVector; |
| namespace WebCore { |
| + |
|
jsbell
2014/04/15 18:29:07
Remove this extra blank line
ericu
2014/04/16 23:04:14
Done.
|
| // static |
| PassOwnPtr<WebIDBCallbacksImpl> WebIDBCallbacksImpl::create(PassRefPtr<IDBRequest> request) |
| { |
| @@ -65,12 +69,20 @@ WebIDBCallbacksImpl::~WebIDBCallbacksImpl() |
| { |
| } |
| +static PassOwnPtr<Vector<WebBlobInfo> > ConvertBlobInfo(const WebVector<WebBlobInfo>& webBlobInfo) |
| +{ |
| + OwnPtr<Vector<WebBlobInfo> > blobInfo = adoptPtr(new Vector<WebBlobInfo>(webBlobInfo.size())); |
| + for (size_t i = 0; i < webBlobInfo.size(); ++i) |
| + (*blobInfo)[i] = webBlobInfo[i]; |
| + return blobInfo.release(); |
| +} |
| + |
| void WebIDBCallbacksImpl::onError(const WebIDBDatabaseError& error) |
| { |
| m_request->onError(error); |
| } |
| -void WebIDBCallbacksImpl::onSuccess(const blink::WebVector<blink::WebString>& webStringList) |
| +void WebIDBCallbacksImpl::onSuccess(const WebVector<blink::WebString>& webStringList) |
| { |
| Vector<String> stringList; |
| for (size_t i = 0; i < webStringList.size(); ++i) |
| @@ -80,7 +92,13 @@ void WebIDBCallbacksImpl::onSuccess(const blink::WebVector<blink::WebString>& we |
| void WebIDBCallbacksImpl::onSuccess(WebIDBCursor* cursor, const WebIDBKey& key, const WebIDBKey& primaryKey, const WebData& value) |
| { |
| - m_request->onSuccess(adoptPtr(cursor), key, primaryKey, value); |
| + OwnPtr<Vector<blink::WebBlobInfo> > blobInfo(adoptPtr(new Vector<blink::WebBlobInfo>())); |
| + m_request->onSuccess(adoptPtr(cursor), key, primaryKey, value, blobInfo.release()); |
| +} |
| + |
| +void WebIDBCallbacksImpl::onSuccess(WebIDBCursor* cursor, const WebIDBKey& key, const WebIDBKey& primaryKey, const WebData& value, const WebVector<WebBlobInfo>& webBlobInfo) |
| +{ |
| + m_request->onSuccess(adoptPtr(cursor), key, primaryKey, value, ConvertBlobInfo(webBlobInfo)); |
| } |
| void WebIDBCallbacksImpl::onSuccess(WebIDBDatabase* backend, const WebIDBMetadata& metadata) |
| @@ -95,12 +113,24 @@ void WebIDBCallbacksImpl::onSuccess(const WebIDBKey& key) |
| void WebIDBCallbacksImpl::onSuccess(const WebData& value) |
| { |
| - m_request->onSuccess(value); |
| + OwnPtr<Vector<blink::WebBlobInfo> > blobInfo(adoptPtr(new Vector<blink::WebBlobInfo>())); |
| + m_request->onSuccess(value, blobInfo.release()); |
| +} |
| + |
| +void WebIDBCallbacksImpl::onSuccess(const WebData& value, const WebVector<WebBlobInfo>& webBlobInfo) |
| +{ |
| + m_request->onSuccess(value, ConvertBlobInfo(webBlobInfo)); |
| } |
| void WebIDBCallbacksImpl::onSuccess(const WebData& value, const WebIDBKey& key, const WebIDBKeyPath& keyPath) |
| { |
| - m_request->onSuccess(value, key, keyPath); |
| + OwnPtr<Vector<blink::WebBlobInfo> > blobInfo(adoptPtr(new Vector<blink::WebBlobInfo>())); |
| + m_request->onSuccess(value, blobInfo.release(), key, keyPath); |
| +} |
| + |
| +void WebIDBCallbacksImpl::onSuccess(const WebData& value, const WebVector<WebBlobInfo>& webBlobInfo, const WebIDBKey& key, const WebIDBKeyPath& keyPath) |
| +{ |
| + m_request->onSuccess(value, ConvertBlobInfo(webBlobInfo), key, keyPath); |
| } |
| void WebIDBCallbacksImpl::onSuccess(long long value) |
| @@ -115,7 +145,13 @@ void WebIDBCallbacksImpl::onSuccess() |
| void WebIDBCallbacksImpl::onSuccess(const WebIDBKey& key, const WebIDBKey& primaryKey, const WebData& value) |
| { |
| - m_request->onSuccess(key, primaryKey, value); |
| + OwnPtr<Vector<blink::WebBlobInfo> > blobInfo(adoptPtr(new Vector<blink::WebBlobInfo>())); |
| + m_request->onSuccess(key, primaryKey, value, blobInfo.release()); |
| +} |
| + |
| +void WebIDBCallbacksImpl::onSuccess(const WebIDBKey& key, const WebIDBKey& primaryKey, const WebData& value, const WebVector<WebBlobInfo>& webBlobInfo) |
| +{ |
| + m_request->onSuccess(key, primaryKey, value, ConvertBlobInfo(webBlobInfo)); |
| } |
| void WebIDBCallbacksImpl::onBlocked(long long oldVersion) |