diff -r 000000000000 -r 6474c204b198 dom/network/interfaces/nsIDOMNetworkStats.idl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dom/network/interfaces/nsIDOMNetworkStats.idl Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,48 @@ +/* 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 nsIDOMMozNetworkStatsInterface; + +[scriptable, builtinclass, uuid(3b16fe17-5583-483a-b486-b64a3243221c)] +interface nsIDOMMozNetworkStatsData : nsISupports +{ + readonly attribute unsigned long rxBytes; // Received bytes. + readonly attribute unsigned long txBytes; // Sent bytes. + readonly attribute jsval date; // Date. +}; + +[scriptable, builtinclass, uuid(f1996e44-1057-4d4b-8ff8-919e76c4cfa9)] +interface nsIDOMMozNetworkStats : nsISupports +{ + /** + * App manifest URL of an application for specifying the per-app stats of the + * specified app. + */ + readonly attribute DOMString appManifestURL; + + /** + * 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 nsIDOMMozNetworkStatsInterface network; + + /** + * Stats for a network. + */ + readonly attribute jsval data; // array of NetworkStatsData. + // one element per day. + + /** + * Dates + */ + readonly attribute jsval start; // Date. + readonly attribute jsval end; // Date. +};