Source code

Revision control

Other Tools

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 PBackgroundIDBDatabaseRequest;
7
include protocol PBackgroundIDBFactory;
8
include protocol PBackgroundIDBTransaction;
9
include protocol PBackgroundIDBVersionChangeTransaction;
10
include protocol PBackgroundMutableFile;
11
include protocol PChildToParentStream; // FIXME: bug 792908
12
include protocol PFileDescriptorSet; // FIXME: bug 792908
13
include protocol PIPCBlobInputStream; // FIXME: bug 792908
14
include protocol PParentToChildStream; // FIXME: bug 792908
15
16
include IPCBlob;
17
include InputStreamParams;
18
include PBackgroundIDBSharedTypes;
19
20
include "mozilla/dom/indexedDB/SerializationHelpers.h";
21
22
using struct mozilla::null_t
23
from "ipc/IPCMessageUtils.h";
24
25
using mozilla::dom::IDBTransaction::Mode
26
from "mozilla/dom/IDBTransaction.h";
27
28
namespace mozilla {
29
namespace dom {
30
namespace indexedDB {
31
32
struct CreateFileParams
33
{
34
nsString name;
35
nsString type;
36
};
37
38
union DatabaseRequestParams
39
{
40
CreateFileParams;
41
};
42
43
sync protocol PBackgroundIDBDatabase
44
{
45
manager PBackgroundIDBFactory;
46
47
manages PBackgroundIDBDatabaseFile;
48
manages PBackgroundIDBDatabaseRequest;
49
manages PBackgroundIDBTransaction;
50
manages PBackgroundIDBVersionChangeTransaction;
51
manages PBackgroundMutableFile;
52
53
parent:
54
async DeleteMe();
55
56
async Blocked();
57
58
async Close();
59
60
async PBackgroundIDBDatabaseFile(IPCBlob blob);
61
62
async PBackgroundIDBDatabaseRequest(DatabaseRequestParams params);
63
64
async PBackgroundIDBTransaction(nsString[] objectStoreNames, Mode mode);
65
66
child:
67
async __delete__();
68
69
async VersionChange(uint64_t oldVersion, uint64_t? newVersion);
70
71
async Invalidate();
72
73
async CloseAfterInvalidationComplete();
74
75
async PBackgroundIDBVersionChangeTransaction(uint64_t currentVersion,
76
uint64_t requestedVersion,
77
int64_t nextObjectStoreId,
78
int64_t nextIndexId);
79
80
async PBackgroundMutableFile(nsString name, nsString type);
81
};
82
83
} // namespace indexedDB
84
} // namespace dom
85
} // namespace mozilla