js-marketplace-2014/spy.js

31 lines
723 B
JavaScript

// Generic Spy
function Spy(label, useJson) {
this.label = label || "SPY";
this.useJson = useJson;
}
Spy.prototype.boot = function () {
World.updateRoutes([sub(__, 0, Infinity), pub(__, 0, Infinity)]);
};
Spy.prototype.handleEvent = function (e) {
switch (e.type) {
case "routes":
console.log(this.label, "routes", this.useJson ? JSON.stringify(e.routes) : e.routes);
break;
case "message":
var messageRepr;
try {
messageRepr = this.useJson ? JSON.stringify(e.message) : e.message;
} catch (exn) {
messageRepr = e.message;
}
console.log(this.label, "message", messageRepr, e.metaLevel, e.isFeedback);
break;
default:
console.log(this.label, "unknown", e);
break;
}
};