2016-06-01 12:35:33 +03:00
|
|
|
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
|
|
/* vim: set sw=4 ts=4 et tw=80 : */
|
|
|
|
/* 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/. */
|
|
|
|
|
|
|
|
interface nsIHttpUpgradeListener;
|
|
|
|
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
|
2016-06-07 12:46:03 +03:00
|
|
|
%{C++
|
|
|
|
namespace mozilla {
|
|
|
|
namespace net {
|
|
|
|
class PTransportProviderChild;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
%}
|
|
|
|
|
|
|
|
[ptr] native PTransportProviderChild(mozilla::net::PTransportProviderChild);
|
|
|
|
|
2016-06-01 12:35:33 +03:00
|
|
|
/**
|
|
|
|
* An interface which can be used to asynchronously request a nsITransport
|
|
|
|
* together with the input and output streams that go together with it.
|
|
|
|
*/
|
2016-07-27 18:46:00 +03:00
|
|
|
[scriptable, uuid(6fcec704-cfd2-46ef-a394-a64d5cb1475c)]
|
2016-06-01 12:35:33 +03:00
|
|
|
interface nsITransportProvider : nsISupports
|
|
|
|
{
|
2016-06-07 12:46:03 +03:00
|
|
|
// This must not be called in a child process since transport
|
|
|
|
// objects are not accessible there. Call getIPCChild instead.
|
2016-11-23 13:00:42 +03:00
|
|
|
[must_use] void setListener(in nsIHttpUpgradeListener listener);
|
2016-06-07 12:46:03 +03:00
|
|
|
|
|
|
|
// This must be implemented by nsITransportProvider objects running
|
|
|
|
// in the child process. It must return null when called in the parent
|
|
|
|
// process.
|
2016-11-23 13:00:42 +03:00
|
|
|
[noscript, must_use] PTransportProviderChild getIPCChild();
|
2016-06-01 12:35:33 +03:00
|
|
|
};
|