[content shell] hook up testRunner.dumpEditingCallbacks
[chromium-blink-merge.git] / content / common / indexed_db / proxy_webidbobjectstore_impl.h
blob2c6c622d17014581139a4bec8419b6900f479daf
1 // Copyright (c) 2012 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.
5 #ifndef CONTENT_COMMON_INDEXED_DB_PROXY_WEBIDBOBJECTSTORE_IMPL_H_
6 #define CONTENT_COMMON_INDEXED_DB_PROXY_WEBIDBOBJECTSTORE_IMPL_H_
8 #include "base/basictypes.h"
9 #include "third_party/WebKit/Source/WebKit/chromium/public/WebIDBCallbacks.h"
10 #include "third_party/WebKit/Source/WebKit/chromium/public/WebIDBObjectStore.h"
12 namespace WebKit {
13 class WebIDBCallbacks;
14 class WebIDBIndex;
15 class WebIDBKey;
16 class WebIDBKeyRange;
17 class WebString;
20 namespace content {
22 class RendererWebIDBObjectStoreImpl : public WebKit::WebIDBObjectStore {
23 public:
24 explicit RendererWebIDBObjectStoreImpl(int32 ipc_object_store_id);
25 virtual ~RendererWebIDBObjectStoreImpl();
27 // TODO(alecflett): Remove this when it is removed from webkit:
28 // https://bugs.webkit.org/show_bug.cgi?id=98085
29 static const long long AutogenerateIndexId = -1;
31 // WebKit::WebIDBObjectStore
32 virtual void get(const WebKit::WebIDBKeyRange& key_range,
33 WebKit::WebIDBCallbacks* callbacks,
34 const WebKit::WebIDBTransaction& transaction,
35 WebKit::WebExceptionCode& ec);
36 virtual void put(
37 const WebKit::WebSerializedScriptValue&,
38 const WebKit::WebIDBKey&,
39 PutMode,
40 WebKit::WebIDBCallbacks*,
41 const WebKit::WebIDBTransaction&,
42 const WebKit::WebVector<long long>&,
43 const WebKit::WebVector<WebKit::WebIDBObjectStore::WebIndexKeys>&);
44 virtual void setIndexKeys(const WebKit::WebIDBKey&,
45 const WebKit::WebVector<long long>&,
46 const WebKit::WebVector<WebIndexKeys>&,
47 const WebKit::WebIDBTransaction&);
48 virtual void setIndexesReady(const WebKit::WebVector<long long>&,
49 const WebKit::WebIDBTransaction&);
50 virtual void deleteFunction(const WebKit::WebIDBKeyRange& key_range,
51 WebKit::WebIDBCallbacks* callbacks,
52 const WebKit::WebIDBTransaction& transaction,
53 WebKit::WebExceptionCode& ec);
54 virtual void clear(WebKit::WebIDBCallbacks* callbacks,
55 const WebKit::WebIDBTransaction& transaction,
56 WebKit::WebExceptionCode& ec);
58 virtual WebKit::WebIDBIndex* createIndex(
59 long long index_id,
60 const WebKit::WebString& name,
61 const WebKit::WebIDBKeyPath& key_path,
62 bool unique,
63 bool multi_entry,
64 const WebKit::WebIDBTransaction& transaction,
65 WebKit::WebExceptionCode& ec);
67 // Transfers ownership of the WebIDBIndex to the caller.
68 virtual WebKit::WebIDBIndex* index(long long object_store_id);
69 virtual void deleteIndex(long long index_id,
70 const WebKit::WebIDBTransaction& transaction,
71 WebKit::WebExceptionCode& ec);
73 virtual void openCursor(const WebKit::WebIDBKeyRange&,
74 WebKit::WebIDBCursor::Direction direction,
75 WebKit::WebIDBCallbacks*,
76 WebKit::WebIDBTransaction::TaskType,
77 const WebKit::WebIDBTransaction&,
78 WebKit::WebExceptionCode&);
80 virtual void count(const WebKit::WebIDBKeyRange& idb_key_range,
81 WebKit::WebIDBCallbacks* callbacks,
82 const WebKit::WebIDBTransaction& transaction,
83 WebKit::WebExceptionCode& ec);
85 private:
86 int32 ipc_object_store_id_;
89 } // namespace content
91 #endif // CONTENT_COMMON_INDEXED_DB_PROXY_WEBIDBOBJECTSTORE_IMPL_H_