ServiceWorkerContainerParent.h (1805B)
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */ 3 /* This Source Code Form is subject to the terms of the Mozilla Public 4 * License, v. 2.0. If a copy of the MPL was not distributed with this 5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 6 7 #ifndef mozilla_dom_serviceworkercontainerparent_h__ 8 #define mozilla_dom_serviceworkercontainerparent_h__ 9 10 #include "mozilla/dom/PServiceWorkerContainerParent.h" 11 12 namespace mozilla::dom { 13 14 class IPCServiceWorkerDescriptor; 15 class ServiceWorkerContainerProxy; 16 17 class ServiceWorkerContainerParent final 18 : public PServiceWorkerContainerParent { 19 RefPtr<ServiceWorkerContainerProxy> mProxy; 20 21 ~ServiceWorkerContainerParent(); 22 23 // PServiceWorkerContainerParent 24 void ActorDestroy(ActorDestroyReason aReason) override; 25 26 mozilla::ipc::IPCResult RecvRegister( 27 const IPCClientInfo& aClientInfo, const nsACString& aScopeURL, 28 const WorkerType& aType, const nsACString& aScriptURL, 29 const ServiceWorkerUpdateViaCache& aUpdateViaCache, 30 RegisterResolver&& aResolver) override; 31 32 mozilla::ipc::IPCResult RecvGetRegistration( 33 const IPCClientInfo& aClientInfo, const nsACString& aURL, 34 GetRegistrationResolver&& aResolver) override; 35 36 mozilla::ipc::IPCResult RecvGetRegistrations( 37 const IPCClientInfo& aClientInfo, 38 GetRegistrationsResolver&& aResolver) override; 39 40 mozilla::ipc::IPCResult RecvGetReady(const IPCClientInfo& aClientInfo, 41 GetReadyResolver&& aResolver) override; 42 43 public: 44 NS_INLINE_DECL_REFCOUNTING(ServiceWorkerContainerParent, override); 45 46 ServiceWorkerContainerParent(); 47 48 void Init(); 49 }; 50 51 } // namespace mozilla::dom 52 53 #endif // mozilla_dom_serviceworkercontainerparent_h__