gecko-dev/dom/indexedDB/PBackgroundIDBTransaction.ipdl

48 lines
1.4 KiB
Plaintext

/* 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 PBackgroundIDBCursor;
include protocol PBackgroundIDBDatabase;
include protocol PBackgroundIDBDatabaseFile;
include protocol PBackgroundIDBRequest;
include protocol PBackgroundMutableFile;
include PBackgroundIDBSharedTypes;
namespace mozilla {
namespace dom {
namespace indexedDB {
[RefCounted] protocol PBackgroundIDBTransaction {
manager PBackgroundIDBDatabase;
manages PBackgroundIDBCursor;
manages PBackgroundIDBRequest;
parent:
async DeleteMe();
// lastRequest is used with explicit commit to synchronize the
// transaction's committing state with the parent side, to abort the
// transaction in case of a request resulting in an error (see
// https://w3c.github.io/IndexedDB/#async-execute-request, step 5.3.). With
// automatic commit, this is not necessary, as the transaction's state will
// only be set to committing after the last request completed.
async Commit(int64_t? lastRequest);
async Abort(nsresult resultCode);
async PBackgroundIDBCursor(OpenCursorParams params);
async PBackgroundIDBRequest(RequestParams params);
child:
async __delete__();
async Complete(nsresult result);
};
} // namespace indexedDB
} // namespace dom
} // namespace mozilla