dijit
Version:
Dijit provides a complete collection of user interface controls based on Dojo, giving you the power to create web applications that are highly optimized for usability, performance, internationalization, accessibility, but above all deliver an incredible u
62 lines (50 loc) • 1.22 kB
JavaScript
define([
"dojo/_base/declare",
"dojo/Deferred",
"dojo/store/Memory",
"dojo/store/util/QueryResults",
"dojo/store/util/SimpleQueryEngine"
], function(declare, Deferred, Memory, QueryResults, SimpleQueryEngine){
// module:
// dijit/tests/AsyncMemoryStore
return declare(null, {
// summary:
// Wrapper on dojo/store/Memory that makes functions async (for testing)
queryEngine: SimpleQueryEngine,
constructor: function(hash){
this.store = new Memory(hash);
},
get: function(id){
var d = new Deferred(), store = this.store;
try{
d.resolve(store.get(id));
}catch(e){
d.reject(e);
}
return d;
},
getIdentity: function(object){
return this.store.getIdentity(object);
},
put: function(object, directives){
return this.store.put(object, directives);
},
add: function(object, directives){
return this.store.add(object, directives);
},
remove: function(id){
return this.store.remove(id);
},
query: function(query, options){
var d = new Deferred(), store = this.store;
setTimeout(function(){
try{
d.resolve(store.query(query, options));
}catch(e){
d.reject(e);
}
}, 10);
return QueryResults(d);
}
});
});