Comet = function(page, version) {\r
this.page = page;\r
this.version = version;\r
- \r
+\r
// l'objet JSONHttpRequest représentant la connexion d'attente\r
this.attenteCourante = undefined;\r
- \r
+\r
// le multhreading du pauvre, merci javascript de m'offrire autant de primitives pour la gestion de la concurrence...\r
this.stop = false;\r
};\r
*/\r
Comet.prototype.stopAttenteCourante = function() {\r
this.stop = true;\r
- \r
+\r
if (this.attenteCourante) {\r
this.attenteCourante.abort();\r
}\r
};\r
\r
/**\r
- * Attend un événement lié à la page. Non-bloquant. \r
+ * Attend un événement lié à la page. Non-bloquant.\r
* @funSend une fonction renvoyant les données json à envoyer\r
* @funsReceive est un objet comprenant les fonctions à appeler en fonction du "reply"\r
* les fonctions acceptent un paramètre correspondant au données reçues.\r
*/\r
Comet.prototype.waitEvent = function(funSend, funsReceive) {\r
this.stopAttenteCourante();\r
- \r
+\r
this.stop = false;\r
- \r
+\r
var thisComet = this;\r
- \r
+\r
// on doit conserver l'ordre des valeurs de l'objet JSON (le serveur les veut dans l'ordre définit dans le protocole)\r
// TODO : ya pas mieux ?\r
var dataToSend = {\r
objectEach(poulpe, function(k, v) {\r
dataToSend[k] = v;\r
});\r
- \r
+\r
this.attenteCourante = jQuery.ajax({\r
type: "POST",\r
url: "request",\r
success:\r
function(data) {\r
funsReceive[data.reply](data);\r
- \r
+\r
// rappel de la fonction dans 100 ms\r
setTimeout(function(){ thisComet.waitEvent2(funSend, funsReceive); }, 100);\r
},\r
error:\r
function(XMLHttpRequest, textStatus, errorThrown) {\r
- ;; console.log("Connexion perdue dans Comet.prototype.waitEvent() : \n" + textStatus);\r
+ // console.log("Connexion perdue dans Comet.prototype.waitEvent() : \n" + textStatus);\r
setTimeout(function(){ thisComet.waitEvent2(funSend, funsReceive); }, 1000);\r
}\r
});\r
return;\r
}\r
this.waitEvent(funSend, funsReceive);\r
-};
\ No newline at end of file
+};\r