summaryrefslogtreecommitdiffstats
path: root/sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/data/query.js
diff options
context:
space:
mode:
Diffstat (limited to 'sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/data/query.js')
-rw-r--r--sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/data/query.js203
1 files changed, 0 insertions, 203 deletions
diff --git a/sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/data/query.js b/sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/data/query.js
deleted file mode 100644
index 41890b383..000000000
--- a/sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/data/query.js
+++ /dev/null
@@ -1,203 +0,0 @@
-(function( app ) {
-
- var data = app.ns("data");
- var ux = app.ns("ux");
-
- data.Query = ux.Observable.extend({
- defaults: {
- cluster: null, // (required) instanceof app.services.Cluster
- size: 50 // size of pages to return
- },
- init: function() {
- this._super();
- this.cluster = this.config.cluster;
- this.refuid = 0;
- this.refmap = {};
- this.indices = [];
- this.types = [];
- this.search = {
- query: { bool: { must: [], must_not: [], should: [] } },
- from: 0,
- size: this.config.size,
- sort: [],
- aggs: {},
- version: true
- };
- this.defaultClause = this.addClause();
- this.history = [ this.getState() ];
- },
- clone: function() {
- var q = new data.Query({ cluster: this.cluster });
- q.restoreState(this.getState());
- for(var uqid in q.refmap) {
- q.removeClause(uqid);
- }
- return q;
- },
- getState: function() {
- return $.extend(true, {}, { search: this.search, indices: this.indices, types: this.types });
- },
- restoreState: function(state) {
- state = $.extend(true, {}, state || this.history[this.history.length - 1]);
- this.indices = state.indices;
- this.types = state.types;
- this.search = state.search;
- },
- getData: function() {
- return JSON.stringify(this.search);
- },
- query: function() {
- var state = this.getState();
- this.cluster.post(
- (this.indices.join(",") || "_all") + "/" + ( this.types.length ? this.types.join(",") + "/" : "") + "_search",
- this.getData(),
- function(results) {
- if(results === null) {
- alert(i18n.text("Query.FailAndUndo"));
- this.restoreState();
- return;
- }
- this.history.push(state);
-
- this.fire("results", this, results);
- }.bind(this));
- },
- loadParents: function(res,metadata){
- //create data for mget
- var data = { docs :[] };
- var indexToTypeToParentIds = {};
- res.hits.hits.forEach(function(hit) {
- if (typeof hit.fields != "undefined"){
- if (typeof hit.fields._parent != "undefined"){
- var parentType = metadata.indices[hit._index].parents[hit._type];
- if (typeof indexToTypeToParentIds[hit._index] == "undefined"){
- indexToTypeToParentIds[hit._index] = new Object();
- }
- if (typeof indexToTypeToParentIds[hit._index][hit._type] == "undefined"){
- indexToTypeToParentIds[hit._index][hit._type] = new Object();
- }
- if (typeof indexToTypeToParentIds[hit._index][hit._type][hit.fields._parent] == "undefined"){
- indexToTypeToParentIds[hit._index][hit._type][hit.fields._parent] = null;
- data.docs.push({ _index:hit._index, _type:parentType, _id:hit.fields._parent});
- }
- }
- }
- });
-
- //load parents
- var state = this.getState();
- this.cluster.post("_mget",JSON.stringify(data),
- function(results) {
- if(results === null) {
- alert(i18n.text("Query.FailAndUndo"));
- this.restoreState();
- return;
- }
- this.history.push(state);
- var indexToTypeToParentIdToHit = new Object();
- results.docs.forEach(function(doc) {
- if (typeof indexToTypeToParentIdToHit[doc._index] == "undefined"){
- indexToTypeToParentIdToHit[doc._index] = new Object();
- }
-
- if (typeof indexToTypeToParentIdToHit[doc._index][doc._type] == "undefined"){
- indexToTypeToParentIdToHit[doc._index][doc._type] = new Object();
- }
-
- indexToTypeToParentIdToHit[doc._index][doc._type][doc._id] = doc;
- });
-
- res.hits.hits.forEach(function(hit) {
- if (typeof hit.fields != "undefined"){
- if (typeof hit.fields._parent != "undefined"){
- var parentType = metadata.indices[hit._index].parents[hit._type];
- hit._parent = indexToTypeToParentIdToHit[hit._index][parentType][hit.fields._parent];
- }
- }
- });
-
- this.fire("resultsWithParents", this, res);
- }.bind(this));
- },
- setPage: function(page) {
- this.search.from = this.config.size * (page - 1);
- },
- setSort: function(index, desc) {
- var sortd = {}; sortd[index] = { reverse: !!desc };
- this.search.sort.unshift( sortd );
- for(var i = 1; i < this.search.sort.length; i++) {
- if(Object.keys(this.search.sort[i])[0] === index) {
- this.search.sort.splice(i, 1);
- break;
- }
- }
- },
- setIndex: function(index, add) {
- if(add) {
- if(! this.indices.contains(index)) this.indices.push(index);
- } else {
- this.indices.remove(index);
- }
- this.fire("setIndex", this, { index: index, add: !!add });
- },
- setType: function(type, add) {
- if(add) {
- if(! this.types.contains(type)) this.types.push(type);
- } else {
- this.types.remove(type);
- }
- this.fire("setType", this, { type: type, add: !!add });
- },
- addClause: function(value, field, op, bool) {
- bool = bool || "should";
- op = op || "match_all";
- field = field || "_all";
- var clause = this._setClause(value, field, op, bool);
- var uqid = "q-" + this.refuid++;
- this.refmap[uqid] = { clause: clause, value: value, field: field, op: op, bool: bool };
- if(this.search.query.bool.must.length + this.search.query.bool.should.length > 1) {
- this.removeClause(this.defaultClause);
- }
- this.fire("queryChanged", this, { uqid: uqid, search: this.search} );
- return uqid; // returns reference to inner query object to allow fast updating
- },
- removeClause: function(uqid) {
- var ref = this.refmap[uqid],
- bool = this.search.query.bool[ref.bool];
- bool.remove(ref.clause);
- if(this.search.query.bool.must.length + this.search.query.bool.should.length === 0) {
- this.defaultClause = this.addClause();
- }
- },
- addAggs: function(aggs) {
- var aggsId = "f-" + this.refuid++;
- this.search.aggs[aggsId] = aggs;
- this.refmap[aggsId] = { aggsId: aggsId, aggs: aggs };
- return aggsId;
- },
- removeAggs: function(aggsId) {
- delete this.search.aggs[aggsId];
- delete this.refmap[aggsId];
- },
- _setClause: function(value, field, op, bool) {
- var clause = {}, query = {};
- if(op === "match_all") {
- } else if(op === "query_string") {
- query["default_field"] = field;
- query["query"] = value;
- } else if(op === "missing") {
- op = "constant_score"
- var missing = {}, filter = {};
- missing["field"] = field;
- filter["missing"] = missing
- query["filter"] = filter;
- } else {
- query[field] = value;
- }
- clause[op] = query;
- this.search.query.bool[bool].push(clause);
- return clause;
- }
- });
-
-})( this.app );