Changeset 384 for Dev/branches/rest-dojo-ui/client/rft/elastic
- Timestamp:
- 07/29/12 00:03:52 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Dev/branches/rest-dojo-ui/client/rft/elastic/ElasticReadStore.js
r382 r384 7 7 ],function(declare, json, lang, xhr, QueryReadStore) { 8 8 9 10 11 12 13 14 15 9 return declare("rft.elastic.ElasticReadStore", QueryReadStore, { 10 fetch:function(request){ 11 var attr = Object.keys(request.query)[0]; 12 if (request.query[attr].length == 0) { 13 return 0; 14 } 15 var q = request.query[attr]; 16 16 17 request.serverQuery = json.toJson({ 18 query: 19 { 20 query_string: 21 { 22 default_field: attr, 23 query: q 24 } 25 } 26 }); 27 // Call superclasses' fetch 28 return this.inherited("fetch", arguments); 29 }, 30 _fetchItems: function(request, fetchHandler, errorHandler){ 31 var serverQuery = request.serverQuery; 32 var xhrHandler = xhr.post({ 17 request.serverQuery = json.toJson({ 18 query: { 19 query_string: { 20 default_field: attr, 21 query: q 22 } 23 } 24 }); 25 return this.inherited(arguments); 26 }, 27 _fetchItems: function(request, fetchHandler, errorHandler){ 28 var serverQuery = request.serverQuery; 29 var xhrHandler = xhr.post({ 33 30 url: this.url, 34 31 handleAs: "json", 35 32 postData: serverQuery 33 }).then(lang.hitch(this, function(data){ 34 this._xhrFetchHandler(data, request, fetchHandler, errorHandler); 35 }),function(error){ 36 errorHandler(error, request); 36 37 }); 37 request.abort = function(){ 38 xhrHandler.cancel(); 39 }; 40 xhrHandler.addCallback(lang.hitch(this, function(data){ 41 this._xhrFetchHandler(data, request, fetchHandler, errorHandler); 42 })); 43 xhrHandler.addErrback(function(error){ 44 errorHandler(error, request); 45 }); 46 }, 47 _xhrFetchHandler: function(data, request, fetchHandler, errorHandler) { 48 data = this._filterResponse(data); 49 this._items = []; 50 var numHits = data.hits.total || -1; 51 if(numHits > 0) { 52 this._items.push({i:data.hits.hits[0]._source, r:this, n:0}); 53 } 54 fetchHandler(this._items, request, data.hits.total); 55 this._numRows = data.hits.total; 56 } 57 }); 38 request.abort = function(){ 39 xhrHandler.cancel(); 40 }; 41 }, 42 _xhrFetchHandler: function(data, request, fetchHandler, errorHandler) { 43 data = this._filterResponse(data); 44 this._items = []; 45 var numHits = data.hits.total || -1; 46 if(numHits > 0) { 47 this._items.push({i:data.hits.hits[0]._source, r:this, n:0}); 48 } 49 fetchHandler(this._items, request, data.hits.total); 50 this._numRows = data.hits.total; 51 } 52 }); 58 53 })
Note: See TracChangeset
for help on using the changeset viewer.