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

Side by Side Diff: content/browser/indexed_db/indexed_db_callbacks_wrapper.cc

Issue 18241003: IndexedDB: Remove IndexedDBCallbacksWrapper (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Include/Forward Declare tidying Created 7 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 | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "content/browser/indexed_db/indexed_db_callbacks_wrapper.h"
6
7 #include "content/browser/indexed_db/indexed_db_callbacks.h"
8 #include "content/browser/indexed_db/indexed_db_cursor.h"
9 #include "content/browser/indexed_db/indexed_db_database_callbacks.h"
10 #include "content/browser/indexed_db/indexed_db_metadata.h"
11 #include "content/browser/indexed_db/webidbdatabase_impl.h"
12
13 namespace content {
14
15 using WebKit::WebIDBCallbacks;
16
17 IndexedDBCallbacksWrapper::IndexedDBCallbacksWrapper(
18 IndexedDBCallbacksBase* callbacks)
19 : callbacks_(callbacks), did_complete_(false), did_create_proxy_(false) {}
20
21 IndexedDBCallbacksWrapper::~IndexedDBCallbacksWrapper() {}
22
23 void IndexedDBCallbacksWrapper::OnError(const IndexedDBDatabaseError& error) {
24 DCHECK(callbacks_);
25 callbacks_->onError(error);
26 callbacks_.reset();
27 }
28
29 void IndexedDBCallbacksWrapper::OnSuccess(const std::vector<string16>& value) {
30 DCHECK(callbacks_);
31 callbacks_->onSuccess(value);
32 callbacks_.reset();
33 }
34
35 void IndexedDBCallbacksWrapper::OnSuccess(scoped_refptr<IndexedDBCursor> cursor,
36 const IndexedDBKey& key,
37 const IndexedDBKey& primary_key,
38 std::vector<char>* value) {
39 DCHECK(callbacks_);
40 callbacks_->onSuccess(cursor, key, primary_key, value);
41 callbacks_.reset();
42 }
43
44 void IndexedDBCallbacksWrapper::OnSuccess(const IndexedDBKey& key) {
45 DCHECK(callbacks_);
46 callbacks_->onSuccess(key);
47 callbacks_.reset();
48 }
49
50 void IndexedDBCallbacksWrapper::OnSuccess(std::vector<char>* value) {
51 DCHECK(callbacks_);
52 callbacks_->onSuccess(value);
53 callbacks_.reset();
54 }
55
56 void IndexedDBCallbacksWrapper::OnSuccess(std::vector<char>* value,
57 const IndexedDBKey& key,
58 const IndexedDBKeyPath& key_path) {
59 DCHECK(callbacks_);
60 callbacks_->onSuccess(value, key, key_path);
61 callbacks_.reset();
62 }
63
64 void IndexedDBCallbacksWrapper::OnSuccess(int64 value) {
65 DCHECK(callbacks_);
66 callbacks_->onSuccess(value);
67 callbacks_.reset();
68 }
69
70 void IndexedDBCallbacksWrapper::OnSuccess() {
71 DCHECK(callbacks_);
72 callbacks_->onSuccess();
73 callbacks_.reset();
74 }
75
76 void IndexedDBCallbacksWrapper::OnSuccess(const IndexedDBKey& key,
77 const IndexedDBKey& primary_key,
78 std::vector<char>* value) {
79 DCHECK(callbacks_);
80 callbacks_->onSuccess(key, primary_key, value);
81 callbacks_.reset();
82 }
83
84 void IndexedDBCallbacksWrapper::OnSuccessWithPrefetch(
85 const std::vector<IndexedDBKey>& keys,
86 const std::vector<IndexedDBKey>& primary_keys,
87 const std::vector<std::vector<char> >& values) {
88 DCHECK_EQ(keys.size(), primary_keys.size());
89 DCHECK_EQ(keys.size(), values.size());
90
91 DCHECK(callbacks_);
92 callbacks_->onSuccessWithPrefetch(keys, primary_keys, values);
93 callbacks_.reset();
94 }
95
96 void IndexedDBCallbacksWrapper::OnBlocked(int64 existing_version) {
97 DCHECK(callbacks_);
98 callbacks_->onBlocked(existing_version);
99 }
100
101 void IndexedDBCallbacksWrapper::OnUpgradeNeeded(
102 int64 old_version,
103 scoped_refptr<IndexedDBDatabase> database,
104 const IndexedDBDatabaseMetadata& metadata,
105 WebIDBCallbacks::DataLoss data_loss) {
106 DCHECK(callbacks_);
107 did_create_proxy_ = true;
108 callbacks_->onUpgradeNeeded(
109 old_version,
110 new WebIDBDatabaseImpl(database, database_callbacks_),
111 metadata,
112 data_loss);
113 database_callbacks_ = NULL;
114 }
115
116 void IndexedDBCallbacksWrapper::OnSuccess(
117 scoped_refptr<IndexedDBDatabase> database,
118 const IndexedDBDatabaseMetadata& metadata) {
119 DCHECK(callbacks_);
120 scoped_refptr<IndexedDBCallbacksWrapper> self(this);
121
122 WebIDBDatabaseImpl* impl =
123 did_create_proxy_ ? 0
124 : new WebIDBDatabaseImpl(database, database_callbacks_);
125 database_callbacks_ = NULL;
126
127 callbacks_->onSuccess(impl, metadata);
128 callbacks_.reset();
129 }
130
131 void IndexedDBCallbacksWrapper::SetDatabaseCallbacks(
132 scoped_refptr<IndexedDBDatabaseCallbacks> database_callbacks) {
133 database_callbacks_ = database_callbacks;
134 }
135 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/indexed_db/indexed_db_callbacks_wrapper.h ('k') | content/browser/indexed_db/indexed_db_cursor.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698