PBackgroundIDBDatabase.ipdl (1872B)
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/. */ 4 5 include protocol PBackgroundIDBDatabaseFile; 6 include protocol PBackgroundIDBFactory; 7 include protocol PBackgroundIDBTransaction; 8 include protocol PBackgroundIDBVersionChangeTransaction; 9 10 include IPCBlob; 11 include InputStreamParams; 12 include PBackgroundIDBSharedTypes; 13 14 include "mozilla/dom/indexedDB/SerializationHelpers.h"; 15 include "mozilla/dom/indexedDB/ActorsChild.h"; 16 17 using struct mozilla::null_t from "mozilla/ipc/IPCCore.h"; 18 19 using mozilla::dom::IDBTransaction::Mode 20 from "mozilla/dom/IDBTransaction.h"; 21 22 using mozilla::dom::IDBTransaction::Durability 23 from "mozilla/dom/IDBTransaction.h"; 24 25 namespace mozilla { 26 namespace dom { 27 namespace indexedDB { 28 29 [ChildImpl="indexedDB::BackgroundDatabaseChild", ParentImpl=virtual] 30 sync protocol PBackgroundIDBDatabase 31 { 32 manager PBackgroundIDBFactory; 33 34 manages PBackgroundIDBDatabaseFile; 35 manages PBackgroundIDBTransaction; 36 manages PBackgroundIDBVersionChangeTransaction; 37 38 parent: 39 async DeleteMe(); 40 41 async Blocked(); 42 43 async Close(); 44 45 async PBackgroundIDBDatabaseFile(IPCBlob blob); 46 47 async PBackgroundIDBTransaction(nsString[] objectStoreNames, Mode mode, Durability durability); 48 49 child: 50 async __delete__(); 51 52 async VersionChange(uint64_t oldVersion, uint64_t? newVersion); 53 54 async Invalidate(); 55 56 async CloseAfterInvalidationComplete(); 57 58 async PBackgroundIDBVersionChangeTransaction(uint64_t currentVersion, 59 uint64_t requestedVersion, 60 int64_t nextObjectStoreId, 61 int64_t nextIndexId); 62 }; 63 64 } // namespace indexedDB 65 } // namespace dom 66 } // namespace mozilla