Chromium Code Reviews| Index: content/browser/indexed_db/webidbdatabase_impl.h |
| diff --git a/content/browser/indexed_db/webidbdatabase_impl.h b/content/browser/indexed_db/webidbdatabase_impl.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..2ab9963a5510c030c90334709e649395b6620af1 |
| --- /dev/null |
| +++ b/content/browser/indexed_db/webidbdatabase_impl.h |
| @@ -0,0 +1,110 @@ |
| +// Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CONTENT_BROWSER_INDEXED_DB_WEBIDBDATABASE_IMPL_H_ |
| +#define CONTENT_BROWSER_INDEXED_DB_WEBIDBDATABASE_IMPL_H_ |
| + |
| +#include "base/memory/ref_counted.h" |
| +#include "content/browser/indexed_db/indexed_db_database.h" |
| +#include "content/browser/indexed_db/indexed_db_database_callbacks_wrapper.h" |
| +#include "third_party/WebKit/Source/Platform/chromium/public/WebIDBDatabase.h" |
| + |
| +namespace WebKit { |
| +class WebIDBDatabaseCallbacks; |
| +class WebIDBDatabaseError; |
| +class WebIDBDatabaseMetadata; |
| +} |
| + |
| +namespace content { |
| +class IndexedDBDatabase; |
| +class IndexedDBDatabaseCallbacksWrapper; |
| + |
| +// See comment in WebIDBFactory for a high level overview these classes. |
| +class WebIDBDatabaseImpl : public WebKit::WebIDBDatabase { |
| + public: |
| + WebIDBDatabaseImpl(scoped_refptr<IndexedDBDatabase>, |
| + scoped_refptr<IndexedDBDatabaseCallbacksWrapper>); |
| + virtual ~WebIDBDatabaseImpl(); |
| + |
| + virtual void createObjectStore(long long transaction_id, |
| + long long object_store_id, |
| + const WebKit::WebString& name, |
| + const WebKit::WebIDBKeyPath&, |
| + bool auto_increment); |
| + virtual void deleteObjectStore(long long object_store_id, |
| + long long transaction_id); |
| + virtual void createTransaction(long long id, |
| + WebKit::WebIDBDatabaseCallbacks*, |
| + const WebKit::WebVector<long long>&, |
| + unsigned short mode); |
| + virtual void forceClose(); |
| + virtual void close(); |
| + virtual void abort(long long transaction_id); |
| + virtual void abort(long long transaction_id, |
| + const WebKit::WebIDBDatabaseError&); |
| + virtual void commit(long long transaction_id); |
| + |
| + virtual void get(long long transaction_id, |
| + long long object_store_id, |
| + long long index_id, |
| + const WebKit::WebIDBKeyRange&, |
| + bool key_only, |
| + WebKit::WebIDBCallbacks*) OVERRIDE; |
|
jamesr
2013/05/21 23:56:06
please don't use OVERRIDE when implementing interf
jsbell
2013/05/22 17:54:44
Done.
|
| + virtual void put(long long transaction_id, |
| + long long object_store_id, |
| + const WebKit::WebData& value, |
| + const WebKit::WebIDBKey&, |
| + PutMode, |
| + WebKit::WebIDBCallbacks*, |
| + const WebKit::WebVector<long long>& index_ids, |
| + const WebKit::WebVector<WebIndexKeys>&) OVERRIDE; |
| + virtual void setIndexKeys(long long transaction_id, |
| + long long object_store_id, |
| + const WebKit::WebIDBKey&, |
| + const WebKit::WebVector<long long>& index_ids, |
| + const WebKit::WebVector<WebIndexKeys>&) OVERRIDE; |
| + virtual void setIndexesReady(long long transaction_id, |
| + long long object_store_id, |
| + const WebKit::WebVector<long long>& index_ids) |
| + OVERRIDE; |
| + virtual void openCursor(long long transaction_id, |
| + long long object_store_id, |
| + long long index_id, |
| + const WebKit::WebIDBKeyRange&, |
| + unsigned short direction, |
| + bool key_only, |
| + TaskType, |
| + WebKit::WebIDBCallbacks*) OVERRIDE; |
| + virtual void count(long long transaction_id, |
| + long long object_store_id, |
| + long long index_id, |
| + const WebKit::WebIDBKeyRange&, |
| + WebKit::WebIDBCallbacks*) OVERRIDE; |
| + virtual void deleteRange(long long transaction_id, |
| + long long object_store_id, |
| + const WebKit::WebIDBKeyRange&, |
| + WebKit::WebIDBCallbacks*) OVERRIDE; |
| + virtual void clear(long long transaction_id, |
| + long long object_store_id, |
| + WebKit::WebIDBCallbacks*) OVERRIDE; |
| + |
| + virtual void createIndex(long long transaction_id, |
| + long long object_store_id, |
| + long long index_id, |
| + const WebKit::WebString& name, |
| + const WebKit::WebIDBKeyPath&, |
| + bool unique, |
| + bool multi_entry); |
| + virtual void deleteIndex(long long transaction_id, |
| + long long object_store_id, |
| + long long index_id); |
| + |
| + private: |
| + scoped_refptr<IndexedDBDatabase> database_backend_; |
| + scoped_refptr<IndexedDBDatabaseCallbacksWrapper> database_callbacks_; |
| +}; |
| + |
| +} // namespace content |
| + |
| +#endif // CONTENT_BROWSER_INDEXED_DB_WEBIDBDATABASE_IMPL_H_ |