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 // Message definition file, included multiple times, hence no include guard.
11 #include "content/common/indexed_db/indexed_db_key.h"
12 #include "content/common/indexed_db/indexed_db_key_path.h"
13 #include "content/common/indexed_db/indexed_db_key_range.h"
14 #include "content/common/indexed_db/indexed_db_param_traits.h"
15 #include "ipc/ipc_message_macros.h"
16 #include "ipc/ipc_param_traits.h"
17 #include "third_party/WebKit/public/platform/modules/indexeddb/WebIDBTypes.h"
19 // Singly-included section for typedefs in multiply-included file.
20 #ifndef CONTENT_COMMON_INDEXED_DB_INDEXED_DB_MESSAGES_H_
21 #define CONTENT_COMMON_INDEXED_DB_INDEXED_DB_MESSAGES_H_
23 // An index id, and corresponding set of keys to insert.
24 typedef std::pair
<int64
, std::vector
<content::IndexedDBKey
> > IndexKeys
;
26 #endif // CONTENT_COMMON_INDEXED_DB_INDEXED_DB_MESSAGES_H_
28 #undef IPC_MESSAGE_EXPORT
29 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT
30 #define IPC_MESSAGE_START IndexedDBMsgStart
32 // Argument structures used in messages
34 IPC_ENUM_TRAITS_MAX_VALUE(blink::WebIDBCursorDirection
,
35 blink::WebIDBCursorDirectionLast
)
36 IPC_ENUM_TRAITS_MAX_VALUE(blink::WebIDBPutMode
, blink::WebIDBPutModeLast
)
37 IPC_ENUM_TRAITS_MAX_VALUE(blink::WebIDBTaskType
, blink::WebIDBTaskTypeLast
)
38 IPC_ENUM_TRAITS_MAX_VALUE(blink::WebIDBTransactionMode
,
39 blink::WebIDBTransactionModeLast
)
41 IPC_ENUM_TRAITS_MAX_VALUE(blink::WebIDBDataLoss
, blink::WebIDBDataLossTotal
)
43 // Used to enumerate indexed databases.
44 IPC_STRUCT_BEGIN(IndexedDBHostMsg_FactoryGetDatabaseNames_Params
)
45 // The response should have these ids.
46 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
47 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
48 // The string id of the origin doing the initiating.
49 IPC_STRUCT_MEMBER(std::string
, database_identifier
)
52 // Used to open an indexed database.
53 IPC_STRUCT_BEGIN(IndexedDBHostMsg_FactoryOpen_Params
)
54 // The response should have these ids.
55 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
56 // Identifier of the request
57 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
58 // Identifier for database callbacks
59 IPC_STRUCT_MEMBER(int32
, ipc_database_callbacks_id
)
60 // The string id of the origin doing the initiating.
61 IPC_STRUCT_MEMBER(std::string
, database_identifier
)
62 // The name of the database.
63 IPC_STRUCT_MEMBER(base::string16
, name
)
64 // The transaction id used if a database upgrade is needed.
65 IPC_STRUCT_MEMBER(int64
, transaction_id
)
66 // The requested version of the database.
67 IPC_STRUCT_MEMBER(int64
, version
)
70 // Used to delete an indexed database.
71 IPC_STRUCT_BEGIN(IndexedDBHostMsg_FactoryDeleteDatabase_Params
)
72 // The response should have these ids.
73 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
74 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
75 // The string id of the origin doing the initiating.
76 IPC_STRUCT_MEMBER(std::string
, database_identifier
)
77 // The name of the database.
78 IPC_STRUCT_MEMBER(base::string16
, name
)
81 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabaseCreateTransaction_Params
)
82 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
83 // The database the object store belongs to.
84 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
85 // The transaction id as minted by the frontend.
86 IPC_STRUCT_MEMBER(int64
, transaction_id
)
87 // To get to WebIDBDatabaseCallbacks.
88 IPC_STRUCT_MEMBER(int32
, ipc_database_callbacks_id
)
89 // The scope of the transaction.
90 IPC_STRUCT_MEMBER(std::vector
<int64
>, object_store_ids
)
91 // The transaction mode.
92 IPC_STRUCT_MEMBER(blink::WebIDBTransactionMode
, mode
)
95 // Used to create an object store.
96 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabaseCreateObjectStore_Params
)
97 // The database the object store belongs to.
98 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
99 // The transaction its associated with.
100 IPC_STRUCT_MEMBER(int64
, transaction_id
)
101 // The storage id of the object store.
102 IPC_STRUCT_MEMBER(int64
, object_store_id
)
103 // The name of the object store.
104 IPC_STRUCT_MEMBER(base::string16
, name
)
105 // The keyPath of the object store.
106 IPC_STRUCT_MEMBER(content::IndexedDBKeyPath
, key_path
)
107 // Whether the object store created should have a key generator.
108 IPC_STRUCT_MEMBER(bool, auto_increment
)
111 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabaseGet_Params
)
112 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
113 // The id any response should contain.
114 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
115 // The database the object store belongs to.
116 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
117 // The transaction its associated with.
118 IPC_STRUCT_MEMBER(int64
, transaction_id
)
119 // The object store's id.
120 IPC_STRUCT_MEMBER(int64
, object_store_id
)
122 IPC_STRUCT_MEMBER(int64
, index_id
)
123 // The serialized key range.
124 IPC_STRUCT_MEMBER(content::IndexedDBKeyRange
, key_range
)
125 // If this is just retrieving the key
126 IPC_STRUCT_MEMBER(bool, key_only
)
129 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabaseGetAll_Params
)
130 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
131 // The id any response should contain.
132 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
133 // The database the object store belongs to.
134 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
135 // The transaction its associated with.
136 IPC_STRUCT_MEMBER(int64
, transaction_id
)
137 // The object store's id.
138 IPC_STRUCT_MEMBER(int64
, object_store_id
)
140 IPC_STRUCT_MEMBER(int64
, index_id
)
141 // The serialized key range.
142 IPC_STRUCT_MEMBER(content::IndexedDBKeyRange
, key_range
)
143 // If this is just retrieving the key
144 IPC_STRUCT_MEMBER(bool, key_only
)
145 // The max number of values to retrieve.
146 IPC_STRUCT_MEMBER(int64
, max_count
)
149 IPC_STRUCT_BEGIN(IndexedDBMsg_BlobOrFileInfo
)
150 IPC_STRUCT_MEMBER(bool, is_file
)
151 IPC_STRUCT_MEMBER(std::string
, uuid
)
152 IPC_STRUCT_MEMBER(base::string16
, mime_type
)
153 IPC_STRUCT_MEMBER(uint64
, size
)
154 IPC_STRUCT_MEMBER(base::string16
, file_path
)
155 IPC_STRUCT_MEMBER(base::string16
, file_name
)
156 IPC_STRUCT_MEMBER(double, last_modified
)
159 IPC_STRUCT_BEGIN(IndexedDBMsg_Value
)
160 // The serialized value being transferred.
161 IPC_STRUCT_MEMBER(std::string
, bits
)
162 // Sideband data for any blob or file encoded in value.
163 IPC_STRUCT_MEMBER(std::vector
<IndexedDBMsg_BlobOrFileInfo
>, blob_or_file_info
)
166 IPC_STRUCT_BEGIN_WITH_PARENT(IndexedDBMsg_ReturnValue
, IndexedDBMsg_Value
)
167 IPC_STRUCT_TRAITS_PARENT(IndexedDBMsg_Value
)
168 // Optional primary key & path used only when key generator specified.
169 IPC_STRUCT_MEMBER(content::IndexedDBKey
, primary_key
)
170 IPC_STRUCT_MEMBER(content::IndexedDBKeyPath
, key_path
)
173 // Used to set a value in an object store.
174 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabasePut_Params
)
175 // The id any response should contain.
176 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
177 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
178 // The database the object store belongs to.
179 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
180 // The transaction it's associated with.
181 IPC_STRUCT_MEMBER(int64
, transaction_id
)
182 // The object store's id.
183 IPC_STRUCT_MEMBER(int64
, object_store_id
)
185 IPC_STRUCT_MEMBER(int64
, index_id
)
187 IPC_STRUCT_MEMBER(IndexedDBMsg_Value
, value
)
188 // The key to set it on (may not be "valid"/set in some cases).
189 IPC_STRUCT_MEMBER(content::IndexedDBKey
, key
)
190 // Whether this is an add or a put.
191 IPC_STRUCT_MEMBER(blink::WebIDBPutMode
, put_mode
)
192 // The index ids and the list of keys for each index.
193 IPC_STRUCT_MEMBER(std::vector
<IndexKeys
>, index_keys
)
196 // Used to open both cursors and object cursors in IndexedDB.
197 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabaseOpenCursor_Params
)
198 // The response should have these ids.
199 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
200 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
201 // The database the object store belongs to.
202 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
203 // The transaction this request belongs to.
204 IPC_STRUCT_MEMBER(int64
, transaction_id
)
206 IPC_STRUCT_MEMBER(int64
, object_store_id
)
208 IPC_STRUCT_MEMBER(int64
, index_id
)
209 // The serialized key range.
210 IPC_STRUCT_MEMBER(content::IndexedDBKeyRange
, key_range
)
211 // The direction of this cursor.
212 IPC_STRUCT_MEMBER(blink::WebIDBCursorDirection
, direction
)
213 // If this is just retrieving the key
214 IPC_STRUCT_MEMBER(bool, key_only
)
215 // The priority of this cursor.
216 IPC_STRUCT_MEMBER(blink::WebIDBTaskType
, task_type
)
219 // Used to open both cursors and object cursors in IndexedDB.
220 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabaseCount_Params
)
221 // The response should have these ids.
222 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
223 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
224 // The transaction this request belongs to.
225 IPC_STRUCT_MEMBER(int64
, transaction_id
)
226 // The IPC id of the database.
227 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
229 IPC_STRUCT_MEMBER(int64
, object_store_id
)
231 IPC_STRUCT_MEMBER(int64
, index_id
)
232 // The serialized key range.
233 IPC_STRUCT_MEMBER(content::IndexedDBKeyRange
, key_range
)
236 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabaseDeleteRange_Params
)
237 // The response should have these ids.
238 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
239 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
240 // The IPC id of the database.
241 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
242 // The transaction this request belongs to.
243 IPC_STRUCT_MEMBER(int64
, transaction_id
)
245 IPC_STRUCT_MEMBER(int64
, object_store_id
)
246 // The serialized key range.
247 IPC_STRUCT_MEMBER(content::IndexedDBKeyRange
, key_range
)
250 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabaseSetIndexKeys_Params
)
251 // The IPC id of the database.
252 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
253 // The transaction this request belongs to.
254 IPC_STRUCT_MEMBER(int64
, transaction_id
)
255 // The object store's id.
256 IPC_STRUCT_MEMBER(int64
, object_store_id
)
257 // The object store key that we're setting index keys for.
258 IPC_STRUCT_MEMBER(content::IndexedDBKey
, primary_key
)
259 // The index ids and the list of keys for each index.
260 IPC_STRUCT_MEMBER(std::vector
<IndexKeys
>, index_keys
)
263 // Used to create an index.
264 IPC_STRUCT_BEGIN(IndexedDBHostMsg_DatabaseCreateIndex_Params
)
265 // The transaction this is associated with.
266 IPC_STRUCT_MEMBER(int64
, transaction_id
)
267 // The database being used.
268 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
269 // The object store the index belongs to.
270 IPC_STRUCT_MEMBER(int64
, object_store_id
)
271 // The storage id of the index.
272 IPC_STRUCT_MEMBER(int64
, index_id
)
273 // The name of the index.
274 IPC_STRUCT_MEMBER(base::string16
, name
)
275 // The keyPath of the index.
276 IPC_STRUCT_MEMBER(content::IndexedDBKeyPath
, key_path
)
277 // Whether the index created has unique keys.
278 IPC_STRUCT_MEMBER(bool, unique
)
279 // Whether the index created produces keys for each array entry.
280 IPC_STRUCT_MEMBER(bool, multi_entry
)
283 IPC_STRUCT_BEGIN(IndexedDBMsg_CallbacksSuccessIDBCursor_Params
)
284 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
285 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
286 IPC_STRUCT_MEMBER(int32
, ipc_cursor_id
)
287 IPC_STRUCT_MEMBER(content::IndexedDBKey
, key
)
288 IPC_STRUCT_MEMBER(content::IndexedDBKey
, primary_key
)
289 IPC_STRUCT_MEMBER(IndexedDBMsg_Value
, value
)
292 IPC_STRUCT_BEGIN(IndexedDBMsg_CallbacksSuccessCursorContinue_Params
)
293 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
294 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
295 IPC_STRUCT_MEMBER(int32
, ipc_cursor_id
)
296 IPC_STRUCT_MEMBER(content::IndexedDBKey
, key
)
297 IPC_STRUCT_MEMBER(content::IndexedDBKey
, primary_key
)
298 IPC_STRUCT_MEMBER(IndexedDBMsg_Value
, value
)
301 IPC_STRUCT_BEGIN(IndexedDBMsg_CallbacksSuccessCursorPrefetch_Params
)
302 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
303 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
304 IPC_STRUCT_MEMBER(int32
, ipc_cursor_id
)
305 IPC_STRUCT_MEMBER(std::vector
<content::IndexedDBKey
>, keys
)
306 IPC_STRUCT_MEMBER(std::vector
<content::IndexedDBKey
>, primary_keys
)
307 IPC_STRUCT_MEMBER(std::vector
<IndexedDBMsg_Value
>, values
)
310 IPC_STRUCT_BEGIN(IndexedDBMsg_CallbacksSuccessArray_Params
)
311 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
312 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
313 IPC_STRUCT_MEMBER(std::vector
<IndexedDBMsg_ReturnValue
>, values
)
316 IPC_STRUCT_BEGIN(IndexedDBMsg_CallbacksSuccessValue_Params
)
317 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
318 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
319 IPC_STRUCT_MEMBER(IndexedDBMsg_ReturnValue
, value
)
322 IPC_STRUCT_BEGIN(IndexedDBIndexMetadata
)
323 IPC_STRUCT_MEMBER(int64
, id
)
324 IPC_STRUCT_MEMBER(base::string16
, name
)
325 IPC_STRUCT_MEMBER(content::IndexedDBKeyPath
, key_path
)
326 IPC_STRUCT_MEMBER(bool, unique
)
327 IPC_STRUCT_MEMBER(bool, multi_entry
)
330 IPC_STRUCT_BEGIN(IndexedDBObjectStoreMetadata
)
331 IPC_STRUCT_MEMBER(int64
, id
)
332 IPC_STRUCT_MEMBER(base::string16
, name
)
333 IPC_STRUCT_MEMBER(content::IndexedDBKeyPath
, key_path
)
334 IPC_STRUCT_MEMBER(bool, auto_increment
)
335 IPC_STRUCT_MEMBER(int64
, max_index_id
)
336 IPC_STRUCT_MEMBER(std::vector
<IndexedDBIndexMetadata
>, indexes
)
339 IPC_STRUCT_BEGIN(IndexedDBDatabaseMetadata
)
340 IPC_STRUCT_MEMBER(int64
, id
)
341 IPC_STRUCT_MEMBER(base::string16
, name
)
342 IPC_STRUCT_MEMBER(base::string16
, version
)
343 IPC_STRUCT_MEMBER(int64
, int_version
)
344 IPC_STRUCT_MEMBER(int64
, max_object_store_id
)
345 IPC_STRUCT_MEMBER(std::vector
<IndexedDBObjectStoreMetadata
>, object_stores
)
348 IPC_STRUCT_BEGIN(IndexedDBMsg_CallbacksUpgradeNeeded_Params
)
349 IPC_STRUCT_MEMBER(int32
, ipc_thread_id
)
350 IPC_STRUCT_MEMBER(int32
, ipc_callbacks_id
)
351 IPC_STRUCT_MEMBER(int32
, ipc_database_callbacks_id
)
352 IPC_STRUCT_MEMBER(int32
, ipc_database_id
)
353 IPC_STRUCT_MEMBER(int64
, old_version
)
354 IPC_STRUCT_MEMBER(blink::WebIDBDataLoss
, data_loss
)
355 IPC_STRUCT_MEMBER(std::string
, data_loss_message
)
356 IPC_STRUCT_MEMBER(IndexedDBDatabaseMetadata
, idb_metadata
)
359 // Indexed DB messages sent from the browser to the renderer.
361 // The thread_id needs to be the first parameter in these messages. In the IO
362 // thread on the renderer/client process, an IDB message filter assumes the
363 // thread_id is the first int.
365 // IDBCallback message handlers.
366 IPC_MESSAGE_CONTROL1(IndexedDBMsg_CallbacksSuccessIDBCursor
,
367 IndexedDBMsg_CallbacksSuccessIDBCursor_Params
)
369 IPC_MESSAGE_CONTROL1(IndexedDBMsg_CallbacksSuccessCursorContinue
,
370 IndexedDBMsg_CallbacksSuccessCursorContinue_Params
)
372 IPC_MESSAGE_CONTROL1(IndexedDBMsg_CallbacksSuccessCursorAdvance
,
373 IndexedDBMsg_CallbacksSuccessCursorContinue_Params
)
375 IPC_MESSAGE_CONTROL1(IndexedDBMsg_CallbacksSuccessCursorPrefetch
,
376 IndexedDBMsg_CallbacksSuccessCursorPrefetch_Params
)
378 IPC_MESSAGE_CONTROL1(IndexedDBMsg_CallbacksSuccessArray
,
379 IndexedDBMsg_CallbacksSuccessArray_Params
)
381 IPC_MESSAGE_CONTROL5(IndexedDBMsg_CallbacksSuccessIDBDatabase
,
382 int32
/* ipc_thread_id */,
383 int32
/* ipc_callbacks_id */,
384 int32
/* ipc_database_callbacks_id */,
385 int32
/* ipc_database_id */,
386 IndexedDBDatabaseMetadata
)
387 IPC_MESSAGE_CONTROL3(IndexedDBMsg_CallbacksSuccessIndexedDBKey
,
388 int32
/* ipc_thread_id */,
389 int32
/* ipc_callbacks_id */,
390 content::IndexedDBKey
/* indexed_db_key */)
392 IPC_MESSAGE_CONTROL1(IndexedDBMsg_CallbacksSuccessValue
,
393 IndexedDBMsg_CallbacksSuccessValue_Params
)
395 IPC_MESSAGE_CONTROL3(IndexedDBMsg_CallbacksSuccessInteger
,
396 int32
/* ipc_thread_id */,
397 int32
/* ipc_callbacks_id */,
399 IPC_MESSAGE_CONTROL2(IndexedDBMsg_CallbacksSuccessUndefined
,
400 int32
/* ipc_thread_id */,
401 int32
/* ipc_callbacks_id */)
402 IPC_MESSAGE_CONTROL3(IndexedDBMsg_CallbacksSuccessStringList
,
403 int32
/* ipc_thread_id */,
404 int32
/* ipc_callbacks_id */,
405 std::vector
<base::string16
> /* dom_string_list */)
406 IPC_MESSAGE_CONTROL4(IndexedDBMsg_CallbacksError
,
407 int32
/* ipc_thread_id */,
408 int32
/* ipc_callbacks_id */,
410 base::string16
/* message */)
411 IPC_MESSAGE_CONTROL2(IndexedDBMsg_CallbacksBlocked
,
412 int32
/* ipc_thread_id */,
413 int32
/* ipc_callbacks_id */)
414 IPC_MESSAGE_CONTROL3(IndexedDBMsg_CallbacksIntBlocked
,
415 int32
/* ipc_thread_id */,
416 int32
/* ipc_callbacks_id */,
417 int64
/* existing_version */)
418 IPC_MESSAGE_CONTROL1(IndexedDBMsg_CallbacksUpgradeNeeded
,
419 IndexedDBMsg_CallbacksUpgradeNeeded_Params
)
421 // IDBDatabaseCallback message handlers
422 IPC_MESSAGE_CONTROL2(IndexedDBMsg_DatabaseCallbacksForcedClose
,
423 int32
, /* ipc_thread_id */
424 int32
) /* ipc_database_callbacks_id */
425 IPC_MESSAGE_CONTROL4(IndexedDBMsg_DatabaseCallbacksIntVersionChange
,
426 int32
, /* ipc_thread_id */
427 int32
, /* ipc_database_callbacks_id */
428 int64
, /* old_version */
429 int64
) /* new_version */
430 IPC_MESSAGE_CONTROL5(IndexedDBMsg_DatabaseCallbacksAbort
,
431 int32
, /* ipc_thread_id */
432 int32
, /* ipc_database_callbacks_id */
433 int64
, /* transaction_id */
435 base::string16
) /* message */
436 IPC_MESSAGE_CONTROL3(IndexedDBMsg_DatabaseCallbacksComplete
,
437 int32
, /* ipc_thread_id */
438 int32
, /* ipc_database_callbacks_id */
439 int64
) /* transaction_id */
441 // Indexed DB messages sent from the renderer to the browser.
443 // WebIDBCursor::advance() message.
444 IPC_MESSAGE_CONTROL4(IndexedDBHostMsg_CursorAdvance
,
445 int32
, /* ipc_cursor_id */
446 int32
, /* ipc_thread_id */
447 int32
, /* ipc_callbacks_id */
450 // WebIDBCursor::continue() message.
451 IPC_MESSAGE_CONTROL5(IndexedDBHostMsg_CursorContinue
,
452 int32
, /* ipc_cursor_id */
453 int32
, /* ipc_thread_id */
454 int32
, /* ipc_callbacks_id */
455 content::IndexedDBKey
, /* key */
456 content::IndexedDBKey
) /* primary_key */
458 // WebIDBCursor::prefetchContinue() message.
459 IPC_MESSAGE_CONTROL4(IndexedDBHostMsg_CursorPrefetch
,
460 int32
, /* ipc_cursor_id */
461 int32
, /* ipc_thread_id */
462 int32
, /* ipc_callbacks_id */
465 // WebIDBCursor::prefetchReset() message.
466 IPC_MESSAGE_CONTROL3(IndexedDBHostMsg_CursorPrefetchReset
,
467 int32
, /* ipc_cursor_id */
468 int32
, /* used_prefetches */
469 int32
) /* used_prefetches */
471 // WebIDBFactory::getDatabaseNames() message.
472 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_FactoryGetDatabaseNames
,
473 IndexedDBHostMsg_FactoryGetDatabaseNames_Params
)
475 // WebIDBFactory::open() message.
476 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_FactoryOpen
,
477 IndexedDBHostMsg_FactoryOpen_Params
)
479 // WebIDBFactory::deleteDatabase() message.
480 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_FactoryDeleteDatabase
,
481 IndexedDBHostMsg_FactoryDeleteDatabase_Params
)
483 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_AckReceivedBlobs
,
484 std::vector
<std::string
>) /* uuids */
486 // WebIDBDatabase::createObjectStore() message.
487 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseCreateObjectStore
,
488 IndexedDBHostMsg_DatabaseCreateObjectStore_Params
)
490 // WebIDBDatabase::deleteObjectStore() message.
491 IPC_MESSAGE_CONTROL3(IndexedDBHostMsg_DatabaseDeleteObjectStore
,
492 int32
, /* ipc_database_id */
493 int64
, /* transaction_id */
494 int64
) /* object_store_id */
496 // WebIDBDatabase::createTransaction() message.
497 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseCreateTransaction
,
498 IndexedDBHostMsg_DatabaseCreateTransaction_Params
)
500 // WebIDBDatabase::close() message.
501 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseClose
,
502 int32
/* ipc_database_id */)
504 // WebIDBDatabase::versionChangeIgnored() message.
505 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseVersionChangeIgnored
,
506 int32
/* ipc_database_id */)
508 // WebIDBDatabase::~WebIDBDatabase() message.
509 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseDestroyed
,
510 int32
/* ipc_database_id */)
512 // WebIDBDatabase::get() message.
513 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseGet
,
514 IndexedDBHostMsg_DatabaseGet_Params
)
516 // WebIDBDatabase::getAll() message.
517 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseGetAll
,
518 IndexedDBHostMsg_DatabaseGetAll_Params
)
520 // WebIDBDatabase::put() message.
521 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabasePut
,
522 IndexedDBHostMsg_DatabasePut_Params
)
524 // WebIDBDatabase::setIndexKeys() message.
525 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseSetIndexKeys
,
526 IndexedDBHostMsg_DatabaseSetIndexKeys_Params
)
528 // WebIDBDatabase::setIndexesReady() message.
529 IPC_MESSAGE_CONTROL4(IndexedDBHostMsg_DatabaseSetIndexesReady
,
530 int32
, /* ipc_database_id */
531 int64
, /* transaction_id */
532 int64
, /* object_store_id */
533 std::vector
<int64
>) /* index_ids */
535 // WebIDBDatabase::openCursor() message.
536 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseOpenCursor
,
537 IndexedDBHostMsg_DatabaseOpenCursor_Params
)
539 // WebIDBDatabase::count() message.
540 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseCount
,
541 IndexedDBHostMsg_DatabaseCount_Params
)
543 // WebIDBDatabase::deleteRange() message.
544 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseDeleteRange
,
545 IndexedDBHostMsg_DatabaseDeleteRange_Params
)
547 // WebIDBDatabase::clear() message.
548 IPC_MESSAGE_CONTROL5(IndexedDBHostMsg_DatabaseClear
,
549 int32
, /* ipc_thread_id */
550 int32
, /* ipc_callbacks_id */
551 int32
, /* ipc_database_id */
552 int64
, /* transaction_id */
553 int64
) /* object_store_id */
555 // WebIDBDatabase::createIndex() message.
556 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_DatabaseCreateIndex
,
557 IndexedDBHostMsg_DatabaseCreateIndex_Params
)
559 // WebIDBDatabase::deleteIndex() message.
560 IPC_MESSAGE_CONTROL4(IndexedDBHostMsg_DatabaseDeleteIndex
,
561 int32
, /* ipc_database_id */
562 int64
, /* transaction_id */
563 int64
, /* object_store_id */
564 int64
) /* index_id */
566 // WebIDBDatabase::abort() message.
567 IPC_MESSAGE_CONTROL2(IndexedDBHostMsg_DatabaseAbort
,
568 int32
, /* ipc_database_id */
569 int64
) /* transaction_id */
571 // WebIDBDatabase::commit() message.
572 IPC_MESSAGE_CONTROL2(IndexedDBHostMsg_DatabaseCommit
,
573 int32
, /* ipc_database_id */
574 int64
) /* transaction_id */
576 // WebIDBDatabase::~WebIDBCursor() message.
577 IPC_MESSAGE_CONTROL1(IndexedDBHostMsg_CursorDestroyed
,
578 int32
/* ipc_cursor_id */)