improved disconnection handler
This commit is contained in:
parent
a053c8a99d
commit
3497037981
1 changed files with 13 additions and 8 deletions
|
@ -62,8 +62,6 @@ NsClient.prototype.connect = function() {
|
|||
|
||||
if (!this.is_connected) {
|
||||
this.storage.get(null, cnt(this));
|
||||
} else {
|
||||
console.warn("already connected");
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -72,8 +70,7 @@ NsClient.prototype.disconnect = function() {
|
|||
chrome.socket.disconnect(this.socket);
|
||||
this.is_connected = false;
|
||||
console.info("disconnected");
|
||||
} else {
|
||||
console.warn("not connected");
|
||||
this.updateStatus();
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -85,23 +82,31 @@ NsClient.prototype.daemonize = function() {
|
|||
|
||||
if (data.substr(0, 5) === "ping ") {
|
||||
chrome.socket.write(elem.socket, rd_inf.data, function(w_inf) {
|
||||
chrome.socket.read(elem.socket, null, this);
|
||||
elem.daemonize();
|
||||
});
|
||||
} else {
|
||||
elem.daemonize();
|
||||
}
|
||||
} else {
|
||||
/*
|
||||
* A read error is the only way to know if the remote peer has disconnected.
|
||||
* See <http://developer.chrome.com/apps/socket.html> for more informations.
|
||||
*/
|
||||
elem.disconnect();
|
||||
console.info('connection lost, reconnecting...');
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
if (this.is_connected) {
|
||||
chrome.socket.read(this.socket, null, dm(this));
|
||||
chrome.socket.read(this.socket, dm(this));
|
||||
} else {
|
||||
console.warn("not connected");
|
||||
console.error("unable to daemonize: not connected");
|
||||
}
|
||||
};
|
||||
|
||||
NsClient.prototype.updateStatus = function() {
|
||||
var status_txt = document.getElementById("status_txt");
|
||||
console.log(status_txt);
|
||||
|
||||
if (this.is_connected) {
|
||||
if (status_txt !== null)
|
||||
|
|
Reference in a new issue