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

Unified Diff: remoting/webapp/me2mom/host_list.js

Issue 8830001: Pass table entry to rename and delete callbacks, (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 9 years 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | remoting/webapp/me2mom/host_table_entry.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: remoting/webapp/me2mom/host_list.js
diff --git a/remoting/webapp/me2mom/host_list.js b/remoting/webapp/me2mom/host_list.js
index 5a48521601fe6c8949f05beaebd7a0446bc66d35..e09034bb8949378cd181b9b0569f2c5ed1d430ff 100644
--- a/remoting/webapp/me2mom/host_list.js
+++ b/remoting/webapp/me2mom/host_list.js
@@ -117,16 +117,25 @@ remoting.HostList.prototype.setHosts_ = function(hosts) {
this.showError_(null);
this.hostTableEntries_ = [];
- /** @type {remoting.HostList} */
+ /**
+ * @type {remoting.HostList}
+ */
var that = this;
+ /**
+ * @param {remoting.HostTableEntry} hostTableEntry The entry being renamed.
+ */
+ var onRename = function(hostTableEntry) { that.renameHost_(hostTableEntry); }
+ /**
+ * @param {remoting.HostTableEntry} hostTableEntry The entry beign deleted.
+ */
+ var onDelete = function(hostTableEntry) { that.deleteHost_(hostTableEntry); }
+
for (var i = 0; i < hosts.length; ++i) {
/** @type {remoting.Host} */
var host = hosts[i];
// Validate the entry to make sure it has all the fields we expect.
if (host.hostName && host.hostId && host.status && host.jabberId &&
host.publicKey) {
- var onRename = function() { that.renameHost_(host.hostId); }
- var onDelete = function() { that.deleteHost_(host.hostId); }
var hostTableEntry = new remoting.HostTableEntry();
hostTableEntry.init(host, onRename, onDelete);
this.hostTableEntries_[i] = hostTableEntry;
@@ -173,21 +182,14 @@ remoting.HostList.prototype.showOrHide_ = function(show) {
/**
* Remove a host from the list, and deregister it.
- * @param {string} hostId The id of the host to be removed.
+ * @param {remoting.HostTableEntry} hostTableEntry The host to be removed.
* @return {void} Nothing.
* @private
*/
-remoting.HostList.prototype.deleteHost_ = function(hostId) {
- /** @type {remoting.HostTableEntry} */
- var hostTableEntry = this.getHostForId(hostId);
- if (!hostTableEntry) {
- console.error('No host registered for id ' + hostId);
- return;
- }
-
+remoting.HostList.prototype.deleteHost_ = function(hostTableEntry) {
this.table_.removeChild(hostTableEntry.tableRow);
var index = this.hostTableEntries_.indexOf(hostTableEntry);
- if (index != -1) { // Since we've just found it, index must be >= 0
+ if (index != -1) {
this.hostTableEntries_.splice(index, 1);
}
@@ -195,7 +197,8 @@ remoting.HostList.prototype.deleteHost_ = function(hostId) {
var deleteHost = function(token) {
var headers = { 'Authorization': 'OAuth ' + token };
remoting.xhr.remove(
- 'https://www.googleapis.com/chromoting/v1/@me/hosts/' + hostId,
+ 'https://www.googleapis.com/chromoting/v1/@me/hosts/' +
+ hostTableEntry.host.hostId,
function() {}, '', headers);
}
remoting.oauth2.callWithToken(deleteHost);
@@ -205,17 +208,11 @@ remoting.HostList.prototype.deleteHost_ = function(hostId) {
/**
* Prepare a host for renaming by replacing its name with an edit box.
- * @param {string} hostId The id of the host to be renamed.
+ * @param {remoting.HostTableEntry} hostTableEntry The host to be renamed.
* @return {void} Nothing.
* @private
*/
-remoting.HostList.prototype.renameHost_ = function(hostId) {
- /** @type {remoting.HostTableEntry} */
- var hostTableEntry = this.getHostForId(hostId);
- if (!hostTableEntry) {
- console.error('No host registered for id ' + hostId);
- return;
- }
+remoting.HostList.prototype.renameHost_ = function(hostTableEntry) {
/** @param {string} token */
var renameHost = function(token) {
var headers = {
@@ -228,7 +225,8 @@ remoting.HostList.prototype.renameHost_ = function(hostId) {
publicKey: hostTableEntry.host.publicKey
} };
remoting.xhr.put(
- 'https://www.googleapis.com/chromoting/v1/@me/hosts/' + hostId,
+ 'https://www.googleapis.com/chromoting/v1/@me/hosts/' +
+ hostTableEntry.host.hostId,
function(xhr) {},
JSON.stringify(newHostDetails),
headers);
« no previous file with comments | « no previous file | remoting/webapp/me2mom/host_table_entry.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698