.
This commit is contained in:
@@ -1,23 +1,32 @@
|
||||
define([
|
||||
"dojo/_base/config",
|
||||
"dojo/store/JsonRest",
|
||||
'dojo/store/Observable',
|
||||
'dojo/_base/declare',
|
||||
'dstore/Rest',
|
||||
'dstore/RequestMemory',
|
||||
'dstore/SimpleQuery',
|
||||
'dstore/Trackable',
|
||||
"dojox/socket",
|
||||
"dojo/_base/xhr"
|
||||
], function(config, JsonRest, Observable, Socket, xhr){
|
||||
var _store = new Observable(new JsonRest({
|
||||
"dojo/_base/xhr",
|
||||
"dojox/uuid/generateRandomUuid"
|
||||
], function(config, declare, Rest, RequestMemory, SimpleQuery, Trackable, Socket, xhr, generateRandomUuid){
|
||||
|
||||
var RuleEngineStore = declare([Rest, RequestMemory, SimpleQuery, Trackable]);
|
||||
|
||||
var _store = new RuleEngineStore({
|
||||
target: config.hos.deviceRepoUrl
|
||||
}));
|
||||
});
|
||||
|
||||
var _updateSocketOpened = false;
|
||||
var _updateSocketClientId = generateRandomUuid();
|
||||
var _updateSocket = new Socket({
|
||||
url: config.hos.deviceRepoUrl + '?onevent=changes&clientid=1234',
|
||||
headers: {
|
||||
"On-Event": "changes",
|
||||
"Connection-Timeout": 60000,
|
||||
"Client-Id": 1234
|
||||
},
|
||||
transport: xhr.post });
|
||||
_updateSocket = Observable(_updateSocket);
|
||||
url: config.hos.deviceRepoUrl + '?onevent=changes&clientid=' + _updateSocketClientId,
|
||||
headers: {
|
||||
"On-Event": "changes",
|
||||
"Connection-Timeout": 60000,
|
||||
"Client-Id": 1234
|
||||
},
|
||||
transport: xhr.post
|
||||
});
|
||||
_updateSocket.on("open", function(event){
|
||||
_socketOpened = true;
|
||||
console.log("Socket Opened ", event.message);
|
||||
@@ -33,9 +42,10 @@ define([
|
||||
_updateSocket.on("message", function(event) {
|
||||
var data = JSON.parse(event.data);
|
||||
switch (data['eventtype']) {
|
||||
case "statechanged":
|
||||
_store.notify(data['device'], data['deviceid']);
|
||||
break;
|
||||
case "statechanged":
|
||||
_store.evict(data['deviceid']);
|
||||
_store.emit('update', {id: data['deviceid'], target: data['device']});
|
||||
break;
|
||||
}
|
||||
console.log("Message: " + data);
|
||||
});
|
||||
@@ -51,5 +61,6 @@ define([
|
||||
// browser supports XHR2
|
||||
});
|
||||
};
|
||||
|
||||
return _store;
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user