2016-05-28 00:54:31 +03:00
|
|
|
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
|
|
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
|
2013-11-27 11:59:41 +04:00
|
|
|
/* 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/. */
|
|
|
|
|
|
|
|
#ifndef mozilla_ipc_backgroundparentimpl_h__
|
|
|
|
#define mozilla_ipc_backgroundparentimpl_h__
|
|
|
|
|
|
|
|
#include "mozilla/Attributes.h"
|
2019-12-03 16:41:58 +03:00
|
|
|
#include "mozilla/ipc/InputStreamUtils.h"
|
2013-11-27 11:59:41 +04:00
|
|
|
#include "mozilla/ipc/PBackgroundParent.h"
|
|
|
|
|
|
|
|
namespace mozilla {
|
2015-01-14 02:37:00 +03:00
|
|
|
|
|
|
|
namespace layout {
|
|
|
|
class VsyncParent;
|
2015-07-13 18:25:42 +03:00
|
|
|
} // namespace layout
|
2015-01-14 02:37:00 +03:00
|
|
|
|
2013-11-27 11:59:41 +04:00
|
|
|
namespace ipc {
|
|
|
|
|
|
|
|
// Instances of this class should never be created directly. This class is meant
|
|
|
|
// to be inherited in BackgroundImpl.
|
2019-12-03 16:41:58 +03:00
|
|
|
class BackgroundParentImpl : public PBackgroundParent,
|
|
|
|
public ParentToChildStreamActorManager {
|
|
|
|
public:
|
|
|
|
PParentToChildStreamParent* SendPParentToChildStreamConstructor(
|
|
|
|
PParentToChildStreamParent* aActor) override;
|
|
|
|
PFileDescriptorSetParent* SendPFileDescriptorSetConstructor(
|
|
|
|
const FileDescriptor& aFD) override;
|
|
|
|
|
2013-11-27 11:59:41 +04:00
|
|
|
protected:
|
|
|
|
BackgroundParentImpl();
|
|
|
|
virtual ~BackgroundParentImpl();
|
|
|
|
|
2015-03-21 19:28:04 +03:00
|
|
|
virtual void ActorDestroy(ActorDestroyReason aWhy) override;
|
2013-11-27 11:59:41 +04:00
|
|
|
|
|
|
|
virtual PBackgroundTestParent* AllocPBackgroundTestParent(
|
2015-03-21 19:28:04 +03:00
|
|
|
const nsCString& aTestArg) override;
|
2013-11-27 11:59:41 +04:00
|
|
|
|
2016-11-15 06:26:00 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvPBackgroundTestConstructor(
|
2013-11-27 11:59:41 +04:00
|
|
|
PBackgroundTestParent* aActor, const nsCString& aTestArg) override;
|
|
|
|
|
2015-03-21 19:28:04 +03:00
|
|
|
virtual bool DeallocPBackgroundTestParent(
|
|
|
|
PBackgroundTestParent* aActor) override;
|
2014-09-27 03:21:57 +04:00
|
|
|
|
2020-05-06 15:20:14 +03:00
|
|
|
virtual already_AddRefed<PBackgroundIDBFactoryParent>
|
|
|
|
AllocPBackgroundIDBFactoryParent(const LoggingInfo& aLoggingInfo) override;
|
2014-09-27 03:21:57 +04:00
|
|
|
|
2020-05-07 17:39:21 +03:00
|
|
|
virtual already_AddRefed<net::PBackgroundDataBridgeParent>
|
|
|
|
AllocPBackgroundDataBridgeParent(const uint64_t& aChannelID) override;
|
|
|
|
|
2014-10-16 08:56:52 +04:00
|
|
|
virtual mozilla::ipc::IPCResult RecvPBackgroundIDBFactoryConstructor(
|
|
|
|
PBackgroundIDBFactoryParent* aActor,
|
|
|
|
const LoggingInfo& aLoggingInfo) override;
|
2014-09-27 03:21:57 +04:00
|
|
|
|
2015-11-22 12:44:33 +03:00
|
|
|
virtual PBackgroundIndexedDBUtilsParent*
|
|
|
|
AllocPBackgroundIndexedDBUtilsParent() override;
|
|
|
|
|
|
|
|
virtual bool DeallocPBackgroundIndexedDBUtilsParent(
|
|
|
|
PBackgroundIndexedDBUtilsParent* aActor) override;
|
|
|
|
|
2016-02-10 18:11:25 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvFlushPendingFileDeletions() override;
|
|
|
|
|
2018-08-20 15:33:03 +03:00
|
|
|
virtual PBackgroundSDBConnectionParent* AllocPBackgroundSDBConnectionParent(
|
2020-02-27 16:46:43 +03:00
|
|
|
const PersistenceType& aPersistenceType,
|
2018-08-20 15:33:03 +03:00
|
|
|
const PrincipalInfo& aPrincipalInfo) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPBackgroundSDBConnectionConstructor(
|
|
|
|
PBackgroundSDBConnectionParent* aActor,
|
2020-02-27 16:46:43 +03:00
|
|
|
const PersistenceType& aPersistenceType,
|
2018-08-20 15:33:03 +03:00
|
|
|
const PrincipalInfo& aPrincipalInfo) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPBackgroundSDBConnectionParent(
|
|
|
|
PBackgroundSDBConnectionParent* aActor) override;
|
|
|
|
|
2018-11-29 23:48:41 +03:00
|
|
|
virtual PBackgroundLSDatabaseParent* AllocPBackgroundLSDatabaseParent(
|
|
|
|
const PrincipalInfo& aPrincipalInfo, const uint32_t& aPrivateBrowsingId,
|
|
|
|
const uint64_t& aDatastoreId) override;
|
2018-11-29 23:47:20 +03:00
|
|
|
|
2018-11-29 23:48:41 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvPBackgroundLSDatabaseConstructor(
|
|
|
|
PBackgroundLSDatabaseParent* aActor, const PrincipalInfo& aPrincipalInfo,
|
|
|
|
const uint32_t& aPrivateBrowsingId,
|
|
|
|
const uint64_t& aDatastoreId) override;
|
2018-11-29 23:47:45 +03:00
|
|
|
|
2018-11-29 23:48:41 +03:00
|
|
|
virtual bool DeallocPBackgroundLSDatabaseParent(
|
|
|
|
PBackgroundLSDatabaseParent* aActor) override;
|
2018-11-29 23:47:45 +03:00
|
|
|
|
|
|
|
virtual PBackgroundLSObserverParent* AllocPBackgroundLSObserverParent(
|
|
|
|
const uint64_t& aObserverId) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPBackgroundLSObserverConstructor(
|
|
|
|
PBackgroundLSObserverParent* aActor,
|
|
|
|
const uint64_t& aObserverId) override;
|
2018-11-29 23:47:20 +03:00
|
|
|
|
2018-11-29 23:47:45 +03:00
|
|
|
virtual bool DeallocPBackgroundLSObserverParent(
|
|
|
|
PBackgroundLSObserverParent* aActor) override;
|
2018-11-29 23:47:20 +03:00
|
|
|
|
|
|
|
virtual PBackgroundLSRequestParent* AllocPBackgroundLSRequestParent(
|
|
|
|
const LSRequestParams& aParams) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPBackgroundLSRequestConstructor(
|
|
|
|
PBackgroundLSRequestParent* aActor,
|
|
|
|
const LSRequestParams& aParams) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPBackgroundLSRequestParent(
|
|
|
|
PBackgroundLSRequestParent* aActor) override;
|
|
|
|
|
2018-11-29 23:48:15 +03:00
|
|
|
virtual PBackgroundLSSimpleRequestParent*
|
|
|
|
AllocPBackgroundLSSimpleRequestParent(
|
|
|
|
const LSSimpleRequestParams& aParams) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPBackgroundLSSimpleRequestConstructor(
|
|
|
|
PBackgroundLSSimpleRequestParent* aActor,
|
|
|
|
const LSSimpleRequestParams& aParams) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPBackgroundLSSimpleRequestParent(
|
|
|
|
PBackgroundLSSimpleRequestParent* aActor) override;
|
|
|
|
|
2019-02-07 21:51:16 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvLSClearPrivateBrowsing() override;
|
|
|
|
|
2018-07-14 09:34:14 +03:00
|
|
|
virtual PBackgroundLocalStorageCacheParent*
|
|
|
|
AllocPBackgroundLocalStorageCacheParent(
|
|
|
|
const PrincipalInfo& aPrincipalInfo, const nsCString& aOriginKey,
|
|
|
|
const uint32_t& aPrivateBrowsingId) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPBackgroundLocalStorageCacheConstructor(
|
|
|
|
PBackgroundLocalStorageCacheParent* aActor,
|
|
|
|
const PrincipalInfo& aPrincipalInfo, const nsCString& aOriginKey,
|
|
|
|
const uint32_t& aPrivateBrowsingId) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPBackgroundLocalStorageCacheParent(
|
|
|
|
PBackgroundLocalStorageCacheParent* aActor) override;
|
|
|
|
|
2017-08-08 23:56:49 +03:00
|
|
|
virtual PBackgroundStorageParent* AllocPBackgroundStorageParent(
|
2017-08-09 00:01:52 +03:00
|
|
|
const nsString& aProfilePath) override;
|
2017-08-08 23:56:49 +03:00
|
|
|
|
2017-08-09 00:01:52 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvPBackgroundStorageConstructor(
|
|
|
|
PBackgroundStorageParent* aActor, const nsString& aProfilePath) override;
|
2017-08-08 23:56:49 +03:00
|
|
|
|
|
|
|
virtual bool DeallocPBackgroundStorageParent(
|
|
|
|
PBackgroundStorageParent* aActor) override;
|
|
|
|
|
2019-09-24 17:33:57 +03:00
|
|
|
virtual already_AddRefed<PIdleSchedulerParent> AllocPIdleSchedulerParent()
|
|
|
|
override;
|
|
|
|
|
2019-08-08 19:46:46 +03:00
|
|
|
virtual already_AddRefed<PIPCBlobInputStreamParent>
|
|
|
|
AllocPIPCBlobInputStreamParent(const nsID& aID,
|
|
|
|
const uint64_t& aSize) override;
|
Bug 1353629 - PBlob refactoring - part 4 - IPCBlobInputStream, r=smaug
IPCBlobInputStream is a new type of nsIInputStream that is used only in content
process when a Blob is sent from parent to child. This inputStream is for now,
just cloneable.
When the parent process sends a Blob to a content process, it has the Blob and
its inputStream. With its inputStream it creates a IPCBlobInputStreamParent
actor. This actor keeps the inputStream alive for following uses (not part of
this patch).
On the child side we will have, of course, a IPCBlobInputStreamChild actor.
This actor is able to create a IPCBlobInputStream when CreateStream() is
called. This means that 1 IPCBlobInputStreamChild can manage multiple
IPCBlobInputStreams each time one of them is cloned. When the last one of this
stream is released, the child actor sends a __delete__ request to the parent
side; the parent will be deleted, and the original inputStream, on the parent
side, will be released as well.
IPCBlobInputStream is a special inputStream because each method, except for
Available() fails. Basically, this inputStream cannot be used on the content
process for nothing else than knowing the size of the original stream.
In the following patches, I'll introduce an async way to use it.
2017-04-24 13:09:40 +03:00
|
|
|
|
2017-05-31 08:41:10 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvPIPCBlobInputStreamConstructor(
|
|
|
|
PIPCBlobInputStreamParent* aActor, const nsID& aID,
|
|
|
|
const uint64_t& aSize) override;
|
|
|
|
|
2017-10-05 08:41:42 +03:00
|
|
|
virtual PTemporaryIPCBlobParent* AllocPTemporaryIPCBlobParent() override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPTemporaryIPCBlobConstructor(
|
|
|
|
PTemporaryIPCBlobParent* actor) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPTemporaryIPCBlobParent(
|
|
|
|
PTemporaryIPCBlobParent* aActor) override;
|
|
|
|
|
2019-04-26 20:53:07 +03:00
|
|
|
virtual PFileCreatorParent* AllocPFileCreatorParent(
|
|
|
|
const nsString& aFullPath, const nsString& aType, const nsString& aName,
|
|
|
|
const Maybe<int64_t>& aLastModified, const bool& aExistenceCheck,
|
|
|
|
const bool& aIsFromNsIFile) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPFileCreatorConstructor(
|
|
|
|
PFileCreatorParent* actor, const nsString& aFullPath,
|
|
|
|
const nsString& aType, const nsString& aName,
|
|
|
|
const Maybe<int64_t>& aLastModified, const bool& aExistenceCheck,
|
|
|
|
const bool& aIsFromNsIFile) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPFileCreatorParent(PFileCreatorParent* aActor) override;
|
|
|
|
|
2018-11-20 02:18:32 +03:00
|
|
|
virtual mozilla::dom::PRemoteWorkerParent* AllocPRemoteWorkerParent(
|
|
|
|
const RemoteWorkerData& aData) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPRemoteWorkerParent(PRemoteWorkerParent* aActor) override;
|
|
|
|
|
2019-08-15 20:26:49 +03:00
|
|
|
virtual mozilla::dom::PRemoteWorkerControllerParent*
|
|
|
|
AllocPRemoteWorkerControllerParent(
|
|
|
|
const mozilla::dom::RemoteWorkerData& aRemoteWorkerData) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPRemoteWorkerControllerConstructor(
|
|
|
|
mozilla::dom::PRemoteWorkerControllerParent* aActor,
|
|
|
|
const mozilla::dom::RemoteWorkerData& aRemoteWorkerData) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPRemoteWorkerControllerParent(
|
|
|
|
mozilla::dom::PRemoteWorkerControllerParent* aActor) override;
|
|
|
|
|
2018-11-20 02:18:32 +03:00
|
|
|
virtual mozilla::dom::PRemoteWorkerServiceParent*
|
|
|
|
AllocPRemoteWorkerServiceParent() override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPRemoteWorkerServiceConstructor(
|
|
|
|
PRemoteWorkerServiceParent* aActor) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPRemoteWorkerServiceParent(
|
|
|
|
PRemoteWorkerServiceParent* aActor) override;
|
|
|
|
|
2018-11-20 02:18:20 +03:00
|
|
|
virtual mozilla::dom::PSharedWorkerParent* AllocPSharedWorkerParent(
|
2018-11-20 02:18:33 +03:00
|
|
|
const mozilla::dom::RemoteWorkerData& aData, const uint64_t& aWindowID,
|
|
|
|
const mozilla::dom::MessagePortIdentifier& aPortIdentifier) override;
|
2018-11-20 02:18:20 +03:00
|
|
|
|
2018-11-20 02:18:21 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvPSharedWorkerConstructor(
|
2018-11-20 02:18:33 +03:00
|
|
|
PSharedWorkerParent* aActor, const mozilla::dom::RemoteWorkerData& aData,
|
|
|
|
const uint64_t& aWindowID,
|
|
|
|
const mozilla::dom::MessagePortIdentifier& aPortIdentifier) override;
|
2018-11-20 02:18:21 +03:00
|
|
|
|
2018-11-20 02:18:20 +03:00
|
|
|
virtual bool DeallocPSharedWorkerParent(PSharedWorkerParent* aActor) override;
|
|
|
|
|
2014-09-27 03:21:57 +04:00
|
|
|
virtual PFileDescriptorSetParent* AllocPFileDescriptorSetParent(
|
|
|
|
const FileDescriptor& aFileDescriptor) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPFileDescriptorSetParent(
|
|
|
|
PFileDescriptorSetParent* aActor) override;
|
2015-01-14 02:37:00 +03:00
|
|
|
|
2015-03-21 19:28:04 +03:00
|
|
|
virtual PVsyncParent* AllocPVsyncParent() override;
|
2015-01-14 02:37:00 +03:00
|
|
|
|
2015-03-21 19:28:04 +03:00
|
|
|
virtual bool DeallocPVsyncParent(PVsyncParent* aActor) override;
|
2015-01-15 19:58:40 +03:00
|
|
|
|
2020-02-28 13:58:56 +03:00
|
|
|
already_AddRefed<mozilla::psm::PVerifySSLServerCertParent>
|
|
|
|
AllocPVerifySSLServerCertParent(
|
|
|
|
const ByteArray& aServerCert, const nsTArray<ByteArray>& aPeerCertChain,
|
|
|
|
const nsCString& aHostName, const int32_t& aPort,
|
|
|
|
const OriginAttributes& aOriginAttributes,
|
|
|
|
const Maybe<ByteArray>& aStapledOCSPResponse,
|
|
|
|
const Maybe<ByteArray>& aSctsFromTLSExtension,
|
|
|
|
const Maybe<DelegatedCredentialInfoArg>& aDcInfo,
|
|
|
|
const uint32_t& aProviderFlags,
|
|
|
|
const uint32_t& aCertVerifierFlags) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPVerifySSLServerCertConstructor(
|
|
|
|
PVerifySSLServerCertParent* aActor, const ByteArray& aServerCert,
|
|
|
|
nsTArray<ByteArray>&& aPeerCertChain, const nsCString& aHostName,
|
|
|
|
const int32_t& aPort, const OriginAttributes& aOriginAttributes,
|
|
|
|
const Maybe<ByteArray>& aStapledOCSPResponse,
|
|
|
|
const Maybe<ByteArray>& aSctsFromTLSExtension,
|
|
|
|
const Maybe<DelegatedCredentialInfoArg>& aDcInfo,
|
|
|
|
const uint32_t& aProviderFlags,
|
|
|
|
const uint32_t& aCertVerifierFlags) override;
|
|
|
|
|
2015-01-15 19:58:40 +03:00
|
|
|
virtual PBroadcastChannelParent* AllocPBroadcastChannelParent(
|
|
|
|
const PrincipalInfo& aPrincipalInfo, const nsCString& aOrigin,
|
2016-06-07 14:50:00 +03:00
|
|
|
const nsString& aChannel) override;
|
2015-01-15 19:58:40 +03:00
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPBroadcastChannelConstructor(
|
|
|
|
PBroadcastChannelParent* actor, const PrincipalInfo& aPrincipalInfo,
|
2016-06-07 14:50:00 +03:00
|
|
|
const nsCString& origin, const nsString& channel) override;
|
2015-01-15 19:58:40 +03:00
|
|
|
|
2015-03-21 19:28:04 +03:00
|
|
|
virtual bool DeallocPBroadcastChannelParent(
|
|
|
|
PBroadcastChannelParent* aActor) override;
|
2015-02-11 14:53:00 +03:00
|
|
|
|
2017-03-14 14:28:58 +03:00
|
|
|
virtual PChildToParentStreamParent* AllocPChildToParentStreamParent()
|
|
|
|
override;
|
2016-05-15 20:32:09 +03:00
|
|
|
|
2017-03-14 14:28:58 +03:00
|
|
|
virtual bool DeallocPChildToParentStreamParent(
|
|
|
|
PChildToParentStreamParent* aActor) override;
|
2016-05-15 20:32:09 +03:00
|
|
|
|
2017-03-14 14:29:43 +03:00
|
|
|
virtual PParentToChildStreamParent* AllocPParentToChildStreamParent()
|
|
|
|
override;
|
|
|
|
|
|
|
|
virtual bool DeallocPParentToChildStreamParent(
|
|
|
|
PParentToChildStreamParent* aActor) override;
|
|
|
|
|
2015-06-04 21:51:57 +03:00
|
|
|
virtual PServiceWorkerManagerParent* AllocPServiceWorkerManagerParent()
|
|
|
|
override;
|
2015-02-11 14:53:00 +03:00
|
|
|
|
2015-06-04 21:51:57 +03:00
|
|
|
virtual bool DeallocPServiceWorkerManagerParent(
|
|
|
|
PServiceWorkerManagerParent* aActor) override;
|
2015-02-11 14:53:00 +03:00
|
|
|
|
2015-08-31 15:51:29 +03:00
|
|
|
virtual PCamerasParent* AllocPCamerasParent() override;
|
|
|
|
|
|
|
|
virtual bool DeallocPCamerasParent(PCamerasParent* aActor) override;
|
|
|
|
|
2015-03-21 19:28:04 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvShutdownServiceWorkerRegistrar() override;
|
2015-03-02 16:20:00 +03:00
|
|
|
|
|
|
|
virtual dom::cache::PCacheStorageParent* AllocPCacheStorageParent(
|
|
|
|
const dom::cache::Namespace& aNamespace,
|
2015-03-21 19:28:04 +03:00
|
|
|
const PrincipalInfo& aPrincipalInfo) override;
|
2015-03-02 16:20:00 +03:00
|
|
|
|
2015-03-21 19:28:04 +03:00
|
|
|
virtual bool DeallocPCacheStorageParent(
|
|
|
|
dom::cache::PCacheStorageParent* aActor) override;
|
2015-03-02 16:20:00 +03:00
|
|
|
|
2015-03-21 19:28:04 +03:00
|
|
|
virtual dom::cache::PCacheParent* AllocPCacheParent() override;
|
2015-03-02 16:20:00 +03:00
|
|
|
|
2015-03-21 19:28:04 +03:00
|
|
|
virtual bool DeallocPCacheParent(dom::cache::PCacheParent* aActor) override;
|
2015-03-02 16:20:00 +03:00
|
|
|
|
|
|
|
virtual dom::cache::PCacheStreamControlParent*
|
2015-03-21 19:28:04 +03:00
|
|
|
AllocPCacheStreamControlParent() override;
|
2015-03-02 16:20:00 +03:00
|
|
|
|
2015-05-29 17:14:14 +03:00
|
|
|
virtual bool DeallocPCacheStreamControlParent(
|
|
|
|
dom::cache::PCacheStreamControlParent* aActor) override;
|
|
|
|
|
|
|
|
virtual PUDPSocketParent* AllocPUDPSocketParent(
|
2019-03-05 17:41:42 +03:00
|
|
|
const Maybe<PrincipalInfo>& pInfo, const nsCString& aFilter) override;
|
2015-05-29 17:14:14 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvPUDPSocketConstructor(
|
2019-03-05 17:41:42 +03:00
|
|
|
PUDPSocketParent*, const Maybe<PrincipalInfo>& aPrincipalInfo,
|
2015-05-29 17:14:14 +03:00
|
|
|
const nsCString& aFilter) override;
|
|
|
|
virtual bool DeallocPUDPSocketParent(PUDPSocketParent*) override;
|
2015-06-17 13:44:27 +03:00
|
|
|
|
|
|
|
virtual PMessagePortParent* AllocPMessagePortParent(
|
|
|
|
const nsID& aUUID, const nsID& aDestinationUUID,
|
|
|
|
const uint32_t& aSequenceID) override;
|
|
|
|
|
2016-11-15 06:26:00 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvPMessagePortConstructor(
|
2015-06-17 13:44:27 +03:00
|
|
|
PMessagePortParent* aActor, const nsID& aUUID,
|
|
|
|
const nsID& aDestinationUUID, const uint32_t& aSequenceID) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPMessagePortParent(PMessagePortParent* aActor) override;
|
2015-06-24 01:50:00 +03:00
|
|
|
|
2016-11-15 06:26:00 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvMessagePortForceClose(
|
2015-06-24 01:50:00 +03:00
|
|
|
const nsID& aUUID, const nsID& aDestinationUUID,
|
|
|
|
const uint32_t& aSequenceID) override;
|
2015-08-29 08:45:04 +03:00
|
|
|
|
2015-11-22 12:43:55 +03:00
|
|
|
virtual PQuotaParent* AllocPQuotaParent() override;
|
|
|
|
|
|
|
|
virtual bool DeallocPQuotaParent(PQuotaParent* aActor) override;
|
2016-04-09 21:17:02 +03:00
|
|
|
|
2019-02-23 19:30:41 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvShutdownQuotaManager() override;
|
|
|
|
|
2019-08-08 19:46:37 +03:00
|
|
|
virtual already_AddRefed<PFileSystemRequestParent>
|
|
|
|
AllocPFileSystemRequestParent(const FileSystemParams&) override;
|
2016-04-09 21:17:02 +03:00
|
|
|
|
2017-03-16 10:53:49 +03:00
|
|
|
virtual mozilla::ipc::IPCResult RecvPFileSystemRequestConstructor(
|
|
|
|
PFileSystemRequestParent* actor, const FileSystemParams& params) override;
|
|
|
|
|
2016-06-28 01:25:00 +03:00
|
|
|
// Gamepad API Background IPC
|
|
|
|
virtual PGamepadEventChannelParent* AllocPGamepadEventChannelParent()
|
|
|
|
override;
|
|
|
|
|
|
|
|
virtual bool DeallocPGamepadEventChannelParent(
|
|
|
|
PGamepadEventChannelParent* aActor) override;
|
2016-06-28 01:26:00 +03:00
|
|
|
|
|
|
|
virtual PGamepadTestChannelParent* AllocPGamepadTestChannelParent() override;
|
|
|
|
|
|
|
|
virtual bool DeallocPGamepadTestChannelParent(
|
|
|
|
PGamepadTestChannelParent* aActor) override;
|
2017-05-05 03:48:34 +03:00
|
|
|
|
|
|
|
virtual PWebAuthnTransactionParent* AllocPWebAuthnTransactionParent()
|
|
|
|
override;
|
|
|
|
|
|
|
|
virtual bool DeallocPWebAuthnTransactionParent(
|
|
|
|
PWebAuthnTransactionParent* aActor) override;
|
2017-05-15 11:01:10 +03:00
|
|
|
|
2019-08-16 13:50:08 +03:00
|
|
|
virtual already_AddRefed<PHttpBackgroundChannelParent>
|
|
|
|
AllocPHttpBackgroundChannelParent(const uint64_t& aChannelId) override;
|
2017-05-15 11:01:10 +03:00
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPHttpBackgroundChannelConstructor(
|
|
|
|
PHttpBackgroundChannelParent* aActor,
|
|
|
|
const uint64_t& aChannelId) override;
|
2017-11-01 20:19:38 +03:00
|
|
|
|
|
|
|
virtual PClientManagerParent* AllocPClientManagerParent() override;
|
|
|
|
|
|
|
|
virtual bool DeallocPClientManagerParent(
|
|
|
|
PClientManagerParent* aActor) override;
|
2017-12-04 17:51:32 +03:00
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPClientManagerConstructor(
|
|
|
|
PClientManagerParent* aActor) override;
|
2017-11-15 22:19:59 +03:00
|
|
|
|
|
|
|
virtual PMIDIPortParent* AllocPMIDIPortParent(
|
|
|
|
const MIDIPortInfo& aPortInfo, const bool& aSysexEnabled) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPMIDIPortParent(PMIDIPortParent* aActor) override;
|
|
|
|
|
|
|
|
virtual PMIDIManagerParent* AllocPMIDIManagerParent() override;
|
|
|
|
|
|
|
|
virtual bool DeallocPMIDIManagerParent(PMIDIManagerParent* aActor) override;
|
2018-04-18 19:19:10 +03:00
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvStorageActivity(
|
|
|
|
const PrincipalInfo& aPrincipalInfo) override;
|
2018-07-10 02:02:39 +03:00
|
|
|
|
|
|
|
virtual PServiceWorkerParent* AllocPServiceWorkerParent(
|
|
|
|
const IPCServiceWorkerDescriptor&) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPServiceWorkerParent(PServiceWorkerParent*) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPServiceWorkerConstructor(
|
|
|
|
PServiceWorkerParent* aActor,
|
|
|
|
const IPCServiceWorkerDescriptor& aDescriptor) override;
|
|
|
|
|
|
|
|
virtual PServiceWorkerContainerParent* AllocPServiceWorkerContainerParent()
|
|
|
|
override;
|
|
|
|
|
|
|
|
virtual bool DeallocPServiceWorkerContainerParent(
|
|
|
|
PServiceWorkerContainerParent*) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPServiceWorkerContainerConstructor(
|
|
|
|
PServiceWorkerContainerParent* aActor) override;
|
|
|
|
|
|
|
|
virtual PServiceWorkerRegistrationParent*
|
|
|
|
AllocPServiceWorkerRegistrationParent(
|
|
|
|
const IPCServiceWorkerRegistrationDescriptor&) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPServiceWorkerRegistrationParent(
|
|
|
|
PServiceWorkerRegistrationParent*) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPServiceWorkerRegistrationConstructor(
|
|
|
|
PServiceWorkerRegistrationParent* aActor,
|
|
|
|
const IPCServiceWorkerRegistrationDescriptor& aDescriptor) override;
|
2018-12-01 23:26:09 +03:00
|
|
|
|
|
|
|
virtual PEndpointForReportParent* AllocPEndpointForReportParent(
|
|
|
|
const nsString& aGroupName, const PrincipalInfo& aPrincipalInfo) override;
|
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvPEndpointForReportConstructor(
|
|
|
|
PEndpointForReportParent* actor, const nsString& aGroupName,
|
|
|
|
const PrincipalInfo& aPrincipalInfo) override;
|
|
|
|
|
|
|
|
virtual bool DeallocPEndpointForReportParent(
|
|
|
|
PEndpointForReportParent* aActor) override;
|
2018-12-01 23:26:09 +03:00
|
|
|
|
|
|
|
virtual mozilla::ipc::IPCResult RecvRemoveEndpoint(
|
|
|
|
const nsString& aGroupName, const nsCString& aEndpointURL,
|
|
|
|
const PrincipalInfo& aPrincipalInfo) override;
|
2019-07-15 18:49:30 +03:00
|
|
|
|
|
|
|
virtual dom::PMediaTransportParent* AllocPMediaTransportParent() override;
|
|
|
|
virtual bool DeallocPMediaTransportParent(
|
|
|
|
dom::PMediaTransportParent* aActor) override;
|
2013-11-27 11:59:41 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace ipc
|
|
|
|
} // namespace mozilla
|
|
|
|
|
|
|
|
#endif // mozilla_ipc_backgroundparentimpl_h__
|