Blame netwerk/ipc/NeckoChild.h

Packit f0b94e
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
Packit f0b94e
/* vim: set sw=2 ts=8 et tw=80 : */
Packit f0b94e
Packit f0b94e
/* This Source Code Form is subject to the terms of the Mozilla Public
Packit f0b94e
 * License, v. 2.0. If a copy of the MPL was not distributed with this
Packit f0b94e
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
Packit f0b94e
Packit f0b94e
#ifndef mozilla_net_NeckoChild_h
Packit f0b94e
#define mozilla_net_NeckoChild_h
Packit f0b94e
Packit f0b94e
#include "mozilla/net/PNeckoChild.h"
Packit f0b94e
#include "mozilla/net/NeckoCommon.h"
Packit f0b94e
Packit f0b94e
namespace mozilla {
Packit f0b94e
namespace net {
Packit f0b94e
Packit f0b94e
// Header file contents
Packit f0b94e
class NeckoChild : public PNeckoChild {
Packit f0b94e
 public:
Packit f0b94e
  NeckoChild();
Packit f0b94e
  virtual ~NeckoChild();
Packit f0b94e
Packit f0b94e
  static void InitNeckoChild();
Packit f0b94e
Packit f0b94e
 protected:
Packit f0b94e
  virtual PHttpChannelChild* AllocPHttpChannelChild(
Packit f0b94e
      const PBrowserOrId&, const SerializedLoadContext&,
Packit f0b94e
      const HttpChannelCreationArgs& aOpenArgs) override;
Packit f0b94e
  virtual bool DeallocPHttpChannelChild(PHttpChannelChild*) override;
Packit f0b94e
Packit f0b94e
  virtual PStunAddrsRequestChild* AllocPStunAddrsRequestChild() override;
Packit f0b94e
  virtual bool DeallocPStunAddrsRequestChild(
Packit f0b94e
      PStunAddrsRequestChild* aActor) override;
Packit f0b94e
Packit f0b94e
  virtual PAltDataOutputStreamChild* AllocPAltDataOutputStreamChild(
Packit f0b94e
      const nsCString& type, PHttpChannelChild* channel) override;
Packit f0b94e
  virtual bool DeallocPAltDataOutputStreamChild(
Packit f0b94e
      PAltDataOutputStreamChild* aActor) override;
Packit f0b94e
Packit f0b94e
  virtual PCookieServiceChild* AllocPCookieServiceChild() override;
Packit f0b94e
  virtual bool DeallocPCookieServiceChild(PCookieServiceChild*) override;
Packit f0b94e
  virtual PWyciwygChannelChild* AllocPWyciwygChannelChild() override;
Packit f0b94e
  virtual bool DeallocPWyciwygChannelChild(PWyciwygChannelChild*) override;
Packit f0b94e
  virtual PFTPChannelChild* AllocPFTPChannelChild(
Packit f0b94e
      const PBrowserOrId& aBrowser, const SerializedLoadContext& aSerialized,
Packit f0b94e
      const FTPChannelCreationArgs& aOpenArgs) override;
Packit f0b94e
  virtual bool DeallocPFTPChannelChild(PFTPChannelChild*) override;
Packit f0b94e
  virtual PWebSocketChild* AllocPWebSocketChild(const PBrowserOrId&,
Packit f0b94e
                                                const SerializedLoadContext&,
Packit f0b94e
                                                const uint32_t&) override;
Packit f0b94e
  virtual bool DeallocPWebSocketChild(PWebSocketChild*) override;
Packit f0b94e
  virtual PTCPSocketChild* AllocPTCPSocketChild(const nsString& host,
Packit f0b94e
                                                const uint16_t& port) override;
Packit f0b94e
  virtual bool DeallocPTCPSocketChild(PTCPSocketChild*) override;
Packit f0b94e
  virtual PTCPServerSocketChild* AllocPTCPServerSocketChild(
Packit f0b94e
      const uint16_t& aLocalPort, const uint16_t& aBacklog,
Packit f0b94e
      const bool& aUseArrayBuffers) override;
Packit f0b94e
  virtual bool DeallocPTCPServerSocketChild(PTCPServerSocketChild*) override;
Packit f0b94e
  virtual PUDPSocketChild* AllocPUDPSocketChild(
Packit f0b94e
      const Principal& aPrincipal, const nsCString& aFilter) override;
Packit f0b94e
  virtual bool DeallocPUDPSocketChild(PUDPSocketChild*) override;
Packit f0b94e
  virtual PDNSRequestChild* AllocPDNSRequestChild(
Packit f0b94e
      const nsCString& aHost, const OriginAttributes& aOriginAttributes,
Packit f0b94e
      const uint32_t& aFlags, const nsCString& aNetworkInterface) override;
Packit f0b94e
  virtual bool DeallocPDNSRequestChild(PDNSRequestChild*) override;
Packit f0b94e
  virtual PDataChannelChild* AllocPDataChannelChild(
Packit f0b94e
      const uint32_t& channelId) override;
Packit f0b94e
  virtual bool DeallocPDataChannelChild(PDataChannelChild* child) override;
Packit f0b94e
  virtual PFileChannelChild* AllocPFileChannelChild(
Packit f0b94e
      const uint32_t& channelId) override;
Packit f0b94e
  virtual bool DeallocPFileChannelChild(PFileChannelChild* child) override;
Packit f0b94e
  virtual PSimpleChannelChild* AllocPSimpleChannelChild(
Packit f0b94e
      const uint32_t& channelId) override;
Packit f0b94e
  virtual bool DeallocPSimpleChannelChild(PSimpleChannelChild* child) override;
Packit f0b94e
  virtual PChannelDiverterChild* AllocPChannelDiverterChild(
Packit f0b94e
      const ChannelDiverterArgs& channel) override;
Packit f0b94e
  virtual bool DeallocPChannelDiverterChild(
Packit f0b94e
      PChannelDiverterChild* actor) override;
Packit f0b94e
  virtual PTransportProviderChild* AllocPTransportProviderChild() override;
Packit f0b94e
  virtual bool DeallocPTransportProviderChild(
Packit f0b94e
      PTransportProviderChild* aActor) override;
Packit f0b94e
  virtual mozilla::ipc::IPCResult RecvAsyncAuthPromptForNestedFrame(
Packit f0b94e
      const TabId& aNestedFrameId, const nsCString& aUri,
Packit f0b94e
      const nsString& aRealm, const uint64_t& aCallbackId) override;
Packit f0b94e
  virtual PWebSocketEventListenerChild* AllocPWebSocketEventListenerChild(
Packit f0b94e
      const uint64_t& aInnerWindowID) override;
Packit f0b94e
  virtual bool DeallocPWebSocketEventListenerChild(
Packit f0b94e
      PWebSocketEventListenerChild*) override;
Packit f0b94e
Packit f0b94e
  /* Predictor Messsages */
Packit f0b94e
  virtual mozilla::ipc::IPCResult RecvPredOnPredictPrefetch(
Packit f0b94e
      const URIParams& aURI, const uint32_t& aHttpStatus) override;
Packit f0b94e
  virtual mozilla::ipc::IPCResult RecvPredOnPredictPreconnect(
Packit f0b94e
      const URIParams& aURI) override;
Packit f0b94e
  virtual mozilla::ipc::IPCResult RecvPredOnPredictDNS(
Packit f0b94e
      const URIParams& aURI) override;
Packit f0b94e
Packit f0b94e
  virtual mozilla::ipc::IPCResult RecvSpeculativeConnectRequest() override;
Packit f0b94e
};
Packit f0b94e
Packit f0b94e
/**
Packit f0b94e
 * Reference to the PNecko Child protocol.
Packit f0b94e
 * Null if this is not a content process.
Packit f0b94e
 */
Packit f0b94e
extern PNeckoChild* gNeckoChild;
Packit f0b94e
Packit f0b94e
}  // namespace net
Packit f0b94e
}  // namespace mozilla
Packit f0b94e
Packit f0b94e
#endif  // mozilla_net_NeckoChild_h