2014-03-07 15:51:49 +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/. */
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Provide the detailed options for specifying different kinds of data filtering
|
|
|
|
* in getSamples function.
|
|
|
|
*/
|
|
|
|
dictionary NetworkStatsGetOptions
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* App manifest URL is used to filter network stats by app, while service type
|
|
|
|
* is used to filter stats by system service.
|
|
|
|
* Note that, these two options cannot be specified at the same time for now;
|
|
|
|
* others, an NS_ERROR_NOT_IMPLMENTED exception will be thrown.
|
|
|
|
*/
|
2014-04-08 10:42:12 +04:00
|
|
|
DOMString appManifestURL? = null;
|
|
|
|
DOMString serviceType = "";
|
2015-01-23 14:12:03 +03:00
|
|
|
/**
|
|
|
|
* If it is set as true, only the browsing traffic, which is generated from
|
|
|
|
* the mozbrowser iframe element within an app, is returned in result.
|
|
|
|
* If it is set as false or not set, the total traffic, which is generated
|
|
|
|
* from both the mozapp and mozbrowser iframe elements, is returned.
|
|
|
|
*/
|
2014-04-08 10:42:12 +04:00
|
|
|
boolean browsingTrafficOnly = false;
|
2014-03-07 15:51:49 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
dictionary NetworkStatsAlarmOptions
|
|
|
|
{
|
|
|
|
Date startTime;
|
|
|
|
Date data;
|
|
|
|
};
|
2014-05-05 10:54:23 +04:00
|
|
|
|
|
|
|
[JSImplementation="@mozilla.org/networkstats;1",
|
|
|
|
ChromeOnly,
|
2015-07-14 05:25:26 +03:00
|
|
|
CheckAnyPermissions="networkstats-manage",
|
2014-07-11 03:20:49 +04:00
|
|
|
Pref="dom.mozNetworkStats.enabled"]
|
2014-05-05 10:54:23 +04:00
|
|
|
interface MozNetworkStats {
|
|
|
|
/**
|
|
|
|
* App manifest URL of an application for specifying the per-app stats of the
|
|
|
|
* specified app.
|
|
|
|
*/
|
|
|
|
readonly attribute DOMString appManifestURL;
|
|
|
|
|
2015-01-23 14:12:03 +03:00
|
|
|
/**
|
|
|
|
* True if this stats is the browsing traffic of an app (the traffic generated
|
|
|
|
* by a mozbrowser iframe element).
|
|
|
|
* Otherwise this stats represents the total traffic of an app.
|
|
|
|
*/
|
|
|
|
readonly attribute boolean browsingTrafficOnly;
|
|
|
|
|
2014-05-05 10:54:23 +04:00
|
|
|
/**
|
|
|
|
* Service type is used to retrieve the corresponding "system-only" stats.
|
|
|
|
* E.g., "Tethering", "OTA", etc.
|
|
|
|
*/
|
|
|
|
readonly attribute DOMString serviceType;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Network the returned data belongs to.
|
|
|
|
*/
|
|
|
|
readonly attribute MozNetworkStatsInterface network;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Stats for a network.
|
|
|
|
*/
|
|
|
|
[Cached, Pure]
|
|
|
|
readonly attribute sequence<MozNetworkStatsData> data;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Dates
|
|
|
|
*/
|
|
|
|
readonly attribute object start;
|
|
|
|
readonly attribute object end;
|
|
|
|
};
|