+
+ switch(data.state) {
+ case STATE_SET:
+ switch(data.op) {
+ case STATE_SET_IN_PENDING:
+ if (typeof(data.value) == 'string') {
+ // data.value = urn
+ this._supports_sla(data.value)
+ .done( function(testbeds) {
+ var urn_regexp = /\+(.*?)\+/;
+ var urn = urn_regexp.exec(data.value)[1];
+ var pos = $.inArray(urn, testbeds);
+ if ( pos != -1) {
+ var id_ref = testbeds[pos].replace(/\.|:/g, "-");
+ $("#" + id_ref).data("urns").push(data.value);
+ $("#" + id_ref).show();
+ self.accepted_slas[id_ref] = false;
+ //$( "#sla_offers_list" ).append(
+ // $("<li>").text("Testbed " + testbeds[pos] + " offers SLA for its resources")
+ //);
+ }
+ });
+ }
+ break;
+ case STATE_SET_OUT:
+ // data.value = urn
+ if (typeof(data.value) == 'string') {
+ // data.value = urn
+ this._supports_sla(data.value)
+ .done( function(testbeds) {
+ var urn_regexp = /\+(.*?)\+/;
+ var urn = urn_regexp.exec(data.value)[1];
+ var pos = $.inArray(urn, testbeds);
+ if ( pos != -1) {
+ var id_ref = testbeds[pos].replace(/\.|:/g, "-");
+ var array = $("#" + id_ref).data("urns");
+ array.splice(array.indexOf(data.value), 1);
+
+ if ($("#" + id_ref).data("urns").length == 0) {
+ $("#" + id_ref).hide();
+ delete self.accepted_slas[id_ref];
+ }
+ //$( "#sla_offers_list" ).append(
+ // $("<li>").text("Testbed " + testbeds[pos] + " offers SLA for its resources")
+ //);
+ }
+ });
+ }
+ break;
+ }
+ break;
+
+ case STATE_WARNINGS:
+ // Add resource to SLA
+ // data.key = urn
+ // data.value = {1: "SLA acceptance required..."}
+ // this.change_status(data.key, data.value);
+ break;
+ }