Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
3 * You can obtain one at http://mozilla.org/MPL/2.0/. */
5 include protocol PBlob;
6 include protocol PIndexedDBCursor;
7 include protocol PIndexedDBIndex;
8 include protocol PIndexedDBRequest;
9 include protocol PIndexedDBTransaction;
11 include IndexedDBParams;
13 using struct mozilla::dom::indexedDB::IndexInfo from "mozilla/dom/indexedDB/DatabaseInfo.h";
14 using struct mozilla::dom::indexedDB::IndexUpdateInfo from "mozilla/dom/indexedDB/DatabaseInfo.h";
15 using struct mozilla::dom::indexedDB::SerializedStructuredCloneWriteInfo from "mozilla/dom/indexedDB/IndexedDatabase.h";
17 namespace mozilla {
18 namespace dom {
19 namespace indexedDB {
21 namespace ipc {
23 struct AddPutParams
24 {
25 SerializedStructuredCloneWriteInfo cloneInfo;
26 Key key;
27 IndexUpdateInfo[] indexUpdateInfos;
28 PBlob[] blobs;
29 };
31 struct AddParams
32 {
33 AddPutParams commonParams;
34 };
36 struct PutParams
37 {
38 AddPutParams commonParams;
39 };
41 struct DeleteParams
42 {
43 KeyRange keyRange;
44 };
46 struct ClearParams
47 {
48 };
50 union ObjectStoreRequestParams
51 {
52 GetParams;
53 GetAllParams;
54 GetAllKeysParams;
55 AddParams;
56 PutParams;
57 DeleteParams;
58 ClearParams;
59 CountParams;
60 OpenCursorParams;
61 OpenKeyCursorParams;
62 };
64 struct CreateIndexParams
65 {
66 IndexInfo info;
67 };
69 struct GetIndexParams
70 {
71 nsString name;
72 };
74 union IndexConstructorParams
75 {
76 CreateIndexParams;
77 GetIndexParams;
78 };
80 struct ObjectStoreCursorConstructorParams
81 {
82 PIndexedDBRequest request;
83 Direction direction;
84 Key key;
85 OptionalStructuredCloneReadInfo optionalCloneInfo;
86 PBlob[] blobs;
87 };
89 } // namespace ipc
91 protocol PIndexedDBObjectStore
92 {
93 manager PIndexedDBTransaction;
95 manages PIndexedDBCursor;
96 manages PIndexedDBIndex;
97 manages PIndexedDBRequest;
99 parent:
100 __delete__();
102 PIndexedDBIndex(IndexConstructorParams params);
103 PIndexedDBRequest(ObjectStoreRequestParams params);
105 DeleteIndex(nsString name);
107 child:
108 PIndexedDBCursor(ObjectStoreCursorConstructorParams params);
109 };
111 } // namespace indexedDB
112 } // namespace dom
113 } // namespace mozilla