/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ include protocol PBackgroundIDBDatabaseFile; include protocol PBackgroundIDBFactory; include protocol PBackgroundIDBTransaction; include protocol PBackgroundIDBVersionChangeTransaction; include IPCBlob; include InputStreamParams; include PBackgroundIDBSharedTypes; include "mozilla/dom/indexedDB/SerializationHelpers.h"; include "mozilla/dom/indexedDB/ActorsChild.h"; using struct mozilla::null_t from "mozilla/ipc/IPCCore.h"; using mozilla::dom::IDBTransaction::Mode from "mozilla/dom/IDBTransaction.h"; namespace mozilla { namespace dom { namespace indexedDB { [ManualDealloc, ChildImpl="indexedDB::BackgroundDatabaseChild", ParentImpl=virtual] sync protocol PBackgroundIDBDatabase { manager PBackgroundIDBFactory; manages PBackgroundIDBDatabaseFile; manages PBackgroundIDBTransaction; manages PBackgroundIDBVersionChangeTransaction; parent: async DeleteMe(); async Blocked(); async Close(); async PBackgroundIDBDatabaseFile(IPCBlob blob); async PBackgroundIDBTransaction(nsString[] objectStoreNames, Mode mode); child: async __delete__(); async VersionChange(uint64_t oldVersion, uint64_t? newVersion); async Invalidate(); async CloseAfterInvalidationComplete(); async PBackgroundIDBVersionChangeTransaction(uint64_t currentVersion, uint64_t requestedVersion, int64_t nextObjectStoreId, int64_t nextIndexId); }; } // namespace indexedDB } // namespace dom } // namespace mozilla