Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(102)

Side by Side Diff: remoting/webapp/crd/js/host.js

Issue 1008003002: [Webapp Refactor] Implements Me2MeConnectFlow as an object. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** 5 /**
6 * @fileoverview 6 * @fileoverview
7 * The deserialized form of the chromoting host as returned by Apiary. 7 * The deserialized form of the chromoting host as returned by Apiary.
8 */ 8 */
9 9
10 'use strict'; 10 'use strict';
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 /** @private */ 55 /** @private */
56 this.hostId_ = hostId; 56 this.hostId_ = hostId;
57 /** @type {boolean} */ 57 /** @type {boolean} */
58 this.shrinkToFit = true; 58 this.shrinkToFit = true;
59 /** @type {boolean} */ 59 /** @type {boolean} */
60 this.resizeToClient = true; 60 this.resizeToClient = true;
61 /** @type {string} */ 61 /** @type {string} */
62 this.remapKeys = ''; 62 this.remapKeys = '';
63 /** @type {number} */ 63 /** @type {number} */
64 this.desktopScale = 1; 64 this.desktopScale = 1;
65 /** @type {remoting.PairingInfo} */
66 this.pairingInfo = {clientId: '', sharedSecret: ''};
65 }; 67 };
66 68
67 remoting.Host.Options.prototype.save = function() { 69 remoting.Host.Options.prototype.save = function() {
68 // TODO(kelvinp): Migrate pairingInfo to use this class as well and get rid of 70 // TODO(kelvinp): Migrate pairingInfo to use this class as well and get rid of
69 // remoting.HostSettings. 71 // remoting.HostSettings.
70 remoting.HostSettings.save(this.hostId_, this); 72 remoting.HostSettings.save(this.hostId_, this);
71 }; 73 };
72 74
73 75
74 /** @return {Promise} A promise that resolves when the settings are loaded. */ 76 /** @return {Promise} A promise that resolves when the settings are loaded. */
75 remoting.Host.Options.prototype.load = function() { 77 remoting.Host.Options.prototype.load = function() {
76 var that = this; 78 var that = this;
77 return base.Promise.as(remoting.HostSettings.load, [this.hostId_]).then( 79 return base.Promise.as(remoting.HostSettings.load, [this.hostId_]).then(
78 /** 80 /**
79 * @param {Object.<string|boolean|number>} options 81 * @param {Object.<string|boolean|number>} options
80 */ 82 */
81 function(options) { 83 function(options) {
82 // Must be defaulted to true so that app-remoting can resize the host 84 // Must be defaulted to true so that app-remoting can resize the host
83 // upon launching. 85 // upon launching.
84 // TODO(kelvinp): Uses a separate host options for app-remoting that 86 // TODO(kelvinp): Uses a separate host options for app-remoting that
85 // hardcodes resizeToClient to true. 87 // hardcodes resizeToClient to true.
86 that.resizeToClient = 88 that.resizeToClient =
87 getBooleanAttr(options, 'resizeToClient', true); 89 getBooleanAttr(options, 'resizeToClient', true);
88 that.shrinkToFit = getBooleanAttr(options, 'shrinkToFit', true); 90 that.shrinkToFit = getBooleanAttr(options, 'shrinkToFit', true);
89 that.desktopScale = getNumberAttr(options, 'desktopScale', 1); 91 that.desktopScale = getNumberAttr(options, 'desktopScale', 1);
90 that.remapKeys = getStringAttr(options, 'remapKeys', ''); 92 that.remapKeys = getStringAttr(options, 'remapKeys', '');
93 that.pairingInfo =
94 /** @type {remoting.PairingInfo} */ (
95 getObjectAttr(options, 'pairingInfo', that.pairingInfo));
91 }); 96 });
92 }; 97 };
93 98
94 /** 99 /**
95 * Determine whether a host needs to be manually updated. This is the case if 100 * Determine whether a host needs to be manually updated. This is the case if
96 * the host's major version number is more than 1 lower than that of the web- 101 * the host's major version number is more than 1 lower than that of the web-
97 * app (a difference of 1 is tolerated due to the different update mechanisms) 102 * app (a difference of 1 is tolerated due to the different update mechanisms)
98 * and if the host is on-line (off-line hosts are not expected to auto-update). 103 * and if the host is on-line (off-line hosts are not expected to auto-update).
99 * 104 *
100 * @param {remoting.Host} host The host information from the directory. 105 * @param {remoting.Host} host The host information from the directory.
101 * @param {string|number} webappVersion The version number of the web-app, in 106 * @param {string|number} webappVersion The version number of the web-app, in
102 * either dotted-decimal notation notation, or directly represented by the 107 * either dotted-decimal notation notation, or directly represented by the
103 * major version. 108 * major version.
104 * @return {boolean} True if the host is on-line but out-of-date. 109 * @return {boolean} True if the host is on-line but out-of-date.
105 */ 110 */
106 remoting.Host.needsUpdate = function(host, webappVersion) { 111 remoting.Host.needsUpdate = function(host, webappVersion) {
107 if (host.status != 'ONLINE') { 112 if (host.status != 'ONLINE') {
108 return false; 113 return false;
109 } 114 }
110 var hostMajorVersion = parseInt(host.hostVersion, 10); 115 var hostMajorVersion = parseInt(host.hostVersion, 10);
111 if (isNaN(hostMajorVersion)) { 116 if (isNaN(hostMajorVersion)) {
112 // Host versions 26 and higher include the version number in heartbeats, 117 // Host versions 26 and higher include the version number in heartbeats,
113 // so if it's missing then the host is at most version 25. 118 // so if it's missing then the host is at most version 25.
114 hostMajorVersion = 25; 119 hostMajorVersion = 25;
115 } 120 }
116 return (parseInt(webappVersion, 10) - hostMajorVersion) > 1; 121 return (parseInt(webappVersion, 10) - hostMajorVersion) > 1;
117 }; 122 };
118 123
119 })(); 124 })();
OLDNEW
« no previous file with comments | « remoting/webapp/crd/js/desktop_remoting.js ('k') | remoting/webapp/crd/js/me2me_connect_flow.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698