OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 (function() { | |
6 'use strict'; | |
7 | |
8 Polymer({ | |
9 is: 'website-usage-private-api', | |
10 | |
11 properties: { | |
12 /** | |
13 * The amount of data used by the given website. | |
14 */ | |
15 websiteDataUsage: { | |
16 type: String, | |
17 notify: true, | |
18 }, | |
19 }, | |
20 | |
21 attached: function() { | |
22 settings.WebsiteUsagePrivateApi.websiteUsagePolymerInstance = this; | |
23 }, | |
24 | |
25 fetchUsageTotal: function(host) { | |
26 settings.WebsiteUsagePrivateApi.fetchUsageTotal(host); | |
27 }, | |
28 }); | |
29 })(); | |
30 | |
31 cr.define('settings.WebsiteUsagePrivateApi', function() { | |
32 /** | |
33 * @type {Object} An instance of the polymer object defined above. | |
34 * All data will be set here. | |
35 */ | |
36 websiteUsagePolymerInstance = null; | |
37 | |
38 /** | |
39 * @type {string} The host for which the usage total is being fetched. | |
40 */ | |
41 var host; | |
42 | |
43 /** | |
44 * Encapsulates the calls between JS and C++ to fetch how much storage the | |
45 * host is using. | |
46 * Will update the data in |websiteUsagePolymerInstance|. | |
47 */ | |
48 fetchUsageTotal = function(host) { | |
49 var instance = settings.WebsiteUsagePrivateApi.websiteUsagePolymerInstance; | |
50 if (instance != null) { | |
michaelpg
2016/01/27 06:37:47
nit: no {} around if
Finnur
2016/01/27 10:27:26
Done.
| |
51 instance.websiteDataUsage = ''; | |
52 } | |
53 | |
54 this.host = host; | |
55 chrome.send('fetchUsageTotal', [host]); | |
56 }; | |
57 | |
58 /** | |
59 * Callback for when the usage total is known. | |
60 * @param {string} host The host that the usage was fetched for. | |
61 * @param {string} usage The string showing how much data the given host | |
62 * is using. | |
63 */ | |
64 returnUsageTotal = function(host, usage) { | |
65 var instance = settings.WebsiteUsagePrivateApi.websiteUsagePolymerInstance; | |
66 if (instance == null) { | |
67 return; | |
68 } | |
69 | |
70 if (this.host == host) { | |
michaelpg
2016/01/27 06:37:47
same nit
Finnur
2016/01/27 10:27:26
Done.
| |
71 instance.websiteDataUsage = usage; | |
72 } else { | |
73 assertNotReached(); | |
74 } | |
75 }; | |
76 | |
77 return { websiteUsagePolymerInstance: websiteUsagePolymerInstance, | |
78 fetchUsageTotal: fetchUsageTotal, | |
79 returnUsageTotal: returnUsageTotal }; | |
80 }); | |
OLD | NEW |