/* 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 StorageInitializedResponse { bool initialized; }; struct TemporaryStorageInitializedResponse { bool initialized; }; struct InitResponse { }; struct InitTemporaryStorageResponse { }; struct InitializePersistentOriginResponse { bool created; }; struct InitializeTemporaryOriginResponse { bool created; }; struct GetFullOriginMetadataResponse { FullOriginMetadata? maybeFullOriginMetadata; }; struct ClearOriginResponse { }; struct ResetOriginResponse { }; struct ClearDataResponse { }; struct ClearAllResponse { }; struct ResetAllResponse { }; struct PersistedResponse { bool persisted; }; struct PersistResponse { }; struct EstimateResponse { uint64_t usage; uint64_t limit; }; struct ListOriginsResponse { nsCString[] origins; }; union RequestResponse { nsresult; StorageNameResponse; StorageInitializedResponse; TemporaryStorageInitializedResponse; InitResponse; InitTemporaryStorageResponse; InitializePersistentOriginResponse; InitializeTemporaryOriginResponse; GetFullOriginMetadataResponse; ClearOriginResponse; ResetOriginResponse; ClearDataResponse; ClearAllResponse; ResetAllResponse; PersistedResponse; PersistResponse; EstimateResponse; ListOriginsResponse; }; [ManualDealloc, ChildImpl=virtual, ParentImpl=virtual] protocol PQuotaRequest { manager PQuota; child: async __delete__(RequestResponse response); }; } // namespace quota } // namespace dom } // namespace mozilla