tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

PBackgroundIDBTransaction.ipdl (1538B)


      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 PBackgroundIDBCursor;
      6 include protocol PBackgroundIDBDatabase;
      7 include protocol PBackgroundIDBDatabaseFile;
      8 include protocol PBackgroundIDBRequest;
      9 
     10 include PBackgroundIDBSharedTypes;
     11 
     12 include "mozilla/dom/indexedDB/ActorsChild.h";
     13 
     14 namespace mozilla {
     15 namespace dom {
     16 namespace indexedDB {
     17 
     18 [ChildImpl="indexedDB::BackgroundTransactionChild", ParentImpl=virtual]
     19 protocol PBackgroundIDBTransaction {
     20   manager PBackgroundIDBDatabase;
     21 
     22   manages PBackgroundIDBCursor;
     23   manages PBackgroundIDBRequest;
     24 
     25 parent:
     26   async DeleteMe();
     27 
     28   // lastRequest is used with explicit commit to synchronize the
     29   // transaction's committing state with the parent side, to abort the
     30   // transaction in case of a request resulting in an error (see
     31   // https://w3c.github.io/IndexedDB/#async-execute-request, step 5.3.). With
     32   // automatic commit, this is not necessary, as the transaction's state will
     33   // only be set to committing after the last request completed.
     34   async Commit(int64_t? lastRequest);
     35   async Abort(nsresult resultCode);
     36 
     37   async PBackgroundIDBCursor(int64_t requestId, OpenCursorParams params);
     38 
     39   async PBackgroundIDBRequest(int64_t requestId, RequestParams params);
     40 
     41 child:
     42   async __delete__();
     43 
     44   async Complete(nsresult result);
     45 };
     46 
     47 }  // namespace indexedDB
     48 }  // namespace dom
     49 }  // namespace mozilla