summaryrefslogtreecommitdiffstats
path: root/dom/quota/PQuotaRequest.ipdl
diff options
context:
space:
mode:
Diffstat (limited to 'dom/quota/PQuotaRequest.ipdl')
-rw-r--r--dom/quota/PQuotaRequest.ipdl85
1 files changed, 85 insertions, 0 deletions
diff --git a/dom/quota/PQuotaRequest.ipdl b/dom/quota/PQuotaRequest.ipdl
new file mode 100644
index 0000000000..59a6cd0c2b
--- /dev/null
+++ b/dom/quota/PQuotaRequest.ipdl
@@ -0,0 +1,85 @@
+/* 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 PQuota;
+
+include "mozilla/dom/quota/SerializationHelpers.h";
+
+using mozilla::dom::quota::FullOriginMetadata
+ from "mozilla/dom/quota/CommonMetadata.h";
+
+namespace mozilla {
+namespace dom {
+namespace quota {
+
+struct StorageNameResponse
+{
+ nsString name;
+};
+
+struct InitializePersistentOriginResponse
+{
+ bool created;
+};
+
+struct InitializeTemporaryOriginResponse
+{
+ bool created;
+};
+
+struct GetFullOriginMetadataResponse
+{
+ FullOriginMetadata? maybeFullOriginMetadata;
+};
+
+struct ResetOriginResponse
+{
+};
+
+struct PersistedResponse
+{
+ bool persisted;
+};
+
+struct PersistResponse
+{
+};
+
+struct EstimateResponse
+{
+ uint64_t usage;
+ uint64_t limit;
+};
+
+struct ListOriginsResponse
+{
+ nsCString[] origins;
+};
+
+union RequestResponse
+{
+ nsresult;
+ StorageNameResponse;
+ InitializePersistentOriginResponse;
+ InitializeTemporaryOriginResponse;
+ GetFullOriginMetadataResponse;
+ ResetOriginResponse;
+ PersistedResponse;
+ PersistResponse;
+ EstimateResponse;
+ ListOriginsResponse;
+};
+
+[ManualDealloc, ChildImpl=virtual, ParentImpl=virtual]
+protocol PQuotaRequest
+{
+ manager PQuota;
+
+child:
+ async __delete__(RequestResponse response);
+};
+
+} // namespace quota
+} // namespace dom
+} // namespace mozilla