gecko-dev/netwerk/base/nsIThrottlingService.idl

38 строки
833 B
Plaintext

/* vim: set ts=2 sts=2 et sw=2: */
/* 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 "nsISupports.idl"
interface nsIHttpChannel;
[builtinclass, uuid(c755ef98-b749-4f30-a658-1e6110013a66)]
interface nsIThrottlingService : nsISupports
{
void addChannel(in nsIHttpChannel channel);
void removeChannel(in nsIHttpChannel channel);
/* Don't call these directly, use mozilla::net::Throttler instead! */
void increasePressure();
void decreasePressure();
};
%{C++
namespace mozilla {
namespace net {
class Throttler
{
public:
Throttler();
~Throttler();
private:
nsCOMPtr<nsIThrottlingService> mThrottlingService;
};
} // ::mozilla::net
} // ::mozilla
%}