summaryrefslogtreecommitdiffstats
path: root/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app
diff options
context:
space:
mode:
Diffstat (limited to 'sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app')
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/app.css39
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/app.js147
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/boot.js256
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/favicon.pngbin952 -> 0 bytes
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/loading.gifbin1849 -> 0 bytes
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/reset.css44
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/boolQuery.js90
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/dataSourceInterface.js39
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/metaData.js187
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/metaDataFactory.js34
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/model/model.js50
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/model/modelSpec.js89
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/query.js218
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/queryDataSourceInterface.js102
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/resultDataSourceInterface.js55
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/en_strings.js192
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/fr_strings.js179
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/pt_strings.js189
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/tr_strings.js192
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/zh_strings.js187
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/cluster/cluster.js62
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/cluster/clusterSpec.js80
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterState.js88
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js79
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferenceSpec.js38
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js50
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractField/abstractField.css1
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractField/abstractField.js64
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractPanel/abstractPanel.css43
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractPanel/abstractPanel.js98
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractWidget/abstractWidget.js64
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/anyRequest/anyRequest.css38
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/anyRequest/anyRequest.js250
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/browser/browser.css7
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/browser/browser.js73
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/button.css50
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/button.js68
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/buttonDemo.js24
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkField.js40
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkFieldDemo.js60
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkFieldSpec.js49
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnect.css3
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnect.js58
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnectSpec.js53
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterOverview/clusterOverview.css0
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterOverview/clusterOverview.js317
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/csvTable/csvTable.js99
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/dateHistogram/dateHistogram.js119
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/dialogPanel/dialogPanel.js37
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/draggablePanel/draggablePanel.js57
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/filterBrowser/filterBrowser.css9
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/filterBrowser/filterBrowser.js220
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/header/header.css10
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/header/header.js88
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/helpPanel/helpPanel.js36
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/indexOverview/indexOverview.js130
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/indexSelector/indexSelector.js60
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/infoPanel/infoPanel.css38
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/infoPanel/infoPanel.js24
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPanel/jsonPanel.css4
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPanel/jsonPanel.js39
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPretty/jsonPretty.css22
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPretty/jsonPretty.js104
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuButton/menuButton.css11
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuButton/menuButton.js37
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuPanel/menuPanel.css30
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuPanel/menuPanel.js58
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesView.css88
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesView.js292
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesViewDemo.js32
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/page/page.js29
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/panelForm/panelForm.css12
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/panelForm/panelForm.js41
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/queryFilter/queryFilter.css62
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/queryFilter/queryFilter.js292
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButton.js56
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButtonDemo.js27
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButtonSpec.js107
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/resultTable/resultTable.js70
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/selectMenuPanel/selectMenuPanel.css11
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/selectMenuPanel/selectMenuPanel.js48
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/sidebarSection/sidebarSection.css28
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/sidebarSection/sidebarSection.js56
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButton.css33
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButton.js69
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButtonDemo.js31
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/structuredQuery/structuredQuery.css7
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/structuredQuery/structuredQuery.js110
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/table/table.css92
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/table/table.js117
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/textField/textField.js39
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/textField/textFieldDemo.js28
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/toolbar/toolbar.css24
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/toolbar/toolbar.js40
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/class.js50
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/dragdrop.js139
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/fieldCollection.js40
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/observable.js61
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/singleton.js36
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/singletonSpec.js56
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/table.css20
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/templates/templateSpec.js96
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/templates/templates.js47
103 files changed, 0 insertions, 7664 deletions
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/app.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/app.css
deleted file mode 100644
index 08e2dcf95..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/app.css
+++ /dev/null
@@ -1,39 +0,0 @@
-.uiApp-header {
- background: #eee;
- position: fixed;
- width: 100%;
- z-index: 9;
-}
-
-.uiApp-header H1 {
- margin: -2px 0 -4px 0;
- float: left;
- padding-right: 25px;
-}
-
-.uiApp-headerMenu {
- border-bottom: 1px solid #bbb;
- padding: 0px 3px;
- height: 22px;
-}
-
-.uiApp-headerMenu .active {
- background: white;
- border-bottom-color: white;
-}
-
-.uiApp-headerMenuItem {
- border: 1px solid #bbb;
- padding: 4px 8px 1px ;
- margin: 2px 1px 0;
- height: 14px;
- cursor: pointer;
-}
-
-.uiApp-body {
- padding: 51px 0px 0px 0px;
-}
-
-.uiApp-headerNewMenuItem {
- color: blue;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/app.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/app.js
deleted file mode 100644
index 0b8729eb9..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/app.js
+++ /dev/null
@@ -1,147 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app, i18n ) {
-
- var ui = app.ns("ui");
- var services = app.ns("services");
-
- app.App = ui.AbstractWidget.extend({
- defaults: {
- base_uri: null
- },
- init: function(parent) {
- this._super();
- this.prefs = services.Preferences.instance();
- this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";
- if( this.base_uri.charAt( this.base_uri.length - 1 ) !== "/" ) {
- // XHR request fails if the URL is not ending with a "/"
- this.base_uri += "/";
- }
- if( this.config.auth_user ) {
- var credentials = window.btoa( this.config.auth_user + ":" + this.config.auth_password );
- $.ajaxSetup({
- headers: {
- "Authorization": "Basic " + credentials
- }
- });
- }
- this.cluster = new services.Cluster({ base_uri: this.base_uri });
- this._clusterState = new services.ClusterState({
- cluster: this.cluster
- });
-
- this._header = new ui.Header({ cluster: this.cluster, clusterState: this._clusterState });
- this.$body = $.joey( this._body_template() );
- this.el = $.joey(this._main_template());
- this.attach( parent );
- this.instances = {};
- this.el.find(".uiApp-headerMenuItem:first").click();
- if( this.config.dashboard ) {
- if( this.config.dashboard === "cluster" ) {
- var page = this.instances["ClusterOverview"];
- page._refreshButton.set( 5000 );
- }
- }
- },
-
- navigateTo: function( type, config, ev ) {
- if( ev.target.classList.contains( "uiApp-headerNewMenuItem" ) ) {
- this.showNew( type, config, ev );
- } else {
- var ref = type + "0";
- if(! this.instances[ ref ]) {
- this.createPage( type, 0, config );
- }
- this.show( ref, ev );
- }
- },
-
- createPage: function( type, id, config ) {
- var page = this.instances[ type + id ] = new ui[ type ]( config );
- this.$body.append( page );
- return page;
- },
-
- show: function( ref, ev ) {
- $( ev.target ).closest("DIV.uiApp-headerMenuItem").addClass("active").siblings().removeClass("active");
- for(var p in this.instances) {
- this.instances[p][ p === ref ? "show" : "hide" ]();
- }
- },
-
- showNew: function( type, config, jEv ) {
- var ref, page, $tab,
- type_index = 0;
-
- while ( ! page ) {
- ref = type + ( ++type_index );
- if (! ( ref in this.instances ) ) {
- page = this.createPage( type, type_index, config );
- }
- }
-
- // Add the tab and its click handlers
- $tab = $.joey({
- tag: "DIV",
- cls: "uiApp-headerMenuItem pull-left",
- text: i18n.text("Nav." + type ) + " " + type_index,
- onclick: function( ev ) { this.show( ref, ev ); }.bind(this),
- children: [
- { tag: "A", text: " [-]", onclick: function (ev) {
- $tab.remove();
- page.remove();
- delete this.instances[ ref ];
- }.bind(this) }
- ]
- });
-
- $('.uiApp-headerMenu').append( $tab );
- $tab.trigger("click");
- },
-
- _openAnyRequest_handler: function(ev) { this.navigateTo("AnyRequest", { cluster: this.cluster }, ev ); },
- _openStructuredQuery_handler: function(ev) { this.navigateTo("StructuredQuery", { cluster: this.cluster }, ev ); },
- _openBrowser_handler: function(ev) { this.navigateTo("Browser", { cluster: this.cluster }, ev ); },
- _openClusterOverview_handler: function(ev) { this.navigateTo("ClusterOverview", { cluster: this.cluster, clusterState: this._clusterState }, ev ); },
- _openIndexOverview_handler: function(ev) { this.navigateTo("IndexOverview", { cluster: this.cluster, clusterState: this._clusterState }, ev ); },
-
- _body_template: function() { return (
- { tag: "DIV", id: this.id("body"), cls: "uiApp-body" }
- ); },
-
- _main_template: function() {
- return { tag: "DIV", cls: "uiApp", children: [
- { tag: "DIV", id: this.id("header"), cls: "uiApp-header", children: [
- this._header,
- { tag: "DIV", cls: "uiApp-headerMenu", children: [
- { tag: "DIV", cls: "uiApp-headerMenuItem pull-left", text: i18n.text("Nav.Overview"), onclick: this._openClusterOverview_handler },
- { tag: "DIV", cls: "uiApp-headerMenuItem pull-left", text: i18n.text("Nav.Indices"), onclick: this._openIndexOverview_handler },
- { tag: "DIV", cls: "uiApp-headerMenuItem pull-left", text: i18n.text("Nav.Browser"), onclick: this._openBrowser_handler },
- { tag: "DIV", cls: "uiApp-headerMenuItem pull-left", text: i18n.text("Nav.StructuredQuery"), onclick: this._openStructuredQuery_handler, children: [
- { tag: "A", cls: "uiApp-headerNewMenuItem ", text: ' [+]' }
- ] },
- { tag: "DIV", cls: "uiApp-headerMenuItem pull-left", text: i18n.text("Nav.AnyRequest"), onclick: this._openAnyRequest_handler, children: [
- { tag: "A", cls: "uiApp-headerNewMenuItem ", text: ' [+]' }
- ] },
- ]}
- ]},
- this.$body
- ]};
- }
-
- });
-
-})( this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/boot.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/boot.js
deleted file mode 100644
index 46bd9341b..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/boot.js
+++ /dev/null
@@ -1,256 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function() {
-
- var window = this,
- $ = jQuery;
-
- function ns( namespace ) {
- return (namespace || "").split(".").reduce( function( space, name ) {
- return space[ name ] || ( space[ name ] = { ns: ns } );
- }, this );
- }
-
- var app = ns("app");
-
- var acx = ns("acx");
-
- /**
- * object iterator, returns an array with one element for each property of the object
- * @function
- */
- acx.eachMap = function(obj, fn, thisp) {
- var ret = [];
- for(var n in obj) {
- ret.push(fn.call(thisp, n, obj[n], obj));
- }
- return ret;
- };
-
- /**
- * augments the first argument with the properties of the second and subsequent arguments
- * like {@link $.extend} except that existing properties are not overwritten
- */
- acx.augment = function() {
- var args = Array.prototype.slice.call(arguments),
- src = (args.length === 1) ? this : args.shift(),
- augf = function(n, v) {
- if(! (n in src)) {
- src[n] = v;
- }
- };
- for(var i = 0; i < args.length; i++) {
- $.each(args[i], augf);
- }
- return src;
- };
-
- /**
- * tests whether the argument is an array
- * @function
- */
- acx.isArray = $.isArray;
-
- /**
- * tests whether the argument is an object
- * @function
- */
- acx.isObject = function (value) {
- return Object.prototype.toString.call(value) == "[object Object]";
- };
-
- /**
- * tests whether the argument is a function
- * @function
- */
- acx.isFunction = $.isFunction;
-
- /**
- * tests whether the argument is a date
- * @function
- */
- acx.isDate = function (value) {
- return Object.prototype.toString.call(value) == "[object Date]";
- };
-
- /**
- * tests whether the argument is a regexp
- * @function
- */
- acx.isRegExp = function (value) {
- return Object.prototype.toString.call(value) == "[object RegExp]";
- };
-
- /**
- * tests whether the value is blank or empty
- * @function
- */
- acx.isEmpty = function (value, allowBlank) {
- return value === null || value === undefined || ((acx.isArray(value) && !value.length)) || (!allowBlank ? value === '' : false);
- };
-
- /**
- * data type for performing chainable geometry calculations<br>
- * can be initialised x,y | {x, y} | {left, top}
- */
- acx.vector = function(x, y) {
- return new acx.vector.prototype.Init(x, y);
- };
-
- acx.vector.prototype = {
- Init : function(x, y) {
- x = x || 0;
- this.y = isFinite(x.y) ? x.y : (isFinite(x.top) ? x.top : (isFinite(y) ? y : 0));
- this.x = isFinite(x.x) ? x.x : (isFinite(x.left) ? x.left : (isFinite(x) ? x : 0));
- },
-
- add : function(i, j) {
- var d = acx.vector(i, j);
- return new this.Init(this.x + d.x, this.y + d.y);
- },
-
- sub : function(i, j) {
- var d = acx.vector(i, j);
- return new this.Init(this.x - d.x, this.y - d.y);
- },
-
- addX : function(i) {
- return new this.Init(this.x + i, this.y);
- },
-
- addY : function(j) {
- return new this.Init(this.x, this.y + j);
- },
-
- mod : function(fn) { // runs a function against the x and y values
- return new this.Init({x: fn.call(this, this.x, "x"), y: fn.call(this, this.y, "y")});
- },
-
- /** returns true if this is within a rectangle formed by the points p and q */
- within : function(p, q) {
- return ( this.x >= ((p.x < q.x) ? p.x : q.x) && this.x <= ((p.x > q.x) ? p.x : q.x) &&
- this.y >= ((p.y < q.y) ? p.y : q.y) && this.y <= ((p.y > q.y) ? p.y : q.y) );
- },
-
- asOffset : function() {
- return { top: this.y, left: this.x };
- },
-
- asSize : function() {
- return { height: this.y, width: this.x };
- }
- };
-
- acx.vector.prototype.Init.prototype = acx.vector.prototype;
-
- /**
- * short cut functions for working with vectors and jquery.
- * Each function returns the equivalent jquery value in a two dimentional vector
- */
- $.fn.vSize = function() { return acx.vector(this.width(), this.height()); };
- $.fn.vOuterSize = function(margin) { return acx.vector(this.outerWidth(margin), this.outerHeight(margin)); };
- $.fn.vScroll = function() { return acx.vector(this.scrollLeft(), this.scrollTop()); };
- $.fn.vOffset = function() { return acx.vector(this.offset()); };
- $.fn.vPosition = function() { return acx.vector(this.position()); };
- $.Event.prototype.vMouse = function() { return acx.vector(this.pageX, this.pageY); };
-
- /**
- * object extensions (ecma5 compatible)
- */
- acx.augment(Object, {
- keys: function(obj) {
- var ret = [];
- for(var n in obj) if(Object.prototype.hasOwnProperty.call(obj, n)) ret.push(n);
- return ret;
- }
- });
-
- /**
- * Array prototype extensions
- */
- acx.augment(Array.prototype, {
- 'contains' : function(needle) {
- return this.indexOf(needle) !== -1;
- },
-
- // returns a new array consisting of all the members that are in both arrays
- 'intersection' : function(b) {
- var ret = [];
- for(var i = 0; i < this.length; i++) {
- if(b.contains(this[i])) {
- ret.push(this[i]);
- }
- }
- return ret;
- },
-
- 'remove' : function(value) {
- var i = this.indexOf(value);
- if(i !== -1) {
- this.splice(i, 1);
- }
- }
- });
-
- /**
- * String prototype extensions
- */
- acx.augment(String.prototype, {
- 'contains' : function(needle) {
- return this.indexOf(needle) !== -1;
- },
-
- 'equalsIgnoreCase' : function(match) {
- return this.toLowerCase() === match.toLowerCase();
- },
-
- 'escapeHtml' : function() {
- return this.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
- },
-
- 'escapeJS' : function() {
- var meta = {'"':'\\"', '\\':'\\\\', '/':'\\/', '\b':'\\b', '\f':'\\f', '\n':'\\n', '\r':'\\r', '\t':'\\t'},
- xfrm = function(c) { return meta[c] || "\\u" + c.charCodeAt(0).toString(16).zeroPad(4); };
- return this.replace(new RegExp('(["\\\\\x00-\x1f\x7f-\uffff])', 'g'), xfrm);
- },
-
- 'escapeRegExp' : function() {
- var ret = "", esc = "\\^$*+?.()=|{,}[]-";
- for ( var i = 0; i < this.length; i++) {
- ret += (esc.contains(this.charAt(i)) ? "\\" : "") + this.charAt(i);
- }
- return ret;
- },
-
- 'zeroPad' : function(len) {
- return ("0000000000" + this).substring(this.length - len + 10);
- }
- });
-
- $.fn.forEach = Array.prototype.forEach;
-
- // joey / jquery integration
- $.joey = function( obj ) {
- return $( window.joey( obj ) );
- };
-
- window.joey.plugins.push( function( obj ) {
- if( obj instanceof jQuery ) {
- return obj[0];
- }
- });
-
-})();
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/favicon.png b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/favicon.png
deleted file mode 100644
index f433ec6d0..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/favicon.png
+++ /dev/null
Binary files differ
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/loading.gif b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/loading.gif
deleted file mode 100644
index f001e23f7..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/loading.gif
+++ /dev/null
Binary files differ
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/reset.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/reset.css
deleted file mode 100644
index 29a5f1b69..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/base/reset.css
+++ /dev/null
@@ -1,44 +0,0 @@
-BODY {
- font-family: Verdana, sans-serif;
- font-size: 73%;
- padding: 0;
- margin: 0;
-}
-
-INPUT, SELECT, TEXTAREA {
- border: 1px solid #cecece;
- padding: 1px 3px;
- background: white;
-}
-
-SELECT {
- padding: 0;
-}
-
-.saf SELECT {
- margin-top: 0;
- margin-bottom: 0;
-}
-
-TEXTAREA, CODE {
- font-family: monospace;
- font-size: 13px;
-}
-
-BUTTON::-moz-focus-inner {
- border: none;
-}
-
-.pull-left {
- float: left;
-}
-
-.pull-right {
- float: right;
-}
-
-.loading {
- background-image: url(loading.gif);
- background-repeat: no-repeat;
- text-indent: 20px;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/boolQuery.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/boolQuery.js
deleted file mode 100644
index a43c51cf9..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/boolQuery.js
+++ /dev/null
@@ -1,90 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var data = app.ns("data");
- var ux = app.ns("ux");
-
- data.BoolQuery = ux.Observable.extend({
- defaults: {
- size: 50 // size of pages to return
- },
- init: function() {
- this._super();
- this.refuid = 0;
- this.refmap = {};
- this.search = {
- query: { bool: { must: [], must_not: [], should: [] } },
- from: 0,
- size: this.config.size,
- sort: [],
- aggs: {}
- };
- this.defaultClause = this.addClause();
- },
- setSize: function(size) {
- this.search.size = parseInt( size, 10 );
- },
- setPage: function(page) {
- this.search.from = this.config.size * (page - 1) + 1;
- },
- 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];
- var clauseIdx = bool.indexOf(ref.clause);
- // Check that this clause hasn't already been removed
- if (clauseIdx >=0) {
- bool.splice(clauseIdx, 1);
- }
- },
- _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.substring(field.indexOf(".")+1)] = value;
- }
- clause[op] = query;
- this.search.query.bool[bool].push(clause);
- return clause;
- },
- getData: function() {
- return JSON.stringify(this.search);
- }
- });
-
-})( this.app ); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/dataSourceInterface.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/dataSourceInterface.js
deleted file mode 100644
index dc82e3075..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/dataSourceInterface.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var data = app.ns("data");
- var ux = app.ns("ux");
-
- data.DataSourceInterface = ux.Observable.extend({
- /*
- properties
- meta = { total: 0 },
- headers = [ { name: "" } ],
- data = [ { column: value, column: value } ],
- sort = { column: "name", dir: "desc" }
- events
- data: function( DataSourceInterface )
- */
- _getSummary: function(res) {
- this.summary = i18n.text("TableResults.Summary", res._shards.successful, res._shards.total, res.hits.total, (res.took / 1000).toFixed(3));
- },
- _getMeta: function(res) {
- this.meta = { total: res.hits.total, shards: res._shards, tool: res.took };
- }
- });
-
-})( this.app ); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/metaData.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/metaData.js
deleted file mode 100644
index 03bc7f0d1..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/metaData.js
+++ /dev/null
@@ -1,187 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- /*
- notes on elasticsearch terminology used in this project
-
- indices[index] contains one or more
- types[type] contains one or more
- documents contain one or more
- paths[path]
- each path contains one element of data
- each path maps to one field
-
- eg PUT, "/twitter/tweet/1"
- {
- user: "mobz",
- date: "2011-01-01",
- message: "You know, for browsing elasticsearch",
- name: {
- first: "Ben",
- last: "Birch"
- }
- }
-
- creates
- 1 index: twitter
- this is the collection of index data
- 1 type: tweet
- this is the type of document (kind of like a table in sql)
- 1 document: /twitter/tweet/1
- this is an actual document in the index ( kind of like a row in sql)
- 5 paths: [ ["user"], ["date"], ["message"], ["name","first"], ["name","last"] ]
- since documents can be heirarchical this maps a path from a document root to a piece of data
- 5 fields: [ "user", "date", "message", "first", "last" ]
- this is an indexed 'column' of data. fields are not heirarchical
-
- the relationship between a path and a field is called a mapping. mappings also contain a wealth of information about how es indexes the field
-
- notes
- 1) a path is stored as an array, the dpath is <index> . <type> . path.join("."),
- which can be considered the canonical reference for a mapping
- 2) confusingly, es uses the term index for both the collection of indexed data, and the individually indexed fields
- so the term index_name is the same as field_name in this sense.
-
- */
-
- var data = app.ns("data");
- var ux = app.ns("ux");
-
- var coretype_map = {
- "string" : "string",
- "keyword" : "string",
- "text" : "string",
- "byte" : "number",
- "short" : "number",
- "long" : "number",
- "integer" : "number",
- "float" : "number",
- "double" : "number",
- "ip" : "number",
- "date" : "date",
- "boolean" : "boolean",
- "binary" : "binary",
- "multi_field" : "multi_field"
- };
-
- var default_property_map = {
- "string" : { "store" : "no", "index" : "analysed" },
- "number" : { "store" : "no", "precision_steps" : 4 },
- "date" : { "store" : "no", "format" : "dateOptionalTime", "index": "yes", "precision_steps": 4 },
- "boolean" : { "store" : "no", "index": "yes" },
- "binary" : { },
- "multi_field" : { }
- };
-
- // parses metatdata from a cluster, into a bunch of useful data structures
- data.MetaData = ux.Observable.extend({
- defaults: {
- state: null // (required) response from a /_cluster/state request
- },
- init: function() {
- this._super();
- this.refresh(this.config.state);
- },
- getIndices: function(alias) {
- return alias ? this.aliases[alias] : this.indicesList;
- },
- // returns an array of strings containing all types that are in all of the indices passed in, or all types
- getTypes: function(indices) {
- var indices = indices || [], types = [];
- this.typesList.forEach(function(type) {
- for(var i = 0; i < indices.length; i++) {
- if(! this.indices[indices[i]].types.contains(type))
- return;
- }
- types.push(type);
- }, this);
- return types;
- },
- refresh: function(state) {
- // currently metadata expects all like named fields to have the same type, even when from different types and indices
- var aliases = this.aliases = {};
- var indices = this.indices = {};
- var types = this.types = {};
- var fields = this.fields = {};
- var paths = this.paths = {};
-
- function createField( mapping, index, type, path, name ) {
- var dpath = [ index, type ].concat( path ).join( "." );
- var field_name = mapping.index_name || path.join( "." );
- var field = paths[ dpath ] = fields[ field_name ] || $.extend({
- field_name : field_name,
- core_type : coretype_map[ mapping.type ],
- dpaths : []
- }, default_property_map[ coretype_map[ mapping.type ] ], mapping );
-
- if (field.type === "multi_field" && typeof field.fields !== "undefined") {
- for (var subField in field.fields) {
- field.fields[ subField ] = createField( field.fields[ subField ], index, type, path.concat( subField ), name + "." + subField );
- }
- }
- if (fields.dpaths) {
- field.dpaths.push(dpath);
- }
- return field;
- }
- function getFields(properties, type, index, listeners) {
- (function procPath(prop, path) {
- for (var n in prop) {
- if ("properties" in prop[n]) {
- procPath( prop[ n ].properties, path.concat( n ) );
- } else {
- var field = createField(prop[n], index, type, path.concat(n), n);
- listeners.forEach( function( listener ) {
- listener[ field.field_name ] = field;
- } );
- }
- }
- })(properties, []);
- }
- for (var index in state.metadata.indices) {
- indices[index] = {
- types : [], fields : {}, paths : {}, parents : {}
- };
- indices[index].aliases = state.metadata.indices[index].aliases;
- indices[index].aliases.forEach(function(alias) {
- (aliases[alias] || (aliases[alias] = [])).push(index);
- });
- var mapping = state.metadata.indices[index].mappings;
- for (var type in mapping) {
- indices[index].types.push(type);
- if ( type in types) {
- types[type].indices.push(index);
- } else {
- types[type] = {
- indices : [index], fields : {}
- };
- }
- getFields(mapping[type].properties, type, index, [fields, types[type].fields, indices[index].fields]);
- if ( typeof mapping[type]._parent !== "undefined") {
- indices[index].parents[type] = mapping[type]._parent.type;
- }
- }
- }
-
- this.aliasesList = Object.keys(aliases);
- this.indicesList = Object.keys(indices);
- this.typesList = Object.keys(types);
- this.fieldsList = Object.keys(fields);
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/metaDataFactory.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/metaDataFactory.js
deleted file mode 100644
index e5d5cd8de..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/metaDataFactory.js
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var data = app.ns("data");
- var ux = app.ns("ux");
-
- data.MetaDataFactory = ux.Observable.extend({
- defaults: {
- cluster: null // (required) an app.services.Cluster
- },
- init: function() {
- this._super();
- this.config.cluster.get("_cluster/state", function(data) {
- this.metaData = new app.data.MetaData({state: data});
- this.fire("ready", this.metaData, { originalData: data }); // TODO originalData needed for legacy ui.FilterBrowser
- }.bind(this));
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/model/model.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/model/model.js
deleted file mode 100644
index fa468177e..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/model/model.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var data = app.ns("data");
- var ux = app.ns("ux");
-
- data.Model = ux.Observable.extend({
- defaults: {
- data: null
- },
- init: function() {
- this.set( this.config.data );
- },
- set: function( key, value ) {
- if( arguments.length === 1 ) {
- this._data = $.extend( {}, key );
- } else {
- key.split(".").reduce(function( ptr, prop, i, props) {
- if(i === (props.length - 1) ) {
- ptr[prop] = value;
- } else {
- if( !(prop in ptr) ) {
- ptr[ prop ] = {};
- }
- return ptr[prop];
- }
- }, this._data );
- }
- },
- get: function( key ) {
- return key.split(".").reduce( function( ptr, prop ) {
- return ( ptr && ( prop in ptr ) ) ? ptr[ prop ] : undefined;
- }, this._data );
- },
- });
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/model/modelSpec.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/model/modelSpec.js
deleted file mode 100644
index 48e24fe3f..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/model/modelSpec.js
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-describe("app.data.Model", function() {
-
- var Model = window.app.data.Model;
-
- it("test setting model does a shallow copy", function() {
- var test = {};
- var array = [ 1, 2, 3 ];
- var m = new Model({
- data: {
- "foo": "bar",
- "test": test,
- "array": array
- }
- });
- expect( m.get("foo") ).toBe("bar");
- expect( m.get("array").length ).toBe( 3 );
- expect( m.get("array")[1] ).toBe( 2 );
- expect( m.get("array") ).toBe( array );
- expect( m.get("test") ).toBe( test );
- });
-
- it("should replace model with shallow copy when put with no path", function() {
- var m = new Model({ foo: "bar" });
- m.set({ bar: "blat" });
- expect( m.get("foo")).toBe( undefined );
- expect( m.get("bar")).toBe("blat");
- });
-
- it("test getting values from deep in a model", function() {
- var m = new Model({
- data: {
- "foo": {
- "bar": {
- "baz": {
- "quix": "abcdefg"
- }
- }
- }
- }
- });
-
- expect( m.get("foo.bar.baz.quix") ).toBe( "abcdefg" );
- });
-
- it("test setting non-existant values creates new values", function() {
- var m = new Model({
- data: {
- "foo": {
- "bar": "abc"
- }
- }
- });
- m.set("foo.bar", "123" );
- m.set("foo.baz", "456" );
- expect( m.get("foo.bar") ).toBe( "123" );
- expect( m.get("foo.baz") ).toBe( "456" );
- });
-
- it("test setting values deep in a model", function() {
- var m = new Model({
- data: {
- "foo": {
- "bar": "abc"
- }
- }
- });
- m.set("foo.bar", "123" );
- m.set("foo.baz", "456" );
- m.set("foo.something.else.is.here", "xyz" );
- expect( m.get("foo.something.else.is").here ).toBe( "xyz" );
- expect( m.get("foo.something.else.is.here") ).toBe( "xyz" );
- });
-
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/query.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/query.js
deleted file mode 100644
index 6b9733c73..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/query.js
+++ /dev/null
@@ -1,218 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(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 );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/queryDataSourceInterface.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/queryDataSourceInterface.js
deleted file mode 100644
index 9daf4d0df..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/queryDataSourceInterface.js
+++ /dev/null
@@ -1,102 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var data = app.ns("data");
-
- data.QueryDataSourceInterface = data.DataSourceInterface.extend({
- defaults: {
- metadata: null, // (required) instanceof app.data.MetaData, the cluster metadata
- query: null // (required) instanceof app.data.Query the data source
- },
- init: function() {
- this._super();
- this.config.query.on("results", this._results_handler.bind(this) );
- this.config.query.on("resultsWithParents", this._load_parents.bind(this) );
- },
- _results_handler: function(query, res) {
- this._getSummary(res);
- this._getMeta(res);
- var sort = query.search.sort[0] || { "_score": { reverse: false }};
- var sortField = Object.keys(sort)[0];
- this.sort = { column: sortField, dir: (sort[sortField].reverse ? "asc" : "desc") };
- this._getData(res, this.config.metadata);
- this.fire("data", this);
- },
- _load_parents: function(query, res) {
- query.loadParents(res, this.config.metadata);
- },
- _getData: function(res, metadata) {
- var metaColumns = ["_index", "_type", "_id", "_score"];
- var columns = this.columns = [].concat(metaColumns);
-
- this.data = res.hits.hits.map(function(hit) {
- var row = (function(path, spec, row) {
- for(var prop in spec) {
- if(acx.isObject(spec[prop])) {
- arguments.callee(path.concat(prop), spec[prop], row);
- } else if(acx.isArray(spec[prop])) {
- if(spec[prop].length) {
- arguments.callee(path.concat(prop), spec[prop][0], row)
- }
- } else {
- var dpath = path.concat(prop).join(".");
- if(metadata.paths[dpath]) {
- var field_name = metadata.paths[dpath].field_name;
- if(! columns.contains(field_name)) {
- columns.push(field_name);
- }
- row[field_name] = (spec[prop] === null ? "null" : spec[prop] ).toString();
- } else {
- // TODO: field not in metadata index
- }
- }
- }
- return row;
- })([ hit._index, hit._type ], hit._source, {});
- metaColumns.forEach(function(n) { row[n] = hit[n]; });
- row._source = hit;
- if (typeof hit._parent!= "undefined") {
- (function(prefix, path, spec, row) {
- for(var prop in spec) {
- if(acx.isObject(spec[prop])) {
- arguments.callee(prefix, path.concat(prop), spec[prop], row);
- } else if(acx.isArray(spec[prop])) {
- if(spec[prop].length) {
- arguments.callee(prefix, path.concat(prop), spec[prop][0], row)
- }
- } else {
- var dpath = path.concat(prop).join(".");
- if(metadata.paths[dpath]) {
- var field_name = metadata.paths[dpath].field_name;
- var column_name = prefix+"."+field_name;
- if(! columns.contains(column_name)) {
- columns.push(column_name);
- }
- row[column_name] = (spec[prop] === null ? "null" : spec[prop] ).toString();
- } else {
- // TODO: field not in metadata index
- }
- }
- }
- })(hit._parent._type,[hit._parent._index, hit._parent._type], hit._parent._source, row);
- }
- return row;
- }, this);
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/resultDataSourceInterface.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/resultDataSourceInterface.js
deleted file mode 100644
index 69e585248..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/data/resultDataSourceInterface.js
+++ /dev/null
@@ -1,55 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var data = app.ns("data");
-
- data.ResultDataSourceInterface = data.DataSourceInterface.extend({
- results: function(res) {
- this._getSummary(res);
- this._getMeta(res);
- this._getData(res);
- this.sort = {};
- this.fire("data", this);
- },
- _getData: function(res) {
- var columns = this.columns = [];
- this.data = res.hits.hits.map(function(hit) {
- var row = (function(path, spec, row) {
- for(var prop in spec) {
- if(acx.isObject(spec[prop])) {
- arguments.callee(path.concat(prop), spec[prop], row);
- } else if(acx.isArray(spec[prop])) {
- if(spec[prop].length) {
- arguments.callee(path.concat(prop), spec[prop][0], row)
- }
- } else {
- var dpath = path.concat(prop).join(".");
- if(! columns.contains(dpath)) {
- columns.push(dpath);
- }
- row[dpath] = (spec[prop] || "null").toString();
- }
- }
- return row;
- })([ hit._type ], hit, {});
- row._source = hit;
- return row;
- }, this);
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/en_strings.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/en_strings.js
deleted file mode 100644
index 3ee522ac8..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/en_strings.js
+++ /dev/null
@@ -1,192 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-i18n.setKeys({
- "General.Elasticsearch": "Elasticsearch",
- "General.LoadingAggs": "Loading Aggregations...",
- "General.Searching": "Searching...",
- "General.Search": "Search",
- "General.Help": "Help",
- "General.HelpGlyph": "?",
- "General.CloseGlyph": "X",
- "General.RefreshResults": "Refresh",
- "General.ManualRefresh": "Manual Refresh",
- "General.RefreshQuickly": "Refresh quickly",
- "General.Refresh5seconds": "Refresh every 5 seconds",
- "General.Refresh1minute": "Refresh every minute",
- "AliasForm.AliasName": "Alias Name",
- "AliasForm.NewAliasForIndex": "New Alias for {0}",
- "AliasForm.DeleteAliasMessage": "type ''{0}'' to delete {1}. There is no undo",
- "AnyRequest.DisplayOptions" : "Display Options",
- "AnyRequest.AsGraph" : "Graph Results",
- "AnyRequest.AsJson" : "Show Raw JSON",
- "AnyRequest.AsTable" : "Show Search Results Table",
- "AnyRequest.History" : "History",
- "AnyRequest.RepeatRequest" : "Repeat Request",
- "AnyRequest.RepeatRequestSelect" : "Repeat request every ",
- "AnyRequest.Transformer" : "Result Transformer",
- "AnyRequest.Pretty": "Pretty",
- "AnyRequest.Query" : "Query",
- "AnyRequest.Request": "Request",
- "AnyRequest.Requesting": "Requesting...",
- "AnyRequest.ValidateJSON": "Validate JSON",
- "Browser.Title": "Browser",
- "Browser.ResultSourcePanelTitle": "Result Source",
- "Command.DELETE": "DELETE",
- "Command.SHUTDOWN": "SHUTDOWN",
- "Command.DeleteAliasMessage": "Delete Alias?",
- "ClusterOverView.IndexName": "Index Name",
- "ClusterOverview.NumShards": "Number of Shards",
- "ClusterOverview.NumReplicas": "Number of Replicas",
- "ClusterOverview.NewIndex": "New Index",
- "IndexActionsMenu.Title": "Actions",
- "IndexActionsMenu.NewAlias": "New Alias...",
- "IndexActionsMenu.Refresh": "Refresh",
- "IndexActionsMenu.Flush": "Flush",
- "IndexActionsMenu.Optimize": "Optimize...",
- "IndexActionsMenu.Snapshot": "Gateway Snapshot",
- "IndexActionsMenu.Analyser": "Test Analyser",
- "IndexActionsMenu.Open": "Open",
- "IndexActionsMenu.Close": "Close",
- "IndexActionsMenu.Delete": "Delete...",
- "IndexInfoMenu.Title": "Info",
- "IndexInfoMenu.Status": "Index Status",
- "IndexInfoMenu.Metadata": "Index Metadata",
- "IndexCommand.TextToAnalyze": "Text to Analyse",
- "IndexCommand.ShutdownMessage": "type ''{0}'' to shutdown {1}. Node can NOT be restarted from this interface",
- "IndexOverview.PageTitle": "Indices Overview",
- "IndexSelector.NameWithDocs": "{0} ({1} docs)",
- "IndexSelector.SearchIndexForDocs": "Search {0} for documents where:",
- "FilterBrowser.OutputType": "Output Results: {0}",
- "FilterBrowser.OutputSize": "Number of Results: {0}",
- "Header.ClusterHealth": "cluster health: {0} ({1} of {2})",
- "Header.ClusterNotConnected": "cluster health: not connected",
- "Header.Connect": "Connect",
- "Nav.AnyRequest": "Any Request",
- "Nav.Browser": "Browser",
- "Nav.ClusterHealth": "Cluster Health",
- "Nav.ClusterState": "Cluster State",
- "Nav.ClusterNodes": "Nodes Info",
- "Nav.Info": "Info",
- "Nav.NodeStats": "Nodes Stats",
- "Nav.Overview": "Overview",
- "Nav.Indices": "Indices",
- "Nav.Plugins": "Plugins",
- "Nav.Status": "Indices Stats",
- "Nav.Templates": "Templates",
- "Nav.StructuredQuery": "Structured Query",
- "NodeActionsMenu.Title": "Actions",
- "NodeActionsMenu.Shutdown": "Shutdown...",
- "NodeInfoMenu.Title": "Info",
- "NodeInfoMenu.ClusterNodeInfo": "Cluster Node Info",
- "NodeInfoMenu.NodeStats": "Node Stats",
- "NodeType.Client": "Client Node",
- "NodeType.Coord": "Coordinator",
- "NodeType.Master": "Master Node",
- "NodeType.Tribe": "Tribe Node",
- "NodeType.Worker": "Worker Node",
- "NodeType.Unassigned": "Unassigned",
- "OptimizeForm.OptimizeIndex": "Optimize {0}",
- "OptimizeForm.MaxSegments": "Maximum # Of Segments",
- "OptimizeForm.ExpungeDeletes": "Only Expunge Deletes",
- "OptimizeForm.FlushAfter": "Flush After Optimize",
- "OptimizeForm.WaitForMerge": "Wait For Merge",
- "Overview.PageTitle" : "Cluster Overview",
- "Output.JSON": "JSON",
- "Output.Table": "Table",
- "Output.CSV": "CSV",
- "Output.ShowSource": "Show query source",
- "Preference.SortCluster": "Sort Cluster",
- "Sort.ByName": "By Name",
- "Sort.ByAddress": "By Address",
- "Sort.ByType": "By Type",
- "Preference.SortIndices": "Sort Indices",
- "SortIndices.Descending": "Descending",
- "SortIndices.Ascending": "Ascending",
- "Preference.ViewAliases": "View Aliases",
- "ViewAliases.Grouped": "Grouped",
- "ViewAliases.List": "List",
- "ViewAliases.None": "None",
- "Overview.IndexFilter": "Index Filter",
- "TableResults.Summary": "Searched {0} of {1} shards. {2} hits. {3} seconds",
- "QueryFilter.AllIndices": "All Indices",
- "QueryFilter.AnyValue": "any",
- "QueryFilter-Header-Indices": "Indices",
- "QueryFilter-Header-Types": "Types",
- "QueryFilter-Header-Fields": "Fields",
- "QueryFilter.DateRangeHint.from": "From : {0}",
- "QueryFilter.DateRangeHint.to": " To : {0}",
- "Query.FailAndUndo": "Query Failed. Undoing last changes",
- "StructuredQuery.ShowRawJson": "Show Raw JSON"
-});
-
-i18n.setKeys({
- "AnyRequest.TransformerHelp" : "\
- <p>The Result Transformer can be used to post process the raw json results from a request into a more useful format.</p>\
- <p>The transformer should contain the body of a javascript function. The return value from the function becomes the new value passed to the json printer</p>\
- <p>Example:<br>\
- <code>return root.hits.hits[0];</code> would traverse a result set to show just the first match<br>\
- <code>return Object.keys(root.nodes).reduce(function(tot, node) { return tot + root.nodes[node].os.mem.used_in_bytes; }, 0);</code> would return the total memory used across an entire cluster<br></p>\
- <p>The following functions are available and can be useful processing arrays and objects<br>\
- <ul>\
- <li><i>Object.keys</i>(object) := array</li>\
- <li>array.<i>forEach</i>(function(prop, index))</li>\
- <li>array.<i>map</i>(function(prop, index)) := array</li>\
- <li>array.<i>reduce</i>(function(accumulator, prop, index), initial_value) := final_value</li>\
- </ul>\
- <p>When Repeat Request is running, an extra parameter called prev is passed to the transformation function. This allows comparisons, and cumulative graphing</p>\
- <p>Example:<br>\
- <code>var la = [ root.nodes[Object.keys(root.nodes)[0]].os.load_average[0] ]; return prev ? la.concat(prev) : la;</code> would return the load average on the first cluster node over the last minute\
- This could be fed into the Graph to produce a load graph for the node\
- "
-});
-
-i18n.setKeys({
- "AnyRequest.DisplayOptionsHelp" : "\
- <p>Raw Json: shows complete results of the query and transformation in raw JSON format </p>\
- <p>Graph Results: To produce a graph of your results, use the result transformer to produce an array of values</p>\
- <p>Search Results Table: If your query is a search, you can display the results of the search in a table.</p>\
- "
-});
-
-i18n.setKeys({
- "QueryFilter.DateRangeHelp" : "\
- <p>Date fields accept a natural language query to produce a From and To date that form a range that the results are queried over.</p>\
- <p>The following formats are supported:</p>\
- <ul>\
- <li><b>Keywords / Key Phrases</b><br>\
- <code>now<br> today<br> tomorrow<br> yesterday<br> last / this / next + week / month / year</code><br>\
- searches for dates matching the keyword. <code>last year</code> would search all of last year.</li>\
- <li><b>Ranges</b><br>\
- <code>1000 secs<br> 5mins<br> 1day<br> 2days<br> 80d<br> 9 months<br> 2yrs</code> (spaces optional, many synonyms for range qualifiers)<br>\
- Create a search range centered on <code>now</code> extending into the past and future by the amount specified.</li>\
- <li><b>DateTime and Partial DateTime</b><br>\
- <code>2011<br> 2011-01<br> 2011-01-18<br> 2011-01-18 12<br> 2011-01-18 12:32<br> 2011-01-18 12:32:45</code><br>\
- these formats specify a specific date range. <code>2011</code> would search the whole of 2011, while <code>2011-01-18 12:32:45</code> would only search for results in that 1 second range</li>\
- <li><b>Time and Time Partials</b><br>\
- <code>12<br> 12:32<br> 12:32:45</code><br>\
- these formats search for a particular time during the current day. <code>12:32</code> would search that minute during today</li>\
- <li><b>Date Ranges</b><br>\
- <code>2010 -&gt; 2011<br> last week -&gt; next week<br> 2011-05 -&gt;<br> &lt; now</code><br>\
- A Date Range is created by specifying two dates in any format (Keyword / DateTime / Time) separated by &lt; or -&gt; (both do the same thing). If either end of the date range is missing, it is the same as having no constraint in that direction.</li>\
- <li><b>Date Range using Offset</b><br>\
- <code>2010 -> 1yr<br> 3mins < now</code>\
- Searches the specified date including the range in the direction specified.</li>\
- <li><b>Anchored Ranges</b><br>\
- <code>2010-05-13 05:13 <> 10m<br> now <> 1yr<br> lastweek <> 1month</code><br>\
- Similar to above except the range is extend in both directions from the anchor date</li>\
- </ul>\
- "
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/fr_strings.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/fr_strings.js
deleted file mode 100644
index 1efb5ab82..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/fr_strings.js
+++ /dev/null
@@ -1,179 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-i18n.setKeys({
-// "General.Elasticsearch": "Elasticsearch",
- "General.LoadingAggs" : "Chargement des facettes...",
- "General.Searching": "Recherche en cours...",
- "General.Search": "Recherche",
- "General.Help": "Aide",
-// "General.HelpGlyph": "?",
-// "General.CloseGlyph": "X",
- "General.RefreshResults": "Rafraîchir",
- "General.ManualRefresh": "Rafraîchissement manuel",
- "General.RefreshQuickly": "Rafraîchissement rapide",
- "General.Refresh5seconds": "Rafraîchissement toutes les 5 secondes",
- "General.Refresh1minute": "Rafraîchissement toutes les minutes",
- "AliasForm.AliasName": "Alias",
- "AliasForm.NewAliasForIndex": "Nouvel Alias pour {0}",
- "AliasForm.DeleteAliasMessage": "Entrez ''{0}'' pour effacer {1}. Attention, action irréversible.",
- "AnyRequest.DisplayOptions" : "Options d'affichage",
- "AnyRequest.AsGraph" : "En graphe",
- "AnyRequest.AsJson" : "En JSON brut",
- "AnyRequest.AsTable" : "En tableau",
- "AnyRequest.History" : "Historique",
- "AnyRequest.RepeatRequest" : "Répétition automatique de la requête",
- "AnyRequest.RepeatRequestSelect" : "Répéter la requête toutes les ",
- "AnyRequest.Transformer" : "Transformation des résultats",
-// "AnyRequest.Pretty": "Pretty",
- "AnyRequest.Query" : "Recherche",
- "AnyRequest.Request": "Requête",
- "AnyRequest.Requesting": "Requête en cours...",
- "AnyRequest.ValidateJSON": "Valider le JSON",
- "Browser.Title": "Navigateur",
- "Browser.ResultSourcePanelTitle": "Résultat au format JSON",
- "Command.DELETE": "SUPPRIMER",
- "Command.SHUTDOWN": "ETEINDRE",
- "Command.DeleteAliasMessage": "Supprimer l'Alias?",
- "ClusterOverView.IndexName": "Index",
- "ClusterOverview.NumShards": "Nombre de shards",
- "ClusterOverview.NumReplicas": "Nombre de replica",
- "ClusterOverview.NewIndex": "Nouvel Index",
-// "IndexActionsMenu.Title": "Actions",
- "IndexActionsMenu.NewAlias": "Nouvel Alias...",
- "IndexActionsMenu.Refresh": "Rafraîchir",
- "IndexActionsMenu.Flush": "Flusher",
- "IndexActionsMenu.Optimize": "Optimiser...",
- "IndexActionsMenu.Snapshot": "Dupliquer l'index (Snapshot)",
- "IndexActionsMenu.Analyser": "Tester un analyseur",
- "IndexActionsMenu.Open": "Ouvrir",
- "IndexActionsMenu.Close": "Fermer",
- "IndexActionsMenu.Delete": "Effacer...",
-// "IndexInfoMenu.Title": "Info",
- "IndexInfoMenu.Status": "Etat de l'Index",
- "IndexInfoMenu.Metadata": "Métadonnées de l'Index",
- "IndexCommand.TextToAnalyze": "Texte à analyser",
- "IndexCommand.ShutdownMessage": "Entrez ''{0}'' pour éteindre {1}. Le noeud NE PEUT PAS être redémarré depuis cette interface.",
-// "IndexSelector.NameWithDocs": "{0} ({1} docs)",
- "IndexSelector.SearchIndexForDocs": "Chercher dans {0} les documents correspondant à",
- "FilterBrowser.OutputType": "Format d'affichage des résultats {0}",
- "FilterBrowser.OutputSize": "Nombre de Résultats: {0}",
- "Header.ClusterHealth": "Santé du cluster: {0} ({1} {2})",
- "Header.ClusterNotConnected": "Santé du cluster: non connecté",
- "Header.Connect": "Se connecter",
- "Nav.AnyRequest": "Autres requêtes",
- "Nav.StructuredQuery": "Requêtes structurées",
- "Nav.Browser": "Navigateur",
- "Nav.ClusterHealth": "Santé du cluster",
- "Nav.ClusterState": "Etat du cluster",
- "Nav.ClusterNodes": "Noeuds du cluster",
-// "Nav.Info": "Info",
- "Nav.NodeStats": "Statistiques sur les noeuds",
- "Nav.Overview": "Aperçu",
- "Nav.Indices": "Index",
- "Nav.Plugins": "Plugins",
- "Nav.Status": "Etat",
- "Nav.Templates": "Templates",
- "Nav.StructuredQuery": "Recherche Structurée",
-// "NodeActionsMenu.Title": "Actions",
- "NodeActionsMenu.Shutdown": "Eteindre...",
-// "NodeInfoMenu.Title": "Info",
- "NodeInfoMenu.ClusterNodeInfo": "Infos sur le noeud du cluster",
- "NodeInfoMenu.NodeStats": "Statistiques du noeud",
- "NodeType.Client": "Noeud Client",
- "NodeType.Coord": "Coordinateur",
- "NodeType.Master": "Noeud Master",
- "NodeType.Tribe": "Noeud Tribe",
- "NodeType.Worker": "Noeud Worker",
- "NodeType.Unassigned": "Non assigné",
- "OptimizeForm.OptimizeIndex": "Optimiser {0}",
- "OptimizeForm.MaxSegments": "Nombre maximum de segments",
- "OptimizeForm.ExpungeDeletes": "Seulement purger les suppressions",
- "OptimizeForm.FlushAfter": "Flusher après l'optimisation",
- "OptimizeForm.WaitForMerge": "Attendre la fin de la fusion",
- "Overview.PageTitle" : "Aperçu du cluster",
-// "Output.JSON": "JSON",
- "Output.Table": "Tableau",
- "Output.ShowSource": "Voir la requête source",
- "TableResults.Summary": "Recherche sur {0} des {1} shards. {2} résultats. {3} secondes",
- "QueryFilter.AllIndices": "Tous les index",
- "QueryFilter.AnyValue": "Tout",
- "QueryFilter-Header-Indices": "Index",
-// "QueryFilter-Header-Types": "Types",
- "QueryFilter-Header-Fields": "Champs",
- "QueryFilter.DateRangeHint.from": "De : {0}",
- "QueryFilter.DateRangeHint.to": " A : {0}",
- "Query.FailAndUndo": "Requête en échec. Annulation des dernières modifications.",
- "StructuredQuery.ShowRawJson": "Voir le JSON brut"
-});
-
-i18n.setKeys({
- "AnyRequest.TransformerHelp" : "\
- <p>Le transformateur de résultats peut être utilisé pour modifier a posteriori les résultats JSON bruts dans un format plus utile.</p>\
- <p>Le transformateur devrait contenir le corps d'une fonction javascript. La valeur de retour de la fonction devient la nouvelle valeur qui sera passée à l'afficheur des documents JSON.</p>\
- <p>Exemple:<br>\
- <code>return root.hits.hits[0];</code> ne renverra que le premier élément de l'ensemble des résultats.<br>\
- <code>return Object.keys(root.nodes).reduce(function(tot, node) { return tot + root.nodes[node].os.mem.used_in_bytes; }, 0);</code> retournera la mémoire totale utilisée dans l'ensemble du cluster.<br></p>\
- <p>Les fonctions suivantes sont disponibles et peuvent vous être utiles pour travailler sur les tableaux et les objets:<br>\
- <ul>\
- <li><i>Object.keys</i>(object) := array</li>\
- <li>array.<i>forEach</i>(function(prop, index))</li>\
- <li>array.<i>map</i>(function(prop, index)) := array</li>\
- <li>array.<i>reduce</i>(function(accumulator, prop, index), initial_value) := final_value</li>\
- </ul>\
- <p>Lorsque vous activez la répétition automatique de la requête, un paramètre supplémentaire nommé prev est passé à la fonction de transformation. Cela permet les comparaisons et les graphes cumulatifs.</p>\
- <p>Exemple:<br>\
- <code>var la = [ root.nodes[Object.keys(root.nodes)[0]].os.load_average[0] ]; return prev ? la.concat(prev) : la;</code> retournera la charge moyenne du premier noeud du cluster pour la dernière minute écoulée.\
- Cela peut alimenter ensuite le graphe pour produire un graphe de charge du noeud.\
- "
-});
-
-i18n.setKeys({
- "AnyRequest.DisplayOptionsHelp" : "\
- <p>En JSON brut: affiche les résultats complets de la recherche éventuellement transformée au format JSON brut.</p>\
- <p>En graphe: pour fabriquer un graphe de vos résultats, utilsez la transformation de résultats pour générer un tableau de valeurs.</p>\
- <p>En tableau: si votre requête est une recherche, vous pouvez alors afficher les résultats dans un tableau.</p>\
- "
-});
-
-i18n.setKeys({
- "QueryFilter.DateRangeHelp" : "\
- <p>Les champs Date acceptent une requête en langage naturel pour produire un écart de date (from/to) correspondant.</p>\
- <p>Les formats suivants sont acceptés :</p>\
- <ul>\
- <li><b>Mots clés</b><br>\
- <code>now<br> today<br> tomorrow<br> yesterday<br> last / this / next + week / month / year</code><br>\
- Cherchera pour des dates correspondant au mot clé. <code>last year</code> cherchera sur toute l'année précédente.</li>\
- <li><b>Ecarts</b><br>\
- <code>1000 secs<br> 5mins<br> 1day<br> 2days<br> 80d<br> 9 months<br> 2yrs</code> (les espaces sont optionnels et il existe beaucoup de synonymes pour qualifier les écarts)<br>\
- Créé un écart de date basé sur l'heure courante (maintenant) avec plus ou moins l'écart indiqué.</li>\
- <li><b>Dates et Dates partielles</b><br>\
- <code>2011<br> 2011-01<br> 2011-01-18<br> 2011-01-18 12<br> 2011-01-18 12:32<br> 2011-01-18 12:32:45</code><br>\
- Ces formats indiquent un écart de date spécifique. <code>2011</code> cherchera sur toute l'année 2011, alors que <code>2011-01-18 12:32:45</code> ne cherchera que pour la date précise à la seconde près.</li>\
- <li><b>Heures et heures partielles</b><br>\
- <code>12<br> 12:32<br> 12:32:45</code><br>\
- Ces formats indiquent un espace de temps pour la date du jour. <code>12:32</code> cherchera les éléments d'aujourd'hui à cette minute précise.</li>\
- <li><b>Ecart de Date</b><br>\
- <code>2010 -&gt; 2011<br> last week -&gt; next week<br> 2011-05 -&gt;<br> &lt; now</code><br>\
- Un écart de date est créé en spécifiant deux dates dans n'importe lequel des formats précédents (Mot clé / Dates / Heures) séparées par &lt; ou -&gt; (les deux produisent le même effet). Si la date de fin n'est pas indiquée, alors il n'y aura aucune contrainte de fin.</li>\
- <li><b>Ecart de date avec décalage</b><br>\
- <code>2010 -> 1yr<br> 3mins < now</code>\
- Cherche en incluant un décalage de la date dans la direction indiquée.</li>\
- <li><b>Ecart de date avec bornes</b><br>\
- <code>2010-05-13 05:13 <> 10m<br> now <> 1yr<br> lastweek <> 1month</code><br>\
- Similaire à ci-dessus excepté que le décalage est appliqué dans les deux sens à partir de la date indiquée.</li>\
- </ul>\
- "
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/pt_strings.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/pt_strings.js
deleted file mode 100644
index 25f46af16..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/pt_strings.js
+++ /dev/null
@@ -1,189 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-i18n.setKeys({
- "General.Elasticsearch": "Elasticsearch",
- "General.LoadingAggs": "Carregando Facetas...",
- "General.Searching": "Buscando...",
- "General.Search": "Busca",
- "General.Help": "Ajuda",
- "General.HelpGlyph": "?",
- "General.CloseGlyph": "X",
- "General.RefreshResults": "Atualizar",
- "General.ManualRefresh": "Atualização Manual",
- "General.RefreshQuickly": "Atualização rápida",
- "General.Refresh5seconds": "Atualização a cada 5 segundos",
- "General.Refresh1minute": "Atualização a cada minuto",
- "AliasForm.AliasName": "Apelido",
- "AliasForm.NewAliasForIndex": "Novo apelido para {0}",
- "AliasForm.DeleteAliasMessage": "digite ''{0}'' para deletar {1}. Não há como voltar atrás",
- "AnyRequest.DisplayOptions" : "Mostrar Opções",
- "AnyRequest.AsGraph" : "Mostrar como gráfico",
- "AnyRequest.AsJson" : "Mostrar JSON bruto",
- "AnyRequest.AsTable" : "Mostrar tabela de resultados da consulta",
- "AnyRequest.History" : "Histórico",
- "AnyRequest.RepeatRequest" : "Refazer requisição",
- "AnyRequest.RepeatRequestSelect" : "Repetir requisição a cada ",
- "AnyRequest.Transformer" : "Transformador de resultado",
- "AnyRequest.Pretty": "Amigável",
- "AnyRequest.Query" : "Consulta",
- "AnyRequest.Request": "Requisição",
- "AnyRequest.Requesting": "Realizando requisição...",
- "AnyRequest.ValidateJSON": "Validar JSON",
- "Browser.Title": "Navegador",
- "Browser.ResultSourcePanelTitle": "Resultado",
- "Command.DELETE": "DELETAR",
- "Command.SHUTDOWN": "DESLIGAR",
- "Command.DeleteAliasMessage": "Remover apelido?",
- "ClusterOverView.IndexName": "Nome do índice",
- "ClusterOverview.NumShards": "Número de Shards",
- "ClusterOverview.NumReplicas": "Número de Réplicas",
- "ClusterOverview.NewIndex": "Novo índice",
- "IndexActionsMenu.Title": "Ações",
- "IndexActionsMenu.NewAlias": "Novo apelido...",
- "IndexActionsMenu.Refresh": "Atualizar",
- "IndexActionsMenu.Flush": "Flush",
- "IndexActionsMenu.Optimize": "Otimizar...",
- "IndexActionsMenu.Snapshot": "Snapshot do Gateway",
- "IndexActionsMenu.Analyser": "Analizador de teste",
- "IndexActionsMenu.Open": "Abrir",
- "IndexActionsMenu.Close": "Fechar",
- "IndexActionsMenu.Delete": "Deletar...",
- "IndexInfoMenu.Title": "Info",
- "IndexInfoMenu.Status": "Status do índice",
- "IndexInfoMenu.Metadata": "Metadados do índice",
- "IndexCommand.TextToAnalyze": "Texto para analizar",
- "IndexCommand.ShutdownMessage": "digite ''{0}'' para desligar {1}. Nó NÃO PODE ser reiniciado à partir dessa interface",
- "IndexOverview.PageTitle": "Visão geral dos índices",
- "IndexSelector.NameWithDocs": "{0} ({1} documentoss)",
- "IndexSelector.SearchIndexForDocs": "Busca {0} por documentos onde:",
- "FilterBrowser.OutputType": "Resultados: {0}",
- "FilterBrowser.OutputSize": "Número de Resultados: {0}",
- "Header.ClusterHealth": "saúde do cluster: {0} ({1} {2})",
- "Header.ClusterNotConnected": "saúde do cluster: não conectado",
- "Header.Connect": "Conectar",
- "Nav.AnyRequest": "Qualquer requisição",
- "Nav.Browser": "Navegador",
- "Nav.ClusterHealth": "Saúde do Cluster",
- "Nav.ClusterState": "Estado do Cluster",
- "Nav.ClusterNodes": "Nós do Cluster",
- "Nav.Info": "Informações",
- "Nav.NodeStats": "Estatísticas do nó",
- "Nav.Overview": "Visão Geral",
- "Nav.Indices": "Índices",
- "Nav.Plugins": "Plugins",
- "Nav.Status": "Status",
- "Nav.Templates": "Modelos",
- "Nav.StructuredQuery": "Consulta Estruturada",
- "NodeActionsMenu.Title": "Ações",
- "NodeActionsMenu.Shutdown": "Desligar...",
- "NodeInfoMenu.Title": "Informações",
- "NodeInfoMenu.ClusterNodeInfo": "Informações do Nó do Cluster",
- "NodeInfoMenu.NodeStats": "Estatísticas do Nó",
- "NodeType.Client": "Nó cliente",
- "NodeType.Coord": "Coordenador",
- "NodeType.Master": "Nó mestre",
- "NodeType.Tribe": "Nó tribo",
- "NodeType.Worker": "Nó trabalhador",
- "NodeType.Unassigned": "Não atribuido",
- "OptimizeForm.OptimizeIndex": "Otimizar {0}",
- "OptimizeForm.MaxSegments": "# Máximo De Segmentos",
- "OptimizeForm.ExpungeDeletes": "Apenas Expurgar Exclusões",
- "OptimizeForm.FlushAfter": "Flush após Otimizar",
- "OptimizeForm.WaitForMerge": "Esperar Por Merge",
- "Overview.PageTitle": "Visão geral do Cluster",
- "Output.JSON": "JSON",
- "Output.Table": "Tabela",
- "Output.CSV": "CSV",
- "Output.ShowSource": "Mostrar consulta original",
- "Preference.SortCluster": "Ordenar Cluster",
- "Sort.ByName": "Por nome",
- "Sort.ByAddress": "Por endereço",
- "Sort.ByType": "Por tipo",
- "Preference.ViewAliases": "Ver Alias",
- "ViewAliases.Grouped": "Agrupado",
- "ViewAliases.List": "Lista",
- "ViewAliases.None": "Nenhum",
- "Overview.IndexFilter": "Filtar Índice",
- "TableResults.Summary": "Buscado {0} de {1} shards. {2} resultados. {3} segundos",
- "QueryFilter.AllIndices": "Todos os Índices",
- "QueryFilter.AnyValue": "qualquer",
- "QueryFilter-Header-Indices": "Índices",
- "QueryFilter-Header-Types": "Tipos",
- "QueryFilter-Header-Fields": "Campos",
- "QueryFilter.DateRangeHint.from": "De : {0}",
- "QueryFilter.DateRangeHint.to": " A : {0}",
- "Query.FailAndUndo": "Consulta falhou. Desfazendo últimas alterações",
- "StructuredQuery.ShowRawJson": "Mostrar JSON bruto"
-});
-
-i18n.setKeys({
- "AnyRequest.TransformerHelp" : "\
- <p>O Transformador de Resultados pode ser usado para transformar os resultados de uma consulta de json bruto para um formato mais útil.</p>\
- <p>O transformador deve possuir o corpo de uma função javascript. O retorno da função se torna o novo valor passado para o json printer</p>\
- <p>Exemplo:<br>\
- <code>return root.hits.hits[0];</code> irá alterar a resposta para mostrar apenas o primeiro resultado<br>\
- <code>return Object.keys(root.nodes).reduce(function(tot, node) { return tot + root.nodes[node].os.mem.used_in_bytes; }, 0);</code> irá retornar o total de memória utilizada pelo cluster<br></p>\
- <p>As seguintes funções estão disponíveis e podem ser úteis no processamento de vetores e objetos<br>\
- <ul>\
- <li><i>Object.keys</i>(object) := array</li>\
- <li>array.<i>forEach</i>(function(prop, index))</li>\
- <li>array.<i>map</i>(function(prop, index)) := array</li>\
- <li>array.<i>reduce</i>(function(accumulator, prop, index), initial_value) := final_value</li>\
- </ul>\
- <p>Durante a execução da opção Refazer Requisição, um parâmetro extra chamado prev é passado para a função de transformação. Isso permite fazer comparações e marcações cumulativas</p>\
- <p>Exemplo:<br>\
- <code>var la = [ root.nodes[Object.keys(root.nodes)[0]].os.load_average[0] ]; return prev ? la.concat(prev) : la;</code> irá retornar a carga média no primeiro nó do cluster no último minuto\
- Essa informação pode ser inserida no Gráfico para fazer um gráfico de carga do nó\
- "
-});
-
-i18n.setKeys({
- "AnyRequest.DisplayOptionsHelp" : "\
- <p>Json Bruto: Exibe o resultado completo da consulta e da transformação no formato de JSON bruto</p>\
- <p>Gráfico de Resultados: Para gerar um gráfico com seus resultados, utilize o tranformador de resultados para produzir um vetor de valores</p>\
- <p>Tabela de Resultados da Consulta: Se sua consulta for uma busca, você pode exibir seus resultados no formato de uma tabela.</p>\
- "
-});
-
-i18n.setKeys({
- "QueryFilter.DateRangeHelp" : "\
- <p>Campos do tipo Data aceitam consultas em linguagem natural (em inglês) para produzir um <i>From</i> e um <i>To</i> de modo a formar um intervalo dentro do qual os resultados são filtrados.</p>\
- <p>Os seguintes formatos são suportados:</p>\
- <ul>\
- <li><b>Palavras-chave</b><br>\
- <code>now<br> today<br> tomorrow<br> yesterday<br> last / this / next + week / month / year</code><br>\
- buscam por datas de acordo com a palavra-chave. <code>last year</code> irá buscar tudo do último ano.</li>\
- <li><b>Intervalos</b><br>\
- <code>1000 secs<br> 5mins<br> 1day<br> 2days<br> 80d<br> 9 months<br> 2yrs</code> (espaços são opcionais, diversos sinônimos para qualificadores de intervalo)<br>\
- Cria um intervalo de busca a partir de agora (<code>now</code>), extendendo este intervalo no passado e no futuro de acordo com intervalo especificado.</li>\
- <li><b>Data/Hora (<i>DateTime</i>) e Data/Hora parcial</b><br>\
- <code>2011<br> 2011-01<br> 2011-01-18<br> 2011-01-18 12<br> 2011-01-18 12:32<br> 2011-01-18 12:32:45</code><br>\
- esses formatos especificam um intervalo especifico. <code>2011</code> irá buscar todo o ano de 2011, enquanto <code>2011-01-18 12:32:45</code> irá buscar apenas por resultados dentro deste intervalo de 1 segundo</li>\
- <li><b>Tempo (<i>Time</i>) e Tempo parcial</b><br>\
- <code>12<br> 12:32<br> 12:32:45</code><br>\
- esses formatos buscam por um horário específico no dia atual. <code>12:32</code> irá buscar este minuto específico do dia</li>\
- <li><b>Intervalos de Data</b><br>\
- <code>2010 -&gt; 2011<br> last week -&gt; next week<br> 2011-05 -&gt;<br> &lt; now</code><br>\
- Um intervalo de data é criado especificando-se duas datas em qualquer formato (Palavras-chave, Data/Hora ou Tempo) separados por &lt; ou -&gt; (ambos fazem a mesma coisa). Se a data de início ou fim do intervalo não for especificada é a mesma coisa que não impor limites na busca nesta direção.</li>\
- <li><b>Intervalo de Data com Deslocamento</b><br>\
- <code>2010 -> 1yr<br> 3mins < now</code>\
- Busca a data especificada incluindo o intervalo na direção determinada pelo deslocamento</li>\
- <li><b>Intervalos Bidirecionais</b><br>\
- <code>2010-05-13 05:13 <> 10m<br> now <> 1yr<br> lastweek <> 1month</code><br>\
- Idêntico ao exemplo anterior porém o intervalo é extendido em ambas as direções a partir da data especificada</li>\
- </ul>\
- "
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/tr_strings.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/tr_strings.js
deleted file mode 100644
index 3bb987f81..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/tr_strings.js
+++ /dev/null
@@ -1,192 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-i18n.setKeys({
- "General.Elasticsearch": "Elasticsearch",
- "General.LoadingAggs": "Gruplar Yükleniyor...",
- "General.Searching": "Aranıyor...",
- "General.Search": "Ara",
- "General.Help": "Yardım",
- "General.HelpGlyph": "?",
- "General.CloseGlyph": "X",
- "General.RefreshResults": "Yenile",
- "General.ManualRefresh": "Manuel Yenileme",
- "General.RefreshQuickly": "Hızlı yenile",
- "General.Refresh5seconds": "5 saniyede bir yenile",
- "General.Refresh1minute": "Her dakika yenile",
- "AliasForm.AliasName": "Alternatif İsim",
- "AliasForm.NewAliasForIndex": "{0} için yeni alternatif isim",
- "AliasForm.DeleteAliasMessage": "{1} silmek için ''{0}'' . Geriye dönüş yoktur.",
- "AnyRequest.DisplayOptions" : "Seçenekleri Göster",
- "AnyRequest.AsGraph" : "Sonuçları Çizdir",
- "AnyRequest.AsJson" : "JSON formatında göster",
- "AnyRequest.AsTable" : "Arama sonuçlarını tablo halinde göster",
- "AnyRequest.History" : "Geçmiş",
- "AnyRequest.RepeatRequest" : "İsteği Tekrarla",
- "AnyRequest.RepeatRequestSelect" : "İsteği sürekli tekrarla ",
- "AnyRequest.Transformer" : "Sonuç Dönüştürücü",
- "AnyRequest.Pretty": "Düzenli",
- "AnyRequest.Query" : "Sorgu",
- "AnyRequest.Request": "Gönder",
- "AnyRequest.Requesting": "İsteniyor...",
- "AnyRequest.ValidateJSON": "JSON Doğrula",
- "Browser.Title": "Browser",
- "Browser.ResultSourcePanelTitle": "Sonuç Kaynağı",
- "Command.DELETE": "SİL",
- "Command.SHUTDOWN": "KAPA",
- "Command.DeleteAliasMessage": "Alternatif ismi sil?",
- "ClusterOverView.IndexName": "Indeks İsmi",
- "ClusterOverview.NumShards": "Sektör Sayısı",
- "ClusterOverview.NumReplicas": "Yedek Sayısı",
- "ClusterOverview.NewIndex": "Yeni Indeks",
- "IndexActionsMenu.Title": "İşlemler",
- "IndexActionsMenu.NewAlias": "Yeni Alternatif İsim...",
- "IndexActionsMenu.Refresh": "Yenile",
- "IndexActionsMenu.Flush": "Boşalt",
- "IndexActionsMenu.Optimize": "Optimize et...",
- "IndexActionsMenu.Snapshot": "Gateway Snapshot (Kopya Al)",
- "IndexActionsMenu.Analyser": "Analizi test et",
- "IndexActionsMenu.Open": "Aç",
- "IndexActionsMenu.Close": "Kapa",
- "IndexActionsMenu.Delete": "Sil...",
- "IndexInfoMenu.Title": "Bilgi",
- "IndexInfoMenu.Status": "Indeks Durumu",
- "IndexInfoMenu.Metadata": "Indeks Metaveri",
- "IndexCommand.TextToAnalyze": "Analiz edilecek metin",
- "IndexCommand.ShutdownMessage": "{1} kapatmak için ''{0}'' yazın . Nod bu arayüzden tekrar BAŞLATILAMAZ",
- "IndexOverview.PageTitle": "Indeksler Genel Bakış",
- "IndexSelector.NameWithDocs": "{0} ({1} döküman)",
- "IndexSelector.SearchIndexForDocs": "{0} indeksinde ara:",
- "FilterBrowser.OutputType": "Sonuç Formatı: {0}",
- "FilterBrowser.OutputSize": "Sonuç Sayısı: {0}",
- "Header.ClusterHealth": "Küme Durumu: {0} ({1} de {2})",
- "Header.ClusterNotConnected": "Küme Durumu: Bağlı Değil",
- "Header.Connect": "Bağlan",
- "Nav.AnyRequest": "Özel Sorgu",
- "Nav.Browser": "Görüntüle",
- "Nav.ClusterHealth": "Küme Durumu",
- "Nav.ClusterState": "Küme Statüsü",
- "Nav.ClusterNodes": "Nod Bilgileri",
- "Nav.Info": "Bilgi",
- "Nav.NodeStats": "Nod İstatistikleri",
- "Nav.Overview": "Genel Bakış",
- "Nav.Indices": "Indeksler",
- "Nav.Plugins": "Eklentiler",
- "Nav.Status": "Indeks İstatistikleri",
- "Nav.Templates": "Şablonlar",
- "Nav.StructuredQuery": "Yapılandırılmış Sorgu",
- "NodeActionsMenu.Title": "İşlemler",
- "NodeActionsMenu.Shutdown": "Kapat...",
- "NodeInfoMenu.Title": "Bilgi",
- "NodeInfoMenu.ClusterNodeInfo": "Küme Nod Bilgileri",
- "NodeInfoMenu.NodeStats": "Nod İstatistikleri",
- "NodeType.Client": "Client Nod",
- "NodeType.Coord": "Coordinator",
- "NodeType.Master": "Master Nod",
- "NodeType.Tribe": "Tribe Nod",
- "NodeType.Worker": "Worker Nod",
- "NodeType.Unassigned": "Sahipsiz",
- "OptimizeForm.OptimizeIndex": "{0} Optimize Et",
- "OptimizeForm.MaxSegments": "Maksimum Segment Sayısı",
- "OptimizeForm.ExpungeDeletes": "Silme İşlemi Artıklarını Temizle",
- "OptimizeForm.FlushAfter": "Optimize Ettikten Sonra Boşalt",
- "OptimizeForm.WaitForMerge": "Birleştirme İçin Bekle",
- "Overview.PageTitle" : "Kümeler Genelbakış",
- "Output.JSON": "JSON",
- "Output.Table": "Tablo",
- "Output.CSV": "CSV",
- "Output.ShowSource": "Sorgu kaynağını göster",
- "Preference.SortCluster": "Kümeyi Sırala",
- "Sort.ByName": "İsme göre",
- "Sort.ByAddress": "Adrese göre",
- "Sort.ByType": "Tipe göre",
- "Preference.SortIndices": "Indeksleri sırala",
- "SortIndices.Descending": "Azalan",
- "SortIndices.Ascending": "Artan",
- "Preference.ViewAliases": "Alternatif isimleri görüntüle",
- "ViewAliases.Grouped": "Gruplanmış",
- "ViewAliases.List": "Liste",
- "ViewAliases.None": "Karışık",
- "Overview.IndexFilter": "Indeks Filtresi",
- "TableResults.Summary": "{0} parçanın {1} tanesi arandı. {2} sonuç. {3} saniye",
- "QueryFilter.AllIndices": "Tüm Indeksler",
- "QueryFilter.AnyValue": "herhangi",
- "QueryFilter-Header-Indices": "Indeksler",
- "QueryFilter-Header-Types": "Tipler",
- "QueryFilter-Header-Fields": "Alanlar",
- "QueryFilter.DateRangeHint.from": "{0}'dan",
- "QueryFilter.DateRangeHint.to": " {0}'a",
- "Query.FailAndUndo": "Sorgu Başarısız. Son değişiklikler geri alınıyor.",
- "StructuredQuery.ShowRawJson": "Formatsız JSON göster"
-});
-
-i18n.setKeys({
- "AnyRequest.TransformerHelp" : "\
- <p>Sonuç Dönüştürücü sorgudan dönen JSON sonuçlarını işleyip daha kullanışlı bir formata dönüştürmek için kullanılabilir.</p>\
- <p>Dönüştürücü içierisinde javascript fonksiyonu tanımlanmalıdır. Bu fonksiyondan dönen yeni sonuç çıktı kısmına yazdırılır.</p>\
- <p>Örnek:<br>\
- <code>return root.hits.hits[0];</code> sonucu dolaşarak ilk eşleşmeyi göster<br>\
- <code>return Object.keys(root.nodes).reduce(function(tot, node) { return tot + root.nodes[node].os.mem.used_in_bytes; }, 0);</code> tüm kümede kullanılan toplam belleği gösterir<br></p>\
- <p>Aşağıdaki fonksiyonlar dizi ve objelerin işlenmesinde yardımcı olması için kullanılabilir<br>\
- <ul>\
- <li><i>Object.keys</i>(object) := array</li>\
- <li>array.<i>forEach</i>(function(prop, index))</li>\
- <li>array.<i>map</i>(function(prop, index)) := array</li>\
- <li>array.<i>reduce</i>(function(accumulator, prop, index), initial_value) := final_value</li>\
- </ul>\
- <p>Sorgu tekrarlama çalışırken, prev isimli ekstra bir parametre dönüştürücü fonksiyonuna verilir. Bu sayede karşılaştırmalar ve toplu grafik gösterimleri yapılabilir.</p>\
- <p>Örnek:<br>\
- <code>var la = [ root.nodes[Object.keys(root.nodes)[0]].os.load_average[0] ]; return prev ? la.concat(prev) : la;</code> önceki dakika boyunca kümede bulunan ilk nod üzerindeki averaj yükü verir.\
- Bu sonuç nod için yük grafiği yaratılmasında kullanılabilir.\
- "
-});
-
-i18n.setKeys({
- "AnyRequest.DisplayOptionsHelp" : "\
- <p>Sade Json: Sorgunun tüm sonuçlarını ve (yapıldıysa) dönüştürüldükten sonraki halini sade JSON formatında gösterir </p>\
- <p>Sonuçları Çizdir: Sonuçları grafiksel olarak görüntülemek için sonuç dörücüyü kullanarak değerleri dizi haline getirin.</p>\
- <p>Arama Sonuçları Tablosu: Eğer sorgunuz bir arama ise, sonuçları bir tabloda görüntüleyebilirsiniz.</p>\
- "
-});
-
-i18n.setKeys({
- "QueryFilter.DateRangeHelp" : "\
- <p>Tarih alanları ana dile yakın kelimeler kullanarak iki tarih aralığında sorgu yapılabilmesini sağlar.</p>\
- <p>Aşağıdaki tanımlar kullanılabilir:</p>\
- <ul>\
- <li><b>Anahtar Kelimeler</b><br>\
- <code>now<br> today<br> tomorrow<br> yesterday<br> last / this / next + week / month / year</code><br>\
- kelimeleri eşleşen tarihleri verir. Örneğin <code>last year</code> geçen yıl tarihli bütün verileri döndürür.</li>\
- <li><b>Aralıklar</b><br>\
- <code>1000 secs<br> 5mins<br> 1day<br> 2days<br> 80d<br> 9 months<br> 2yrs</code> (boşluklar isteğe bağlıdır, ayni kelime için farklı yazım şekilleri kullanılabilir)<br>\
- Şu anki tarihi (<code>now</code>) baz alarak geçmiş veya ileriki bir tarih aralığındaki kayıtları verir.</li>\
- <li><b>Tarih ve Kısmi Tarihler</b><br>\
- <code>2011<br> 2011-01<br> 2011-01-18<br> 2011-01-18 12<br> 2011-01-18 12:32<br> 2011-01-18 12:32:45</code><br>\
- bu formatlar spesifik bir tarihi tanımlarlar. <code>2011</code> tüm 2011 yılını ararken, <code>2011-01-18 12:32:45</code> şeklinde bir sorgu sadece o saniyedeki sonuçları verir.</li>\
- <li><b>Zaman ve Kısmi Zamanlar</b><br>\
- <code>12<br> 12:32<br> 12:32:45</code><br>\
- bu formatlar gün içerisinde spesifik bir zamanı tanımlarlar. Örneğin <code>12:32</code> sadece bu saat ve dakikadaki kayıtları verir.</li>\
- <li><b>Tarih Aralıkları</b><br>\
- <code>2010 -&gt; 2011<br> last week -&gt; next week<br> 2011-05 -&gt;<br> &lt; now</code><br>\
- Tarih aralıkları yukarda belirtilen herhangi bir formatı &lt; or -&gt; ile ayırarak yapılabilir. Eğer aralığın bir tarafı eksikse, sorgu ucu açıkmış gibi davranır.</li>\
- <li><b>Ofsetli Tarih Aralığı</b><br>\
- <code>2010 -> 1yr<br> 3mins < now</code>\
- Verilen yöndeki tarih aralığına bakar.</li>\
- <li><b>Çakılı Aralıklar</b><br>\
- <code>2010-05-13 05:13 <> 10m<br> now <> 1yr<br> lastweek <> 1month</code><br>\
- Yukarıdakiyle ayni fakat belirtilen tarihten her iki yöne de bakılır.</li>\
- </ul>\
- "
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/zh_strings.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/zh_strings.js
deleted file mode 100644
index 2d83d43b0..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/lang/zh_strings.js
+++ /dev/null
@@ -1,187 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-i18n.setKeys({
- "General.Elasticsearch": "Elasticsearch",
- "General.LoadingAggs": "加载聚合查询...",
- "General.Searching": "搜索中...",
- "General.Search": "搜索",
- "General.Help": "帮助",
- "General.HelpGlyph": "?",
- "General.CloseGlyph": "X",
- "General.RefreshResults": "刷新",
- "General.ManualRefresh": "手动刷新",
- "General.RefreshQuickly": "快速刷新",
- "General.Refresh5seconds": "每5秒刷新",
- "General.Refresh1minute": "每1分钟刷新",
- "AliasForm.AliasName": "别名",
- "AliasForm.NewAliasForIndex": "为 {0} 创建新别名",
- "AliasForm.DeleteAliasMessage": "输入 ''{0}'' 删除 {1}. 此操作无法恢复",
- "AnyRequest.DisplayOptions" : "显示选项",
- "AnyRequest.AsGraph" : "图形视图",
- "AnyRequest.AsJson" : "原始 JSON",
- "AnyRequest.AsTable" : "表格视图",
- "AnyRequest.History" : "历史记录",
- "AnyRequest.RepeatRequest" : "重复请求",
- "AnyRequest.RepeatRequestSelect" : "重复周期 ",
- "AnyRequest.Transformer" : "结果转换器",
- "AnyRequest.Pretty": "易读",
- "AnyRequest.Query" : "查询",
- "AnyRequest.Request": "提交请求",
- "AnyRequest.Requesting": "请求中...",
- "AnyRequest.ValidateJSON": "验证 JSON",
- "Browser.Title": "数据浏览",
- "Browser.ResultSourcePanelTitle": "原始数据",
- "Command.DELETE": "删除",
- "Command.SHUTDOWN": "关闭",
- "Command.DeleteAliasMessage": "删除别名?",
- "ClusterOverView.IndexName": "索引名称",
- "ClusterOverview.NumShards": "分片数",
- "ClusterOverview.NumReplicas": "副本数",
- "ClusterOverview.NewIndex": "新建索引",
- "IndexActionsMenu.Title": "动作",
- "IndexActionsMenu.NewAlias": "新建别名...",
- "IndexActionsMenu.Refresh": "刷新",
- "IndexActionsMenu.Flush": "Flush刷新",
- "IndexActionsMenu.Optimize": "优化...",
- "IndexActionsMenu.Snapshot": "网关快照",
- "IndexActionsMenu.Analyser": "测试分析器",
- "IndexActionsMenu.Open": "开启",
- "IndexActionsMenu.Close": "关闭",
- "IndexActionsMenu.Delete": "删除...",
- "IndexInfoMenu.Title": "信息",
- "IndexInfoMenu.Status": "索引状态",
- "IndexInfoMenu.Metadata": "索引信息",
- "IndexCommand.TextToAnalyze": "文本分析",
- "IndexCommand.ShutdownMessage": "输入 ''{0}'' 以关闭 {1} 节点. 关闭的节点无法从此界面重新启动",
- "IndexOverview.PageTitle": "索引概览",
- "IndexSelector.NameWithDocs": "{0} ({1} 个文档)",
- "IndexSelector.SearchIndexForDocs": "搜索 {0} 的文档, 查询条件:",
- "FilterBrowser.OutputType": "返回格式: {0}",
- "FilterBrowser.OutputSize": "显示数量: {0}",
- "Header.ClusterHealth": "集群健康值: {0} ({1} of {2})",
- "Header.ClusterNotConnected": "集群健康值: 未连接",
- "Header.Connect": "连接",
- "Nav.AnyRequest": "复合查询",
- "Nav.Browser": "数据浏览",
- "Nav.ClusterHealth": "集群健康值",
- "Nav.ClusterState": "群集状态",
- "Nav.ClusterNodes": "集群节点",
- "Nav.Info": "信息",
- "Nav.NodeStats": "节点状态",
- "Nav.Overview": "概览",
- "Nav.Indices": "索引",
- "Nav.Plugins": "插件",
- "Nav.Status": "状态",
- "Nav.Templates": "模板",
- "Nav.StructuredQuery": "基本查询",
- "NodeActionsMenu.Title": "动作",
- "NodeActionsMenu.Shutdown": "关停...",
- "NodeInfoMenu.Title": "信息",
- "NodeInfoMenu.ClusterNodeInfo": "集群节点信息",
- "NodeInfoMenu.NodeStats": "节点状态",
- "NodeType.Client": "节点客户端",
- "NodeType.Coord": "协调器",
- "NodeType.Master": "主节点",
- "NodeType.Tribe": "分支结点",
- "NodeType.Worker": "工作节点",
- "NodeType.Unassigned": "未分配",
- "OptimizeForm.OptimizeIndex": "优化 {0}",
- "OptimizeForm.MaxSegments": "最大索引段数",
- "OptimizeForm.ExpungeDeletes": "只删除被标记为删除的",
- "OptimizeForm.FlushAfter": "优化后刷新",
- "OptimizeForm.WaitForMerge": "等待合并",
- "Overview.PageTitle" : "集群概览",
- "Output.JSON": "JSON",
- "Output.Table": "Table",
- "Output.CSV": "CSV",
- "Output.ShowSource": "显示查询语句",
- "Preference.SortCluster": "集群排序",
- "Sort.ByName": "按名称",
- "Sort.ByAddress": "按地址",
- "Sort.ByType": "按类型",
- "TableResults.Summary": "查询 {1} 个分片中用的 {0} 个. {2} 命中. 耗时 {3} 秒",
- "QueryFilter.AllIndices": "所有索引",
- "QueryFilter.AnyValue": "任意",
- "QueryFilter-Header-Indices": "索引",
- "QueryFilter-Header-Types": "类型",
- "QueryFilter-Header-Fields": "字段",
- "QueryFilter.DateRangeHint.from": "从 : {0}",
- "QueryFilter.DateRangeHint.to": " 到 : {0}",
- "Query.FailAndUndo": "查询失败. 撤消最近的更改",
- "StructuredQuery.ShowRawJson": "显示原始 JSON"
-});
-
-i18n.setKeys({
- "AnyRequest.TransformerHelp" : "\
- <p>结果转换器用于返回结果原始JSON的后续处理, 将结果转换为更有用的格式.</p>\
- <p>转换器应当包含javascript函数体. 函数的返回值将传递给json分析器</p>\
- <p>Example:<br>\
- <code>return root.hits.hits[0];</code><br>\
- 遍历结果并只显示第一个元素<br>\
- <code>return Object.keys(root.nodes).reduce(function(tot, node) { return tot + root.nodes[node].os.mem.used_in_bytes; }, 0);</code><br>\
- 将返回整个集群使用的总内存<br></p>\
- <p>以下函数可以方便的处理数组与对象<br>\
- <ul>\
- <li><i>Object.keys</i>(object) := array</li>\
- <li>array.<i>forEach</i>(function(prop, index))</li>\
- <li>array.<i>map</i>(function(prop, index)) := array</li>\
- <li>array.<i>reduce</i>(function(accumulator, prop, index), initial_value) := final_value</li>\
- </ul>\
- <p>当启用重复请求时, prev 参数将会传递给转换器函数. 这将用于比较并累加图形</p>\
- <p>Example:<br>\
- <code>var la = [ root.nodes[Object.keys(root.nodes)[0]].os.load_average[0] ]; return prev ? la.concat(prev) : la;</code><br>\
- 将返回第一个集群节点最近一分钟内的平均负载\
- 将会把结果送人图表以产生一个负载曲线图\
- "
-});
-
-i18n.setKeys({
- "AnyRequest.DisplayOptionsHelp" : "\
- <p>原始 Json: 将完整的查询结果转换为原始JSON格式 </p>\
- <p>图形视图: 将查询结果图形化, 将查询结果转换为数组值的形式</p>\
- <p>表格视图: 如果查询是一个搜索, 可以将搜索结果以表格形式显示.</p>\
- "
-});
-
-i18n.setKeys({
- "QueryFilter.DateRangeHelp" : "\
- <p>Date 字段接受日期范围的形式查询.</p>\
- <p>一下格式被支持:</p>\
- <ul>\
- <li><b>关键词 / 关键短语</b><br>\
- <code>now<br> today<br> tomorrow<br> yesterday<br> last / this / next + week / month / year</code><br>\
- 搜索关键字匹配的日期. <code>last year</code> 将搜索过去全年.</li>\
- <li><b>范围</b><br>\
- <code>1000 secs<br> 5mins<br> 1day<br> 2days<br> 80d<br> 9 months<br> 2yrs</code> (空格可选, 同等于多个范围修饰词)<br>\
- 创建一个指定时间范围的搜索, 将围绕<code>现在</code> 并延伸至过去与未来时间段.</li>\
- <li><b>DateTime 与 DateTime局部</b><br>\
- <code>2011<br> 2011-01<br> 2011-01-18<br> 2011-01-18 12<br> 2011-01-18 12:32<br> 2011-01-18 12:32:45</code><br>\
- 指定一个特定的日期范围. <code>2011</code>会搜索整个 2011年, 而 <code>2011-01-18 12:32:45</code> 将只搜索1秒范围内</li>\
- <li><b>Time 与 Time局部</b><br>\
- <code>12<br> 12:32<br> 12:32:45</code><br>\
- 这些格式只搜索当天的特定时间. <code>12:32</code> 将搜索当天的那一分钟</li>\
- <li><b>日期范围</b><br>\
- <code>2010 -&gt; 2011<br> last week -&gt; next week<br> 2011-05 -&gt;<br> &lt; now</code><br>\
- 日期范围是将两个日期格式串 (日期关键字 / DateTime / Time) 用 &lt; 或 -&gt; (效果相同) 分隔. 如果缺少任意一端,那么在这个方向上时间将没有限制.</li>\
- <li><b>偏移日期范围</b><br>\
- <code>2010 -> 1yr<br> 3mins < now</code>\
- 搜索包括指定方向上偏移的日期.</li>\
- <li><b>锚定范围</b><br>\
- <code>2010-05-13 05:13 <> 10m<br> now <> 1yr<br> lastweek <> 1month</code><br>\
- 类似于上面的便宜日期,在两个方向上将锚定的日期延长</li>\
- </ul>\
- "
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/cluster/cluster.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/cluster/cluster.js
deleted file mode 100644
index 0b0cec98a..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/cluster/cluster.js
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var services = app.ns("services");
- var ux = app.ns("ux");
-
- function parse_version( v ) {
- return v.match(/^(\d+)\.(\d+)\.(\d+)/).slice(1,4).map( function(d) { return parseInt(d || 0, 10); } );
- }
-
- services.Cluster = ux.Class.extend({
- defaults: {
- base_uri: null
- },
- init: function() {
- this.base_uri = this.config.base_uri;
- },
- setVersion: function( v ) {
- this.version = v;
- this._version_parts = parse_version( v );
- },
- versionAtLeast: function( v ) {
- var testVersion = parse_version( v );
- for( var i = 0; i < 3; i++ ) {
- if( testVersion[i] !== this._version_parts[i] ) {
- return testVersion[i] < this._version_parts[i];
- }
- }
- return true;
- },
- request: function( params ) {
- return $.ajax( $.extend({
- url: this.base_uri + params.path,
- dataType: "json",
- error: function(xhr, type, message) {
- if("console" in window) {
- console.log({ "XHR Error": type, "message": message });
- }
- }
- }, params) );
- },
- "get": function(path, success) { return this.request( { type: "GET", path: path, success: success } ); },
- "post": function(path, data, success) { return this.request( { type: "POST", path: path, data: data, success: success } ); },
- "put": function(path, data, success) { return this.request( { type: "PUT", path: path, data: data, success: success } ); },
- "delete": function(path, data, success) { return this.request( { type: "DELETE", path: path, data: data, success: success } ); }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/cluster/clusterSpec.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/cluster/clusterSpec.js
deleted file mode 100644
index 2ccffa760..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/cluster/clusterSpec.js
+++ /dev/null
@@ -1,80 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-describe("app.services.Cluster", function() {
-
- var Cluster = window.app.services.Cluster;
- var test = window.test;
-
- var cluster;
-
- beforeEach( function() {
- cluster = new Cluster({ base_uri: "http://localhost:9200/" });
- });
-
- describe( "when it is initialised", function() {
-
- it("should have a localhost base_uri", function() {
- expect( cluster.base_uri ).toBe( "http://localhost:9200/" );
- });
-
- it("should have no version", function() {
- expect( cluster.version ).toBe( undefined );
- });
-
- });
-
- describe( "setVersion()", function() {
-
- it("have a version", function() {
- cluster.setVersion( "1.12.3-5" );
- expect( cluster.version ).toBe( "1.12.3-5" );
- });
-
- });
-
- describe("versionAtLeast()", function() {
- var vs = [ "0.0.3", "0.13.5", "0.90.3", "1.0.0", "1.1.0", "1.2.3", "1.12.4.rc2", "13.0.0" ];
-
- it("should return true for versions that are less than or equal to the current version", function() {
- cluster.setVersion("1.12.5");
- expect( cluster.versionAtLeast("1.12.5" ) ).toBe( true );
- expect( cluster.versionAtLeast("1.12.5rc2" ) ).toBe( true );
- expect( cluster.versionAtLeast("1.12.5-6" ) ).toBe( true );
- expect( cluster.versionAtLeast("1.12.5-6.beta7" ) ).toBe( true );
- expect( cluster.versionAtLeast("1.12.4" ) ).toBe( true );
- expect( cluster.versionAtLeast("0.12.4" ) ).toBe( true );
- expect( cluster.versionAtLeast("1.1.8" ) ).toBe( true );
-
- for( var i = 0; i < vs.length - 1; i++ ) {
- cluster.setVersion( vs[i+1] );
- expect( cluster.versionAtLeast( vs[i] ) ).toBe( true );
- }
- });
-
- it("should return false for versions that are greater than the current version", function() {
- cluster.setVersion("1.12.5");
- expect( cluster.versionAtLeast("1.12.6" ) ).toBe( false );
- expect( cluster.versionAtLeast("1.13.4" ) ).toBe( false );
- expect( cluster.versionAtLeast("2.0.0" ) ).toBe( false );
-
- for( var i = 0; i < vs.length - 1; i++ ) {
- cluster.setVersion( vs[i] );
- expect( cluster.versionAtLeast( vs[i+1] ) ).toBe( false );
- }
- });
- });
-
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterState.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterState.js
deleted file mode 100644
index 4fee9dab9..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterState.js
+++ /dev/null
@@ -1,88 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- (function( app ) {
-
- var services = app.ns("services");
- var ux = app.ns("ux");
-
- services.ClusterState = ux.Observable.extend({
- defaults: {
- cluster: null
- },
- init: function() {
- this._super();
- this.cluster = this.config.cluster;
- this.clusterState = null;
- this.status = null;
- this.nodeStats = null;
- this.clusterNodes = null;
- },
- refresh: function() {
- var self = this, clusterState, status, nodeStats, clusterNodes, clusterHealth;
- function updateModel() {
- if( clusterState && status && nodeStats && clusterNodes && clusterHealth ) {
- this.clusterState = clusterState;
- this.status = status;
- this.nodeStats = nodeStats;
- this.clusterNodes = clusterNodes;
- this.clusterHealth = clusterHealth;
- this.fire( "data", this );
- }
- }
- this.cluster.get("_cluster/state", function( data ) {
- clusterState = data;
- updateModel.call( self );
- });
- this.cluster.get("_stats", function( data ) {
- status = data;
- updateModel.call( self );
- });
- this.cluster.get("_nodes/stats", function( data ) {
- nodeStats = data;
- updateModel.call( self );
- });
- this.cluster.get("_nodes", function( data ) {
- clusterNodes = data;
- updateModel.call( self );
- });
- this.cluster.get("_cluster/health", function( data ) {
- clusterHealth = data;
- updateModel.call( self );
- });
- },
- _clusterState_handler: function(state) {
- this.clusterState = state;
- this.redraw("clusterState");
- },
- _status_handler: function(status) {
- this.status = status;
- this.redraw("status");
- },
- _clusterNodeStats_handler: function(stats) {
- this.nodeStats = stats;
- this.redraw("nodeStats");
- },
- _clusterNodes_handler: function(nodes) {
- this.clusterNodes = nodes;
- this.redraw("clusterNodes");
- },
- _clusterHealth_handler: function(health) {
- this.clusterHealth = health;
- this.redraw("status");
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js
deleted file mode 100644
index ccbf5757b..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js
+++ /dev/null
@@ -1,79 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-describe("app.services.ClusterState", function() {
-
- var ClusterState = window.app.services.ClusterState;
- var test = window.test;
-
- var c;
- var dummyData = {};
- var dataEventCallback;
-
- function expectAllDataToBeNull() {
- expect( c.clusterState ).toBe( null );
- expect( c.status ).toBe( null );
- expect( c.nodeStats ).toBe( null );
- expect( c.clusterNodes ).toBe( null );
- }
-
- beforeEach( function() {
- test.cb.use();
- dataEventCallback = jasmine.createSpy("onData");
- c = new ClusterState({
- cluster: {
- get: test.cb.createSpy("get", 1, [ dummyData ] )
- },
- onData: dataEventCallback
- });
- });
-
- describe( "when it is initialised", function() {
-
- it("should have null data", function() {
- expectAllDataToBeNull();
- });
-
- });
-
- describe( "when refresh is called", function() {
-
- beforeEach( function() {
- c.refresh();
- });
-
- it("should not not update models until all network requests have completed", function() {
- test.cb.execOne();
- expectAllDataToBeNull();
- test.cb.execOne();
- expectAllDataToBeNull();
- test.cb.execOne();
- expectAllDataToBeNull();
- test.cb.execOne();
- expectAllDataToBeNull();
- test.cb.execOne();
- expect( c.clusterState ).toBe( dummyData );
- expect( c.status ).toBe( dummyData );
- expect( c.nodeStats ).toBe( dummyData );
- expect( c.clusterNodes ).toBe( dummyData );
- });
-
- it("should fire a 'data' event when all data is ready", function() {
- test.cb.execAll();
- expect( dataEventCallback ).toHaveBeenCalledWith( c );
- });
- });
-
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferenceSpec.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferenceSpec.js
deleted file mode 100644
index 1bad00a54..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferenceSpec.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-describe("app.services.Preferences", function(){
-
-var Preferences = window.app.services.Preferences;
-
- var prefs;
-
- beforeEach( function() {
- spyOn(window.localStorage, "getItem").and.returnValue( '{"foo":true}' );
- spyOn(window.localStorage, "setItem");
- prefs = Preferences.instance();
- });
-
- it("should return a preference from localStorage", function() {
- expect( prefs.get("foo") ).toEqual( {foo:true} );
- });
-
- it("should set a preference in localStorage", function() {
- prefs.set("foo", { foo: false } );
- expect( window.localStorage.setItem ).toHaveBeenCalledWith('foo', '{"foo":false}');
- });
-
-
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js
deleted file mode 100644
index d7fff75eb..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ux = app.ns("ux");
- var services = app.ns("services");
-
- services.Preferences = ux.Singleton.extend({
- init: function() {
- this._storage = window.localStorage;
- this._setItem("__version", 1 );
- },
- get: function( key ) {
- return this._getItem( key );
- },
- set: function( key, val ) {
- return this._setItem( key, val );
- },
- _getItem: function( key ) {
- try {
- return JSON.parse( this._storage.getItem( key ) );
- } catch(e) {
- console.warn( e );
- return undefined;
- }
- },
- _setItem: function( key, val ) {
- try {
- return this._storage.setItem( key, JSON.stringify( val ) );
- } catch(e) {
- console.warn( e );
- return undefined;
- }
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractField/abstractField.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractField/abstractField.css
deleted file mode 100644
index 3042e7b37..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractField/abstractField.css
+++ /dev/null
@@ -1 +0,0 @@
-.require { color: #a00; }
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractField/abstractField.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractField/abstractField.js
deleted file mode 100644
index f234266cf..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractField/abstractField.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, joey ) {
-
- var ui = app.ns("ui");
-
- ui.AbstractField = ui.AbstractWidget.extend({
-
- defaults: {
- name : "", // (required) - name of the field
- require: false, // validation requirements (false, true, regexp, function)
- value: "", // default value
- label: "" // human readable label of this field
- },
-
- init: function(parent) {
- this._super();
- this.el = $.joey(this._main_template());
- this.field = this.el.find("[name="+this.config.name+"]");
- this.label = this.config.label;
- this.require = this.config.require;
- this.name = this.config.name;
- this.val( this.config.value );
- this.attach( parent );
- },
-
- val: function( val ) {
- if(val === undefined) {
- return this.field.val();
- } else {
- this.field.val( val );
- return this;
- }
- },
-
- validate: function() {
- var val = this.val(), req = this.require;
- if( req === false ) {
- return true;
- } else if( req === true ) {
- return val.length > 0;
- } else if( req.test && $.isFunction(req.test) ) {
- return req.test( val );
- } else if( $.isFunction(req) ) {
- return req( val, this );
- }
- }
-
- });
-
-})( this.jQuery, this.app, this.joey );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractPanel/abstractPanel.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractPanel/abstractPanel.css
deleted file mode 100644
index 6cce209bc..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractPanel/abstractPanel.css
+++ /dev/null
@@ -1,43 +0,0 @@
-#uiModal {
- background: black;
-}
-
-.uiPanel {
- box-shadow: -1px 2.5px 4px -3px black, -1px -2.5px 4px -3px black, 3px 2.5px 4px -3px black, 3px -2.5px 4px -3px black;
- position: absolute;
- background: #eee;
- border: 1px solid #666;
-}
-
-.uiPanel-titleBar {
- text-align: center;
- font-weight: bold;
- padding: 2px 0;
- background: rgba(223, 223, 223, 0.75);
- background: -moz-linear-gradient(top, rgba(223, 223, 223, 0.75), rgba(193, 193, 193, 0.75), rgba(223, 223, 223, 0.75));
- background: -webkit-linear-gradient(top, rgba(223, 223, 223, 0.75), rgba(193, 193, 193, 0.75), rgba(223, 223, 223, 0.75));
- border-bottom: 1px solid #bbb;
-}
-
-.uiPanel-close {
- cursor: pointer;
- border: 1px solid #aaa;
- background: #fff;
- color: #fff;
- float: left;
- height: 10px;
- left: 3px;
- line-height: 9px;
- padding: 1px 0;
- position: relative;
- text-shadow: 0 0 1px #000;
- top: 0px;
- width: 12px;
-}
-.uiPanel-close:hover {
- background: #eee;
-}
-
-.uiPanel-body {
- overflow: auto;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractPanel/abstractPanel.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractPanel/abstractPanel.js
deleted file mode 100644
index 8dc7e0a89..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractPanel/abstractPanel.js
+++ /dev/null
@@ -1,98 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var ui = app.ns("ui");
-
- ui.AbstractPanel = ui.AbstractWidget.extend({
- defaults: {
- body: null, // initial content of the body
- modal: true, // create a modal panel - creates a div that blocks interaction with page
- height: 'auto', // panel height
- width: 400, // panel width (in pixels)
- open: false, // show the panel when it is created
- parent: 'BODY', // node that panel is attached to
- autoRemove: false // remove the panel from the dom and destroy it when the widget is closed
- },
- shared: { // shared data for all instances of ui.Panel and decendants
- stack: [], // array of all open panels
- modal: $( { tag: "DIV", id: "uiModal", css: { opacity: 0.2, position: "absolute", top: "0px", left: "0px" } } )
- },
- init: function() {
- this._super();
- },
- open: function( ev ) {
- this.el
- .css( { visibility: "hidden" } )
- .appendTo( this.config.parent )
- .css( this._getPosition( ev ) )
- .css( { zIndex: (this.shared.stack.length ? (+this.shared.stack[this.shared.stack.length - 1].el.css("zIndex") + 10) : 100) } )
- .css( { visibility: "visible", display: "block" } );
- this.shared.stack.remove(this);
- this.shared.stack.push(this);
- this._setModal();
- $(document).bind("keyup", this._close_handler );
- this.fire("open", { source: this, event: ev } );
- return this;
- },
- close: function() {
- var index = this.shared.stack.indexOf(this);
- if(index !== -1) {
- this.shared.stack.splice(index, 1);
- this.el.css( { left: "-2999px" } ); // move the dialog to the left rather than hiding to prevent ie6 rendering artifacts
- this._setModal();
- this.fire("close", this );
- if(this.config.autoRemove) {
- this.remove();
- }
- }
- return this;
- },
- // close the panel and remove it from the dom, destroying it (you can not reuse the panel after calling remove)
- remove: function() {
- this.close();
- $(document).unbind("keyup", this._close_handler );
- this._super();
- },
- // starting at the top of the stack, find the first panel that wants a modal and put it just underneath, otherwise remove the modal
- _setModal: function() {
- for(var stackPtr = this.shared.stack.length - 1; stackPtr >= 0; stackPtr--) {
- if(this.shared.stack[stackPtr].config.modal) {
- this.shared.modal
- .appendTo( document.body )
- .css( { zIndex: this.shared.stack[stackPtr].el.css("zIndex") - 5 } )
- .css( $(document).vSize().asSize() );
- return;
- }
- }
- this.shared.modal.remove(); // no panels that want a modal were found
- },
- _getPosition: function() {
- return $(window).vSize() // get the current viewport size
- .sub(this.el.vSize()) // subtract the size of the panel
- .mod(function(s) { return s / 2; }) // divide by 2 (to center it)
- .add($(document).vScroll()) // add the current scroll offset
- .mod(function(s) { return Math.max(5, s); }) // make sure the panel is not off the edge of the window
- .asOffset(); // and return it as a {top, left} object
- },
- _close_handler: function( ev ) {
- if( ev.type === "keyup" && ev.keyCode !== 27) { return; } // press esc key to close
- $(document).unbind("keyup", this._close_handler);
- this.close( ev );
- }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractWidget/abstractWidget.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractWidget/abstractWidget.js
deleted file mode 100644
index 5936d383c..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/abstractWidget/abstractWidget.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, joey, app ) {
-
- var ui = app.ns("ui");
- var ux = app.ns("ux");
-
- ui.AbstractWidget = ux.Observable.extend({
- defaults : {
- id: null // the id of the widget
- },
-
- el: null, // this is the jquery wrapped dom element(s) that is the root of the widget
-
- init: function() {
- this._super();
- for(var prop in this) { // automatically bind all the event handlers
- if(prop.contains("_handler")) {
- this[prop] = this[prop].bind(this);
- }
- }
- },
-
- id: function(suffix) {
- return this.config.id ? (this.config.id + (suffix ? "-" + suffix : "")) : undefined;
- },
-
- attach: function( parent, method ) {
- if( parent ) {
- this.el[ method || "appendTo"]( parent );
- }
- this.fire("attached", this );
- return this;
- },
-
- remove: function() {
- this.el.remove();
- this.fire("removed", this );
- this.removeAllObservers();
- this.el = null;
- return this;
- }
- });
-
- joey.plugins.push( function( obj ) {
- if( obj instanceof ui.AbstractWidget ) {
- return obj.el[0];
- }
- });
-
-})( this.jQuery, this.joey, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/anyRequest/anyRequest.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/anyRequest/anyRequest.css
deleted file mode 100644
index f00412cf1..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/anyRequest/anyRequest.css
+++ /dev/null
@@ -1,38 +0,0 @@
-.uiAnyRequest-request {
- float: left;
- width: 350px;
- padding: 5px;
- background: #d8e7ff;
- background: -moz-linear-gradient(left, #d8e7ff, #e8f1ff);
- background: -webkit-linear-gradient(left, #d8e7ff, #e8f1ff);
-}
-
-.uiAnyRequest-request INPUT[type=text],
-.uiAnyRequest-request TEXTAREA {
- width: 340px;
-}
-
-.anyRequest INPUT[name=path] {
- width: 259px;
-}
-
-.uiAnyRequest-out {
- margin-left: 365px;
-}
-
-.uiAnyRequest-out P {
- margin-top: 0;
-}
-
-.uiAnyRequest-jsonErr {
- color: red;
-}
-
-.uiAnyRequest-history {
- margin: 0;
- padding: 0;
- list-style: none;
- max-height: 100px;
- overflow-x: hidden;
- overflow-y: auto;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/anyRequest/anyRequest.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/anyRequest/anyRequest.js
deleted file mode 100644
index 70c6c7a76..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/anyRequest/anyRequest.js
+++ /dev/null
@@ -1,250 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n, raphael ) {
-
- var ui = app.ns("ui");
- var ut = app.ns("ut");
- var services = app.ns("services");
-
- ui.AnyRequest = ui.Page.extend({
- defaults: {
- cluster: null, // (required) instanceof app.services.Cluster
- path: "_search", // default uri to send a request to
- query: { query: { match_all: { }}},
- transform: " return root;" // default transformer function (does nothing)
- },
- init: function(parent) {
- this._super();
- this.prefs = services.Preferences.instance();
- this.history = this.prefs.get("anyRequest-history") || [ { type: "POST", path: this.config.path, query : JSON.stringify(this.config.query), transform: this.config.transform } ];
- this.el = $.joey(this._main_template());
- this.base_uriEl = this.el.find("INPUT[name=base_uri]");
- this.pathEl = this.el.find("INPUT[name=path]");
- this.typeEl = this.el.find("SELECT[name=method]");
- this.dataEl = this.el.find("TEXTAREA[name=body]");
- this.prettyEl = this.el.find("INPUT[name=pretty]");
- this.transformEl = this.el.find("TEXTAREA[name=transform]");
- this.asGraphEl = this.el.find("INPUT[name=asGraph]");
- this.asTableEl = this.el.find("INPUT[name=asTable]");
- this.asJsonEl = this.el.find("INPUT[name=asJson]");
- this.cronEl = this.el.find("SELECT[name=cron]");
- this.outEl = this.el.find("DIV.uiAnyRequest-out");
- this.errEl = this.el.find("DIV.uiAnyRequest-jsonErr");
- this.typeEl.val("GET");
- this.attach(parent);
- this.setHistoryItem(this.history[this.history.length - 1]);
- },
- setHistoryItem: function(item) {
- this.pathEl.val(item.path);
- this.typeEl.val(item.type);
- this.dataEl.val(item.query);
- this.transformEl.val(item.transform);
- },
- _request_handler: function( ev ) {
- if(! this._validateJson_handler()) {
- return;
- }
- var path = this.pathEl.val(),
- type = this.typeEl.val(),
- query = JSON.stringify(JSON.parse(this.dataEl.val())),
- transform = this.transformEl.val(),
- base_uri = this.base_uriEl.val();
- if( ev ) { // if the user click request
- if(this.timer) {
- window.clearTimeout(this.timer); // stop any cron jobs
- }
- delete this.prevData; // remove data from previous cron runs
- this.outEl.text(i18n.text("AnyRequest.Requesting"));
- if( ! /\/$/.test( base_uri )) {
- base_uri += "/";
- this.base_uriEl.val( base_uri );
- }
- for(var i = 0; i < this.history.length; i++) {
- if(this.history[i].path === path &&
- this.history[i].type === type &&
- this.history[i].query === query &&
- this.history[i].transform === transform) {
- this.history.splice(i, 1);
- }
- }
- this.history.push({
- path: path,
- type: type,
- query: query,
- transform: transform
- });
- this.history.slice(250); // make sure history does not get too large
- this.prefs.set( "anyRequest-history", this.history );
- this.el.find("UL.uiAnyRequest-history")
- .empty()
- .append($( { tag: "UL", children: this.history.map(this._historyItem_template, this) }).children())
- .children().find(":last-child").each(function(i, j) { j.scrollIntoView(false); }).end()
- .scrollLeft(0);
- }
- this.config.cluster.request({
- url: base_uri + path,
- type: type,
- data: query,
- success: this._responseWriter_handler,
- error: this._responseError_handler
- });
- },
- _responseError_handler: function (response) {
- var obj;
- try {
- obj = JSON.parse(response.responseText);
- if (obj) {
- this._responseWriter_handler(obj);
- }
- } catch (err) {
- }
- },
- _responseWriter_handler: function(data) {
- this.outEl.empty();
- try {
- data = (new Function("root", "prev", this.transformEl.val()))(data, this.prevData)
- } catch(e) {
- this.errEl.text(e.message);
- return;
- }
- if(this.asGraphEl.attr("checked")) {
- var w = this.outEl.width();
- raphael(this.outEl[0], w - 10, 300)
- .g.barchart(10, 10, w - 20, 280, [data]);
- }
- if(this.asTableEl.attr("checked")) {
- try {
- var store = new app.data.ResultDataSourceInterface();
- this.outEl.append(new app.ui.ResultTable({
- width: this.outEl.width() - 23,
- store: store
- } ) );
- store.results(data);
- } catch(e) {
- this.errEl.text("Results Table Failed: " + e.message);
- }
- }
- if(this.asJsonEl.attr("checked")) {
- this.outEl.append(new ui.JsonPretty({ obj: data }));
- }
- if(this.cronEl.val() > 0) {
- this.timer = window.setTimeout(function(){
- this._request_handler();
- }.bind(this), this.cronEl.val());
- }
- this.prevData = data;
- },
- _validateJson_handler: function( ev ) {
- /* if the textarea is empty, we replace its value by an empty JSON object : "{}" and the request goes on as usual */
- var jsonData = this.dataEl.val().trim();
- var j;
- if(jsonData === "") {
- jsonData = "{}";
- this.dataEl.val( jsonData );
- }
- try {
- j = JSON.parse(jsonData);
- } catch(e) {
- this.errEl.text(e.message);
- return false;
- }
- this.errEl.text("");
- if(this.prettyEl.attr("checked")) {
- this.dataEl.val(JSON.stringify(j, null, " "));
- }
- return true;
- },
- _historyClick_handler: function( ev ) {
- var item = $( ev.target ).closest( "LI" ).data( "item" );
- this.setHistoryItem( item );
- },
- _main_template: function() {
- return { tag: "DIV", cls: "anyRequest", children: [
- { tag: "DIV", cls: "uiAnyRequest-request", children: [
- new app.ui.SidebarSection({
- open: false,
- title: i18n.text("AnyRequest.History"),
- body: { tag: "UL", onclick: this._historyClick_handler, cls: "uiAnyRequest-history", children: this.history.map(this._historyItem_template, this) }
- }),
- new app.ui.SidebarSection({
- open: true,
- title: i18n.text("AnyRequest.Query"),
- body: { tag: "DIV", children: [
- { tag: "INPUT", type: "text", name: "base_uri", value: this.config.cluster.config.base_uri },
- { tag: "BR" },
- { tag: "INPUT", type: "text", name: "path", value: this.config.path },
- { tag: "SELECT", name: "method", children: ["POST", "GET", "PUT", "HEAD", "DELETE"].map(ut.option_template) },
- { tag: "TEXTAREA", name: "body", rows: 20, text: JSON.stringify(this.config.query) },
- { tag: "BUTTON", css: { cssFloat: "right" }, type: "button", children: [ { tag: "B", text: i18n.text("AnyRequest.Request") } ], onclick: this._request_handler },
- { tag: "BUTTON", type: "button", text: i18n.text("AnyRequest.ValidateJSON"), onclick: this._validateJson_handler },
- { tag: "LABEL", children: [ { tag: "INPUT", type: "checkbox", name: "pretty" }, i18n.text("AnyRequest.Pretty") ] },
- { tag: "DIV", cls: "uiAnyRequest-jsonErr" }
- ]}
- }),
- new app.ui.SidebarSection({
- title: i18n.text("AnyRequest.Transformer"),
- help: "AnyRequest.TransformerHelp",
- body: { tag: "DIV", children: [
- { tag: "CODE", text: "function(root, prev) {" },
- { tag: "BR" },
- { tag: "TEXTAREA", name: "transform", rows: 5, text: this.config.transform },
- { tag: "BR" },
- { tag: "CODE", text: "}" }
- ] }
- }),
- new app.ui.SidebarSection({
- title: i18n.text("AnyRequest.RepeatRequest"),
- body: { tag: "DIV", children: [
- i18n.text("AnyRequest.RepeatRequestSelect"), " ",
- { tag: "SELECT", name: "cron", children: [
- { value: 0, text: "do not repeat" },
- { value: 1000, text: "second" },
- { value: 1000 * 2, text: "2 seconds" },
- { value: 1000 * 5, text: "5 seconds" },
- { value: 1000 * 20, text: "20 seconds" },
- { value: 1000 * 60, text: "minute" },
- { value: 1000 * 60 * 10, text: "10 minutes" },
- { value: 1000 * 60 * 60, text: "hour" }
- ].map(function(op) { return $.extend({ tag: "OPTION"}, op); }) }
- ] }
- }),
- new app.ui.SidebarSection({
- title: i18n.text("AnyRequest.DisplayOptions"),
- help: "AnyRequest.DisplayOptionsHelp",
- body: { tag: "DIV", children: [
- { tag: "LABEL", children: [ { tag: "INPUT", type: "checkbox", checked: true, name: "asJson" }, i18n.text("AnyRequest.AsJson") ] },
- { tag: "BR" },
- { tag: "LABEL", children: [ { tag: "INPUT", type: "checkbox", name: "asGraph" }, i18n.text("AnyRequest.AsGraph") ] },
- { tag: "BR" },
- { tag: "LABEL", children: [ { tag: "INPUT", type: "checkbox", name: "asTable" }, i18n.text("AnyRequest.AsTable") ] }
- ] }
- })
- ] },
- { tag: "DIV", cls: "uiAnyRequest-out" }
- ] };
- },
- _historyItem_template: function(item) {
- return { tag: "LI", cls: "booble", data: { item: item }, children: [
- { tag: "SPAN", text: item.path },
- " ",
- { tag: "EM", text: item.query },
- " ",
- { tag: "SPAN", text: item.transform }
- ] };
- }
- });
-
-})( this.jQuery, this.app, this.i18n, this.Raphael );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/browser/browser.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/browser/browser.css
deleted file mode 100644
index 66e2110a7..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/browser/browser.css
+++ /dev/null
@@ -1,7 +0,0 @@
-.uiBrowser-filter {
- float: left;
-}
-
-.uiBrowser-table {
- margin-left: 365px;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/browser/browser.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/browser/browser.js
deleted file mode 100644
index b288f976a..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/browser/browser.js
+++ /dev/null
@@ -1,73 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ){
-
- var ui = app.ns("ui");
- var data = app.ns("data");
-
- ui.Browser = ui.Page.extend({
- defaults: {
- cluster: null // (required) instanceof app.services.Cluster
- },
- init: function() {
- this._super();
- this.cluster = this.config.cluster;
- this.query = new app.data.Query( { cluster: this.cluster } );
- this._refreshButton = new ui.Button({
- label: i18n.text("General.RefreshResults"),
- onclick: function( btn ) {
- this.query.query();
- }.bind(this)
- });
- this.el = $(this._main_template());
- new data.MetaDataFactory({
- cluster: this.cluster,
- onReady: function(metadata) {
- this.metadata = metadata;
- this.store = new data.QueryDataSourceInterface( { metadata: metadata, query: this.query } );
- this.queryFilter = new ui.QueryFilter({ metadata: metadata, query: this.query });
- this.queryFilter.attach(this.el.find("> .uiBrowser-filter") );
- this.resultTable = new ui.ResultTable( {
- onHeaderClick: this._changeSort_handler,
- store: this.store
- } );
- this.resultTable.attach( this.el.find("> .uiBrowser-table") );
- this.updateResults();
- }.bind(this)
- });
- },
- updateResults: function() {
- this.query.query();
- },
- _changeSort_handler: function(table, wEv) {
- this.query.setSort(wEv.column, wEv.dir === "desc");
- this.query.setPage(1);
- this.query.query();
- },
- _main_template: function() {
- return { tag: "DIV", cls: "uiBrowser", children: [
- new ui.Toolbar({
- label: i18n.text("Browser.Title"),
- left: [ ],
- right: [ this._refreshButton ]
- }),
- { tag: "DIV", cls: "uiBrowser-filter" },
- { tag: "DIV", cls: "uiBrowser-table" }
- ] };
- }
- });
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/button.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/button.css
deleted file mode 100644
index 17123dcd7..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/button.css
+++ /dev/null
@@ -1,50 +0,0 @@
-.uiButton {
- padding: 0;
- border: 0;
- margin: 3px;
- width: auto;
- overflow: visible;
- cursor: pointer;
- background: transparent;
-}
-
-.uiButton-content {
- height: 20px;
- border: 1px solid #668dc6;
- border-radius: 2px;
- background: #96c6eb;
- background: -moz-linear-gradient(top, #96c6eb, #5296c7);
- background: -webkit-linear-gradient(top, #96c6eb, #5296c7);
- color: white;
- font-weight: bold;
-}
-
-.moz .uiButton-content { margin: 0 -2px; }
-
-.uiButton-label {
- padding: 2px 6px;
- white-space: nowrap;
-}
-.uiButton:hover .uiButton-content {
- background: #2777ba;
- background: -moz-linear-gradient(top, #6aaadf, #2777ba);
- background: -webkit-linear-gradient(top, #6aaadf, #2777ba);
-}
-.uiButton.active .uiButton-content,
-.uiButton:active .uiButton-content {
- background: #2575b7;
- background: -moz-linear-gradient(top, #2576b8, #2575b7);
- background: -webkit-linear-gradient(top, #2576b8, #2575b7);
-}
-.uiButton.disabled .uiButton-content,
-.uiButton.disabled:active .uiButton-content {
- border-color: #c6c6c6;
- color: #999999;
- background: #ddd;
- background: -moz-linear-gradient(top, #ddd, #ddd);
- background: -webkit-linear-gradient(top, #ddd, #ddd);
-}
-
-.uiButton.disabled {
- cursor: default;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/button.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/button.js
deleted file mode 100644
index 5112cf4c9..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/button.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, joey, app ) {
-
- var ui = app.ns("ui");
-
- ui.Button = ui.AbstractWidget.extend({
- defaults : {
- label: "", // the label text
- disabled: false, // create a disabled button
- autoDisable: false // automatically disable the button when clicked
- },
-
- _baseCls: "uiButton",
-
- init: function(parent) {
- this._super();
- this.el = $.joey(this.button_template())
- .bind("click", this.click_handler);
- this.config.disabled && this.disable();
- this.attach( parent );
- },
-
- click_handler: function(jEv) {
- if(! this.disabled) {
- this.fire("click", jEv, this);
- this.config.autoDisable && this.disable();
- }
- },
-
- enable: function() {
- this.el.removeClass("disabled");
- this.disabled = false;
- return this;
- },
-
- disable: function(disable) {
- if(disable === false) {
- return this.enable();
- }
- this.el.addClass("disabled");
- this.disabled = true;
- return this;
- },
-
- button_template: function() { return (
- { tag: 'BUTTON', type: 'button', id: this.id(), cls: this._baseCls, children: [
- { tag: 'DIV', cls: 'uiButton-content', children: [
- { tag: 'DIV', cls: 'uiButton-label', text: this.config.label }
- ] }
- ] }
- ); }
- });
-
-})( this.jQuery, this.joey, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/buttonDemo.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/buttonDemo.js
deleted file mode 100644
index d8d46bb78..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/button/buttonDemo.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-$( function() {
-
- var ui = window.app.ns("ui");
-
- window.builder = function() {
- return new ui.Button({ label: "Default" });
- } ;
-
-}); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkField.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkField.js
deleted file mode 100644
index 813280398..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkField.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ui = app.ns("ui");
-
- ui.CheckField = ui.AbstractField.extend({
- _main_template: function() { return (
- { tag: "DIV", id: this.id(), cls: "uiCheckField", children: [
- { tag: "INPUT", type: "checkbox", name: this.config.name, checked: !!this.config.value }
- ] }
- ); },
- validate: function() {
- return this.val() || ( ! this.require );
- },
- val: function( val ) {
- if( val === undefined ) {
- return !!this.field.attr( "checked" );
- } else {
- this.field.attr( "checked", !!val );
- }
- }
- });
-
-})( this.app );
-
-
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkFieldDemo.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkFieldDemo.js
deleted file mode 100644
index 1f8308343..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkFieldDemo.js
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-$( function() {
-
- var ui = window.app.ns("ui");
- var ux = window.app.ns("ux");
- var ut = window.app.ns("ut");
-
- window.builder = function() {
- var form = new ux.FieldCollection({
- fields: [
- new ui.CheckField({
- label: "default",
- name: "check_default"
- }),
- new ui.CheckField({
- label: "checked",
- name: "check_true",
- value: true
- }),
- new ui.CheckField({
- label: "unchecked",
- name: "check_false",
- value: false
- }),
- new ui.CheckField({
- label: "required",
- name: "check_required",
- require: true
- })
- ]
- });
-
- return (
- { tag: "DIV", children: form.fields.map( function( field ) {
- return { tag: "LABEL", cls: "uiPanelForm-field", children: [
- { tag: "DIV", cls: "uiPanelForm-label", children: [ field.label, ut.require_template(field) ] },
- field
- ]};
- }).concat( new ui.Button({
- label: "Evaluate Form",
- onclick: function() { console.log( "valid=" + form.validate(), form.getData() ); }
- })) }
- );
- };
-
-}); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkFieldSpec.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkFieldSpec.js
deleted file mode 100644
index d9693ed11..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/checkField/checkFieldSpec.js
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-describe("app.ui.CheckField", function() {
-
- var CheckField = window.app.ui.CheckField;
-
- it("should have a label", function() {
- expect( ( new CheckField({ label: "foo" }) ).label ).toBe( "foo" );
- });
-
- it("should have a name", function() {
- expect( ( new CheckField({ name: "foo" }) ).name ).toBe( "foo" );
- });
-
- it("should have a val that is false when then field is not checked", function() {
- expect( ( new CheckField({ name: "foo", value: false }) ).val() ).toBe( false );
- });
-
- it("should have a val that is true when the field is checked", function() {
- expect( ( new CheckField({ name: "foo", value: true }) ).val() ).toBe( true );
- });
-
- it("should be valid if the field value is true", function() {
- expect( ( new CheckField({ name: "foo", value: true }) ).validate() ).toBe( true );
- });
-
- it("should be valid if require is false", function() {
- expect( ( new CheckField({ name: "foo", require: false, value: true }) ).validate() ).toBe( true );
- expect( ( new CheckField({ name: "foo", require: false, value: false }) ).validate() ).toBe( true );
- });
-
- it("should be invalid if require is true and value is false", function() {
- expect( ( new CheckField({ name: "foo", require: true, value: false }) ).validate() ).toBe( false );
- });
-
-}); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnect.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnect.css
deleted file mode 100644
index e5b8fb457..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnect.css
+++ /dev/null
@@ -1,3 +0,0 @@
-.uiClusterConnect-uri {
- width: 280px;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnect.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnect.js
deleted file mode 100644
index d254bbd2f..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnect.js
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
- var services = app.ns("services");
-
- ui.ClusterConnect = ui.AbstractWidget.extend({
- defaults: {
- cluster: null
- },
- init: function() {
- this._super();
- this.prefs = services.Preferences.instance();
- this.cluster = this.config.cluster;
- this.el = $.joey(this._main_template());
- this.cluster.get( "", this._node_handler );
- },
-
- _node_handler: function(data) {
- if(data) {
- this.prefs.set("app-base_uri", this.cluster.base_uri);
- }
- },
-
- _reconnect_handler: function() {
- var base_uri = this.el.find(".uiClusterConnect-uri").val();
- $("body").empty().append(new app.App("body", { id: "es", base_uri: base_uri }));
- },
-
- _main_template: function() {
- return { tag: "SPAN", cls: "uiClusterConnect", children: [
- { tag: "INPUT", type: "text", cls: "uiClusterConnect-uri", onkeyup: function( ev ) {
- if(ev.which === 13) {
- ev.preventDefault();
- this._reconnect_handler();
- }
- }.bind(this), id: this.id("baseUri"), value: this.cluster.base_uri },
- { tag: "BUTTON", type: "button", text: i18n.text("Header.Connect"), onclick: this._reconnect_handler }
- ]};
- }
- });
-
-})( this.jQuery, this.app, this.i18n );
-
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnectSpec.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnectSpec.js
deleted file mode 100644
index af80c01a0..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterConnect/clusterConnectSpec.js
+++ /dev/null
@@ -1,53 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-describe("clusterConnect", function() {
-
- var ClusterConnect = window.app.ui.ClusterConnect;
-
- describe("when created", function() {
-
- var prefs, success_callback, cluster, clusterConnect;
-
- beforeEach( function() {
- prefs = {
- set: jasmine.createSpy("set")
- };
- spyOn( window.app.services.Preferences, "instance" ).and.callFake( function() {
- return prefs;
- });
- cluster = {
- get: jasmine.createSpy("get").and.callFake( function(uri, success) {
- success_callback = success;
- })
- };
- clusterConnect = new ClusterConnect({
- base_uri: "http://localhost:9200",
- cluster: cluster
- });
- });
-
- it("should test the connection to the cluster", function() {
- expect( cluster.get ).toHaveBeenCalled();
- });
-
- it("should store successful connection in preferences", function() {
- success_callback("fakePayload");
- expect( prefs.set ).toHaveBeenCalled();
- });
-
- });
-
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterOverview/clusterOverview.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterOverview/clusterOverview.css
deleted file mode 100644
index e69de29bb..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterOverview/clusterOverview.css
+++ /dev/null
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterOverview/clusterOverview.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterOverview/clusterOverview.js
deleted file mode 100644
index 5896c53b1..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/clusterOverview/clusterOverview.js
+++ /dev/null
@@ -1,317 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
- var services = app.ns("services");
-
- // ( master ) master = true, data = true
- // ( coordinator ) master = true, data = false
- // ( worker ) master = false, data = true;
- // ( client ) master = false, data = false;
- // http enabled ?
-
- function nodeSort_name(a, b) {
- if (!(a.cluster && b.cluster)) {
- return 0;
- }
- return a.cluster.name.toString().localeCompare( b.cluster.name.toString() );
- }
-
- function nodeSort_addr( a, b ) {
- if (!(a.cluster && b.cluster)) {
- return 0;
- }
- return a.cluster.transport_address.toString().localeCompare( b.cluster.transport_address.toString() );
- }
-
- function nodeSort_type( a, b ) {
- if (!(a.cluster && b.cluster)) {
- return 0;
- }
- if( a.master_node ) {
- return -1;
- } else if( b.master_node ) {
- return 1;
- } else if( a.data_node && !b.data_node ) {
- return -1;
- } else if( b.data_node && !a.data_node ) {
- return 1;
- } else {
- return a.cluster.name.toString().localeCompare( b.cluster.name.toString() );
- }
- }
-
- var NODE_SORT_TYPES = {
- "Sort.ByName": nodeSort_name,
- "Sort.ByAddress": nodeSort_addr,
- "Sort.ByType": nodeSort_type
- };
-
- function nodeFilter_none( a ) {
- return true;
- }
-
- function nodeFilter_clients( a ) {
- return (a.master_node || a.data_node );
- }
-
-
- ui.ClusterOverview = ui.Page.extend({
- defaults: {
- cluster: null // (reqired) an instanceof app.services.Cluster
- },
- init: function() {
- this._super();
- this.cluster = this.config.cluster;
- this.prefs = services.Preferences.instance();
- this._clusterState = this.config.clusterState;
- this._clusterState.on("data", this.draw_handler );
- this._refreshButton = new ui.RefreshButton({
- onRefresh: this.refresh.bind(this),
- onChange: function( btn ) {
- if( btn.value === -1 ) {
- this.draw_handler();
- }
- }.bind( this )
- });
- var nodeSortPref = this.prefs.get("clusterOverview-nodeSort") || Object.keys(NODE_SORT_TYPES)[0];
- this._nodeSort = NODE_SORT_TYPES[ nodeSortPref ];
- this._nodeSortMenu = new ui.MenuButton({
- label: i18n.text( "Preference.SortCluster" ),
- menu: new ui.SelectMenuPanel({
- value: nodeSortPref,
- items: Object.keys( NODE_SORT_TYPES ).map( function( k ) {
- return { text: i18n.text( k ), value: k };
- }),
- onSelect: function( panel, event ) {
- this._nodeSort = NODE_SORT_TYPES[ event.value ];
- this.prefs.set("clusterOverview-nodeSort", event.value );
- this.draw_handler();
- }.bind(this)
- })
- });
- this._indicesSort = this.prefs.get( "clusterOverview-indicesSort") || "desc";
- this._indicesSortMenu = new ui.MenuButton({
- label: i18n.text( "Preference.SortIndices" ),
- menu: new ui.SelectMenuPanel({
- value: this._indicesSort,
- items: [
- { value: "desc", text: i18n.text( "SortIndices.Descending" ) },
- { value: "asc", text: i18n.text( "SortIndices.Ascending" ) } ],
- onSelect: function( panel, event ) {
- this._indicesSort = event.value;
- this.prefs.set( "clusterOverview-indicesSort", this._indicesSort );
- this.draw_handler();
- }.bind(this)
- })
- });
- this._aliasRenderer = this.prefs.get( "clusterOverview-aliasRender" ) || "full";
- this._aliasMenu = new ui.MenuButton({
- label: i18n.text( "Preference.ViewAliases" ),
- menu: new ui.SelectMenuPanel({
- value: this._aliasRenderer,
- items: [
- { value: "full", text: i18n.text( "ViewAliases.Grouped" ) },
- { value: "list", text: i18n.text( "ViewAliases.List" ) },
- { value: "none", text: i18n.text( "ViewAliases.None" ) } ],
- onSelect: function( panel, event ) {
- this._aliasRenderer = event.value;
- this.prefs.set( "clusterOverview-aliasRender", this._aliasRenderer );
- this.draw_handler();
- }.bind(this)
- })
- });
- this._indexFilter = new ui.TextField({
- value: this.prefs.get("clusterOverview-indexFilter"),
- placeholder: i18n.text( "Overview.IndexFilter" ),
- onchange: function( indexFilter ) {
- this.prefs.set("clusterOverview-indexFilter", indexFilter.val() );
- this.draw_handler();
- }.bind(this)
- });
- this.el = $(this._main_template());
- this.tablEl = this.el.find(".uiClusterOverview-table");
- this.refresh();
- },
- remove: function() {
- this._clusterState.removeObserver( "data", this.draw_handler );
- },
- refresh: function() {
- this._refreshButton.disable();
- this._clusterState.refresh();
- },
- draw_handler: function() {
- var data = this._clusterState;
- var indexFilter;
- try {
- var indexFilterRe = new RegExp( this._indexFilter.val() );
- indexFilter = function(s) { return indexFilterRe.test(s); };
- } catch(e) {
- indexFilter = function() { return true; };
- }
- var clusterState = data.clusterState;
- var status = data.status;
- var nodeStats = data.nodeStats;
- var clusterNodes = data.clusterNodes;
- var nodes = [];
- var indices = [];
- var cluster = {};
- var nodeIndices = {};
- var indexIndices = {}, indexIndicesIndex = 0;
- function newNode(n) {
- return {
- name: n,
- routings: [],
- master_node: clusterState.master_node === n
- };
- }
- function newIndex(i) {
- return {
- name: i,
- replicas: []
- };
- }
- function getIndexForNode(n) {
- return nodeIndices[n] = (n in nodeIndices) ? nodeIndices[n] : nodes.push(newNode(n)) - 1;
- }
- function getIndexForIndex(routings, i) {
- var index = indexIndices[i] = (i in indexIndices) ?
- (routings[indexIndices[i]] = routings[indexIndices[i]] || newIndex(i)) && indexIndices[i]
- : ( ( routings[indexIndicesIndex] = newIndex(i) ) && indexIndicesIndex++ );
- indices[index] = i;
- return index;
- }
- $.each(clusterNodes.nodes, function(name, node) {
- getIndexForNode(name);
- });
-
- var indexNames = [];
- $.each(clusterState.routing_table.indices, function(name, index){
- indexNames.push(name);
- });
- indexNames.sort();
- if (this._indicesSort === "desc") indexNames.reverse();
- indexNames.filter( indexFilter ).forEach(function(name) {
- var indexObject = clusterState.routing_table.indices[name];
- $.each(indexObject.shards, function(name, shard) {
- shard.forEach(function(replica){
- var node = replica.node;
- if(node === null) { node = "Unassigned"; }
- var index = replica.index;
- var shard = replica.shard;
- var routings = nodes[getIndexForNode(node)].routings;
- var indexIndex = getIndexForIndex(routings, index);
- var replicas = routings[indexIndex].replicas;
- if(node === "Unassigned" || !indexObject.shards[shard]) {
- replicas.push({ replica: replica });
- } else {
- replicas[shard] = {
- replica: replica,
- status: indexObject.shards[shard].filter(function(replica) {
- return replica.node === node;
- })[0]
- };
- }
- });
- });
- });
- indices = indices.map(function(index){
- return {
- name: index,
- state: "open",
- metadata: clusterState.metadata.indices[index],
- status: status.indices[index]
- };
- }, this);
- $.each(clusterState.metadata.indices, function(name, index) {
- if(index.state === "close" && indexFilter( name )) {
- indices.push({
- name: name,
- state: "close",
- metadata: index,
- status: null
- });
- }
- });
- nodes.forEach(function(node) {
- node.stats = nodeStats.nodes[node.name];
- var cluster = clusterNodes.nodes[node.name];
- node.cluster = cluster || { name: "<unknown>" };
- node.data_node = !( cluster && cluster.attributes && cluster.attributes.data === "false" );
- for(var i = 0; i < indices.length; i++) {
- node.routings[i] = node.routings[i] || { name: indices[i].name, replicas: [] };
- node.routings[i].max_number_of_shards = indices[i].metadata.settings["index.number_of_shards"];
- node.routings[i].open = indices[i].state === "open";
- }
- });
- var aliasesIndex = {};
- var aliases = [];
- var indexClone = indices.map(function() { return false; });
- $.each(clusterState.metadata.indices, function(name, index) {
- index.aliases.forEach(function(alias) {
- var aliasIndex = aliasesIndex[alias] = (alias in aliasesIndex) ? aliasesIndex[alias] : aliases.push( { name: alias, max: -1, min: 999, indices: [].concat(indexClone) }) - 1;
- var indexIndex = indexIndices[name];
- var aliasRow = aliases[aliasIndex];
- aliasRow.min = Math.min(aliasRow.min, indexIndex);
- aliasRow.max = Math.max(aliasRow.max, indexIndex);
- aliasRow.indices[indexIndex] = indices[indexIndex];
- });
- });
- cluster.aliases = aliases;
- cluster.nodes = nodes
- .filter( nodeFilter_none )
- .sort( this._nodeSort );
- indices.unshift({ name: null });
- this._drawNodesView( cluster, indices );
- this._refreshButton.enable();
- },
- _drawNodesView: function( cluster, indices ) {
- this._nodesView && this._nodesView.remove();
- this._nodesView = new ui.NodesView({
- onRedraw: function() {
- this.refresh();
- }.bind(this),
- interactive: ( this._refreshButton.value === -1 ),
- aliasRenderer: this._aliasRenderer,
- cluster: this.cluster,
- data: {
- cluster: cluster,
- indices: indices
- }
- });
- this._nodesView.attach( this.tablEl );
- },
- _main_template: function() {
- return { tag: "DIV", id: this.id(), cls: "uiClusterOverview", children: [
- new ui.Toolbar({
- label: i18n.text("Overview.PageTitle"),
- left: [
- this._nodeSortMenu,
- this._indicesSortMenu,
- this._aliasMenu,
- this._indexFilter
- ],
- right: [
- this._refreshButton
- ]
- }),
- { tag: "DIV", cls: "uiClusterOverview-table" }
- ] };
- }
- });
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/csvTable/csvTable.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/csvTable/csvTable.js
deleted file mode 100644
index 5482b9629..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/csvTable/csvTable.js
+++ /dev/null
@@ -1,99 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-( function( $, app, joey ) {
-
- var ui = app.ns("ui");
-
- var CELL_SEPARATOR = ",";
- var CELL_QUOTE = '"';
- var LINE_SEPARATOR = "\r\n";
-
- ui.CSVTable = ui.AbstractWidget.extend({
- defaults: {
- results: null
- },
- _baseCls: "uiCSVTable",
- init: function( parent ) {
- this._super();
- var results = this.config.results.hits.hits;
- var columns = this._parseResults( results );
- this._downloadButton = new ui.Button({
- label: "Generate Download Link",
- onclick: this._downloadLinkGenerator_handler
- });
- this._downloadLink = $.joey( { tag: "A", text: "download", });
- this._downloadLink.hide();
- this._csvText = this._csv_template( columns, results );
- this.el = $.joey( this._main_template() );
- this.attach( parent );
- },
- _downloadLinkGenerator_handler: function() {
- var csvData = new Blob( [ this._csvText ], { type: 'text/csv' });
- var csvURL = URL.createObjectURL( csvData );
- this._downloadLink.attr( "href", csvURL );
- this._downloadLink.show();
- },
- _parseResults: function( results ) {
- var columnPaths = {};
- (function parse( path, obj ) {
- if( obj instanceof Array ) {
- for( var i = 0; i < obj.length; i++ ) {
- parse( path, obj[i] );
- }
- } else if( typeof obj === "object" ) {
- for( var prop in obj ) {
- parse( path + "." + prop, obj[ prop ] );
- }
- } else {
- columnPaths[ path ] = true;
- }
- })( "root", results );
- var columns = [];
- for( var column in columnPaths ) {
- columns.push( column.split(".").slice(1) );
- }
- return columns;
- },
- _main_template: function() { return (
- { tag: "DIV", cls: this._baseCls, id: this.id(), children: [
- this._downloadButton,
- this._downloadLink,
- { tag: "PRE", text: this._csvText }
- ] }
- ); },
- _csv_template: function( columns, results ) {
- return this._header_template( columns ) + LINE_SEPARATOR + this._results_template( columns, results );
- },
- _header_template: function( columns ) {
- return columns.map( function( column ) {
- return column.join(".");
- }).join( CELL_SEPARATOR );
- },
- _results_template: function( columns, results ) {
- return results.map( function( result ) {
- return columns.map( function( column ) {
- var l = 0,
- ptr = result;
- while( l !== column.length && ptr != null ) {
- ptr = ptr[ column[ l++ ] ];
- }
- return ( ptr == null ) ? "" : ( CELL_QUOTE + ptr.toString().replace(/"/g, '""') + CELL_QUOTE );
- }).join( CELL_SEPARATOR );
- }).join( LINE_SEPARATOR );
- }
- });
-
-})( this.jQuery, this.app, this.joey );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/dateHistogram/dateHistogram.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/dateHistogram/dateHistogram.js
deleted file mode 100644
index 7fb42b364..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/dateHistogram/dateHistogram.js
+++ /dev/null
@@ -1,119 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app, i18n, raphael ) {
-
- var ui = app.ns("ui");
-
- ui.DateHistogram = ui.AbstractWidget.extend({
- defaults: {
- printEl: null, // (optional) if supplied, clicking on elements in the histogram changes the query
- cluster: null, // (required)
- query: null, // (required) the current query
- spec: null // (required) // date field spec
- },
- init: function() {
- this._super();
- this.el = $(this._main_template());
- this.query = this.config.query.clone();
- // check if the index/types have changed and rebuild the histogram
- this.config.query.on("results", function(query) {
- if(this.queryChanged) {
- this.buildHistogram(query);
- this.queryChanged = false;
- }
- }.bind(this));
- this.config.query.on("setIndex", function(query, params) {
- this.query.setIndex(params.index, params.add);
- this.queryChanged = true;
- }.bind(this));
- this.config.query.on("setType", function(query, params) {
- this.query.setType(params.type, params.add);
- this.queryChanged = true;
- }.bind(this));
- this.query.search.size = 0;
- this.query.on("results", this._stat_handler);
- this.query.on("results", this._aggs_handler);
- this.buildHistogram();
- },
- buildHistogram: function(query) {
- this.statAggs = this.query.addAggs({
- stats: { field: this.config.spec.field_name }
- });
- this.query.query();
- this.query.removeAggs(this.statAggs);
- },
- _stat_handler: function(query, results) {
- if(! results.aggregations[this.statAggs]) { return; }
- this.stats = results.aggregations[this.statAggs];
- // here we are calculating the approximate range that will give us less than 121 columns
- var rangeNames = [ "year", "year", "month", "day", "hour", "minute" ];
- var rangeFactors = [100000, 12, 30, 24, 60, 60000 ];
- this.intervalRange = 1;
- var range = this.stats.max - this.stats.min;
- do {
- this.intervalName = rangeNames.pop();
- var factor = rangeFactors.pop();
- this.intervalRange *= factor;
- range = range / factor;
- } while(range > 70);
- this.dateAggs = this.query.addAggs({
- date_histogram : {
- field: this.config.spec.field_name,
- interval: this.intervalName
- }
- });
- this.query.query();
- this.query.removeAggs(this.dateAggs);
- },
- _aggs_handler: function(query, results) {
- if(! results.aggregations[this.dateAggs]) { return; }
- var buckets = [], range = this.intervalRange;
- var min = Math.floor(this.stats.min / range) * range;
- var prec = [ "year", "month", "day", "hour", "minute", "second" ].indexOf(this.intervalName);
- results.aggregations[this.dateAggs].buckets.forEach(function(entry) {
- buckets[parseInt((entry.key - min) / range , 10)] = entry.doc_count;
- }, this);
- for(var i = 0; i < buckets.length; i++) {
- buckets[i] = buckets[i] || 0;
- }
- this.el.removeClass("loading");
- var el = this.el.empty();
- var w = el.width(), h = el.height();
- var r = raphael(el[0], w, h );
- var printEl = this.config.printEl;
- query = this.config.query;
- r.g.barchart(0, 0, w, h, [buckets], { gutter: "0", vgutter: 0 }).hover(
- function() {
- this.flag = r.g.popup(this.bar.x, h - 5, this.value || "0").insertBefore(this);
- }, function() {
- this.flag.animate({opacity: 0}, 200, ">", function () {this.remove();});
- }
- ).click(function() {
- if(printEl) {
- printEl.val(window.dateRangeParser.print(min + this.bar.index * range, prec));
- printEl.trigger("keyup");
- query.query();
- }
- });
- },
- _main_template: function() { return (
- { tag: "DIV", cls: "uiDateHistogram loading", css: { height: "50px" }, children: [
- i18n.text("General.LoadingAggs")
- ] }
- ); }
- });
-
-})( this.app, this.i18n, this.Raphael ); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/dialogPanel/dialogPanel.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/dialogPanel/dialogPanel.js
deleted file mode 100644
index e76701fac..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/dialogPanel/dialogPanel.js
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ui = app.ns("ui");
-
- ui.DialogPanel = ui.DraggablePanel.extend({
- _commit_handler: function(jEv) {
- this.fire("commit", this, { jEv: jEv });
- },
- _main_template: function() {
- var t = this._super();
- t.children.push(this._actionsBar_template());
- return t;
- },
- _actionsBar_template: function() {
- return { tag: "DIV", cls: "pull-right", children: [
- new app.ui.Button({ label: "Cancel", onclick: this._close_handler }),
- new app.ui.Button({ label: "OK", onclick: this._commit_handler })
- ]};
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/draggablePanel/draggablePanel.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/draggablePanel/draggablePanel.js
deleted file mode 100644
index 38cc0d6f8..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/draggablePanel/draggablePanel.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var ui = app.ns("ui");
-
- ui.DraggablePanel = ui.AbstractPanel.extend({
- defaults: {
- // title: "" // (required) text for the panel title
- },
-
- _baseCls: "uiPanel",
-
- init: function() {
- this._super();
- this.body = $(this._body_template());
- this.title = $(this._title_template());
- this.el = $.joey( this._main_template() );
- this.el.css( { width: this.config.width } );
- this.dd = new app.ux.DragDrop({
- pickupSelector: this.el.find(".uiPanel-titleBar"),
- dragObj: this.el
- });
- // open the panel if set in configuration
- this.config.open && this.open();
- },
-
- setBody: function(body) {
- this.body.empty().append(body);
- },
- _body_template: function() { return { tag: "DIV", cls: "uiPanel-body", css: { height: this.config.height + (this.config.height === 'auto' ? "" : "px" ) }, children: [ this.config.body ] }; },
- _title_template: function() { return { tag: "SPAN", cls: "uiPanel-title", text: this.config.title }; },
- _main_template: function() { return (
- { tag: "DIV", id: this.id(), cls: this._baseCls, children: [
- { tag: "DIV", cls: "uiPanel-titleBar", children: [
- { tag: "DIV", cls: "uiPanel-close", onclick: this._close_handler, text: "x" },
- this.title
- ]},
- this.body
- ] }
- ); }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/filterBrowser/filterBrowser.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/filterBrowser/filterBrowser.css
deleted file mode 100644
index d9acccf3b..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/filterBrowser/filterBrowser.css
+++ /dev/null
@@ -1,9 +0,0 @@
-.uiFilterBrowser-row * {
- margin-right: 0.4em;
-}
-
-.uiFilterBrowser-row BUTTON {
- height: 22px;
- position: relative;
- top: 1px;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/filterBrowser/filterBrowser.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/filterBrowser/filterBrowser.js
deleted file mode 100644
index a5f7cb33b..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/filterBrowser/filterBrowser.js
+++ /dev/null
@@ -1,220 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
- var data = app.ns("data");
- var ut = app.ns("ut");
-
- ui.FilterBrowser = ui.AbstractWidget.extend({
- defaults: {
- cluster: null, // (required) instanceof app.services.Cluster
- index: "" // (required) name of the index to query
- },
-
- init: function(parent) {
- this._super();
- this._cluster = this.config.cluster;
- this.el = $(this._main_template());
- this.filtersEl = this.el.find(".uiFilterBrowser-filters");
- this.attach( parent );
- new data.MetaDataFactory({ cluster: this._cluster, onReady: function(metadata, eventData) {
- this.metadata = metadata;
- this._createFilters_handler(eventData.originalData.metadata.indices);
- }.bind(this) });
- },
-
- _createFilters_handler: function(data) {
- var filters = [];
- function scan_properties(path, obj) {
- if (obj.properties) {
- for (var prop in obj.properties) {
- scan_properties(path.concat(prop), obj.properties[prop]);
- }
- } else {
- // handle multi_field
- if (obj.fields) {
- for (var subField in obj.fields) {
- filters.push({ path: (path[path.length - 1] !== subField) ? path.concat(subField) : path, type: obj.fields[subField].type, meta: obj.fields[subField] });
- }
- } else {
- filters.push({ path: path, type: obj.type, meta: obj });
- }
- }
- }
- for(var type in data[this.config.index].mappings) {
- scan_properties([type], data[this.config.index].mappings[type]);
- }
-
- filters.sort( function(a, b) {
- var x = a.path.join(".");
- var y = b.path.join(".");
- return (x < y) ? -1 : (x > y) ? 1 : 0;
- });
-
- this.filters = [
- { path: ["match_all"], type: "match_all", meta: {} },
- { path: ["_all"], type: "_all", meta: {}}
- ].concat(filters);
-
- this._addFilterRow_handler();
- },
-
- _addFilterRow_handler: function() {
- this.filtersEl.append(this._filter_template());
- },
-
- _removeFilterRow_handler: function(jEv) {
- $(jEv.target).closest("DIV.uiFilterBrowser-row").remove();
- if(this.filtersEl.children().length === 0) {
- this._addFilterRow_handler();
- }
- },
-
- _search_handler: function() {
- var search = new data.BoolQuery();
- search.setSize( this.el.find(".uiFilterBrowser-outputSize").val() )
- this.fire("startingSearch");
- this.filtersEl.find(".uiFilterBrowser-row").each(function(i, row) {
- row = $(row);
- var bool = row.find(".bool").val();
- var field = row.find(".field").val();
- var op = row.find(".op").val();
- var value = {};
- if(field === "match_all") {
- op = "match_all";
- } else if(op === "range") {
- var lowqual = row.find(".lowqual").val(),
- highqual = row.find(".highqual").val();
- if(lowqual.length) {
- value[row.find(".lowop").val()] = lowqual;
- }
- if(highqual.length) {
- value[row.find(".highop").val()] = highqual;
- }
- } else if(op === "fuzzy") {
- var qual = row.find(".qual").val(),
- fuzzyqual = row.find(".fuzzyqual").val();
- if(qual.length) {
- value["value"] = qual;
- }
- if(fuzzyqual.length) {
- value[row.find(".fuzzyop").val()] = fuzzyqual;
- }
- } else {
- value = row.find(".qual").val();
- }
- search.addClause(value, field, op, bool);
- });
- if(this.el.find(".uiFilterBrowser-showSrc").attr("checked")) {
- this.fire("searchSource", search.search);
- }
- this._cluster.post( this.config.index + "/_search", search.getData(), this._results_handler );
- },
-
- _results_handler: function( data ) {
- var type = this.el.find(".uiFilterBrowser-outputFormat").val();
- this.fire("results", this, { type: type, data: data, metadata: this.metadata });
- },
-
- _changeQueryField_handler: function(jEv) {
- var select = $(jEv.target);
- var spec = select.children(":selected").data("spec");
- select.siblings().remove(".op,.qual,.range,.fuzzy");
- var ops = [];
- if(spec.type === 'match_all') {
- } else if(spec.type === '_all') {
- ops = ["query_string"];
- } else if(spec.type === 'string' || spec.type === 'text' || spec.type === 'keyword') {
- ops = ["term", "wildcard", "prefix", "fuzzy", "range", "query_string", "text", "missing"];
- } else if(spec.type === 'long' || spec.type === 'integer' || spec.type === 'float' ||
- spec.type === 'byte' || spec.type === 'short' || spec.type === 'double') {
- ops = ["term", "range", "fuzzy", "query_string", "missing"];
- } else if(spec.type === 'date') {
- ops = ["term", "range", "fuzzy", "query_string", "missing"];
- } else if(spec.type === 'geo_point') {
- ops = ["missing"];
- } else if(spec.type === 'ip') {
- ops = ["term", "range", "fuzzy", "query_string", "missing"];
- } else if(spec.type === 'boolean') {
- ops = ["term"]
- }
- select.after({ tag: "SELECT", cls: "op", onchange: this._changeQueryOp_handler, children: ops.map(ut.option_template) });
- select.next().change();
- },
-
- _changeQueryOp_handler: function(jEv) {
- var op = $(jEv.target), opv = op.val();
- op.siblings().remove(".qual,.range,.fuzzy");
- if(opv === 'term' || opv === 'wildcard' || opv === 'prefix' || opv === "query_string" || opv === 'text') {
- op.after({ tag: "INPUT", cls: "qual", type: "text" });
- } else if(opv === 'range') {
- op.after(this._range_template());
- } else if(opv === 'fuzzy') {
- op.after(this._fuzzy_template());
- }
- },
-
- _main_template: function() {
- return { tag: "DIV", children: [
- { tag: "DIV", cls: "uiFilterBrowser-filters" },
- { tag: "BUTTON", type: "button", text: i18n.text("General.Search"), onclick: this._search_handler },
- { tag: "LABEL", children:
- i18n.complex("FilterBrowser.OutputType", { tag: "SELECT", cls: "uiFilterBrowser-outputFormat", children: [
- { text: i18n.text("Output.Table"), value: "table" },
- { text: i18n.text("Output.JSON"), value: "json" },
- { text: i18n.text("Output.CSV"), value: "csv" }
- ].map(function( o ) { return $.extend({ tag: "OPTION" }, o ); } ) } )
- },
- { tag: "LABEL", children:
- i18n.complex("FilterBrowser.OutputSize", { tag: "SELECT", cls: "uiFilterBrowser-outputSize",
- children: [ "10", "50", "250", "1000", "5000", "25000" ].map( ut.option_template )
- } )
- },
- { tag: "LABEL", children: [ { tag: "INPUT", type: "checkbox", cls: "uiFilterBrowser-showSrc" }, i18n.text("Output.ShowSource") ] }
- ]};
- },
-
- _filter_template: function() {
- return { tag: "DIV", cls: "uiFilterBrowser-row", children: [
- { tag: "SELECT", cls: "bool", children: ["must", "must_not", "should"].map(ut.option_template) },
- { tag: "SELECT", cls: "field", onchange: this._changeQueryField_handler, children: this.filters.map(function(f) {
- return { tag: "OPTION", data: { spec: f }, value: f.path.join("."), text: f.path.join(".") };
- })},
- { tag: "BUTTON", type: "button", text: "+", onclick: this._addFilterRow_handler },
- { tag: "BUTTON", type: "button", text: "-", onclick: this._removeFilterRow_handler }
- ]};
- },
-
- _range_template: function() {
- return { tag: "SPAN", cls: "range", children: [
- { tag: "SELECT", cls: "lowop", children: ["gt", "gte"].map(ut.option_template) },
- { tag: "INPUT", type: "text", cls: "lowqual" },
- { tag: "SELECT", cls: "highop", children: ["lt", "lte"].map(ut.option_template) },
- { tag: "INPUT", type: "text", cls: "highqual" }
- ]};
- },
-
- _fuzzy_template: function() {
- return { tag: "SPAN", cls: "fuzzy", children: [
- { tag: "INPUT", cls: "qual", type: "text" },
- { tag: "SELECT", cls: "fuzzyop", children: ["max_expansions", "min_similarity"].map(ut.option_template) },
- { tag: "INPUT", cls: "fuzzyqual", type: "text" }
- ]};
- }
- });
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/header/header.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/header/header.css
deleted file mode 100644
index b61badf12..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/header/header.css
+++ /dev/null
@@ -1,10 +0,0 @@
-.uiHeader {
- padding: 3px 10px;
-}
-
-.uiHeader-name, .uiHeader-status {
- font-size: 1.2em;
- font-weight: bold;
- padding: 0 10px;
-}
-
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/header/header.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/header/header.js
deleted file mode 100644
index 591903bab..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/header/header.js
+++ /dev/null
@@ -1,88 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
-
- ui.Header = ui.AbstractWidget.extend({
- defaults: {
- cluster: null,
- clusterState: null
- },
- _baseCls: "uiHeader",
- init: function() {
- this._clusterConnect = new ui.ClusterConnect({
- cluster: this.config.cluster
- });
- var quicks = [
- { text: i18n.text("Nav.Info"), path: "" },
- { text: i18n.text("Nav.Status"), path: "_stats" },
- { text: i18n.text("Nav.NodeStats"), path: "_nodes/stats" },
- { text: i18n.text("Nav.ClusterNodes"), path: "_nodes" },
- { text: i18n.text("Nav.Plugins"), path: "_nodes/plugins" },
- { text: i18n.text("Nav.ClusterState"), path: "_cluster/state" },
- { text: i18n.text("Nav.ClusterHealth"), path: "_cluster/health" },
- { text: i18n.text("Nav.Templates"), path: "_template" }
- ];
- var cluster = this.config.cluster;
- var quickPanels = {};
- var menuItems = quicks.map( function( item ) {
- return { text: item.text, onclick: function() {
- cluster.get( item.path, function( data ) {
- quickPanels[ item.path ] && quickPanels[ item.path ].el && quickPanels[ item.path ].remove();
- quickPanels[ item.path ] = new ui.JsonPanel({
- title: item.text,
- json: data
- });
- } );
- } };
- }, this );
- this._quickMenu = new ui.MenuButton({
- label: i18n.text("NodeInfoMenu.Title"),
- menu: new ui.MenuPanel({
- items: menuItems
- })
- });
- this.el = $.joey( this._main_template() );
- this.nameEl = this.el.find(".uiHeader-name");
- this.statEl = this.el.find(".uiHeader-status");
- this._clusterState = this.config.clusterState;
- this._clusterState.on("data", function( state ) {
- var shards = state.status._shards;
- var colour = state.clusterHealth.status;
- var name = state.clusterState.cluster_name;
- this.nameEl.text( name );
- this.statEl
- .text( i18n.text("Header.ClusterHealth", colour, shards.successful, shards.total ) )
- .css( "background", colour );
- }.bind(this));
- this.statEl.text( i18n.text("Header.ClusterNotConnected") ).css("background", "grey");
- this._clusterState.refresh();
- },
- _main_template: function() { return (
- { tag: "DIV", cls: this._baseCls, children: [
- this._clusterConnect,
- { tag: "SPAN", cls: "uiHeader-name" },
- { tag: "SPAN", cls: "uiHeader-status" },
- { tag: "H1", text: i18n.text("General.Elasticsearch") },
- { tag: "SPAN", cls: "pull-right", children: [
- this._quickMenu
- ] }
- ] }
- ); }
- } );
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/helpPanel/helpPanel.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/helpPanel/helpPanel.js
deleted file mode 100644
index 91f5c116d..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/helpPanel/helpPanel.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ){
-
- var ui = app.ns("ui");
-
- ui.HelpPanel = ui.InfoPanel.extend({
- defaults: {
- ref: "",
- open: true,
- autoRemove: true,
- modal: false,
- width: 500,
- height: 450,
- title: i18n.text("General.Help")
- },
- init: function() {
- this._super();
- this.body.append(i18n.text(this.config.ref));
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/indexOverview/indexOverview.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/indexOverview/indexOverview.js
deleted file mode 100644
index bfccdf97c..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/indexOverview/indexOverview.js
+++ /dev/null
@@ -1,130 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
- var ut = app.ns("ut");
-
- ui.IndexOverview = ui.Page.extend({
- defaults: {
- cluster: null
- },
- init: function() {
- this._super();
- this.cluster = this.config.cluster;
- this._clusterState = this.config.clusterState;
- this._clusterState.on("data", this._refresh_handler );
- this.el = $(this._main_template());
- this._refresh_handler();
- },
- remove: function() {
- this._clusterState.removeObserver( "data", this._refresh_handler );
- },
- _refresh_handler: function() {
- var state = this._clusterState;
- var view = {
- indices: acx.eachMap( state.status.indices, function( name, index ) {
- return {
- name: name,
- state: index
- };
- }).sort( function( a, b ) {
- return a.name < b.name ? -1 : 1;
- })
- };
- this._indexViewEl && this._indexViewEl.remove();
- this._indexViewEl = $( this._indexTable_template( view ) );
- this.el.find(".uiIndexOverview-table").append( this._indexViewEl );
- },
- _newIndex_handler: function() {
- var fields = new app.ux.FieldCollection({
- fields: [
- new ui.TextField({ label: i18n.text("ClusterOverView.IndexName"), name: "_name", require: true }),
- new ui.TextField({
- label: i18n.text("ClusterOverview.NumShards"),
- name: "number_of_shards",
- value: "5",
- require: function( val ) { return parseInt( val, 10 ) >= 1; }
- }),
- new ui.TextField({
- label: i18n.text("ClusterOverview.NumReplicas"),
- name: "number_of_replicas",
- value: "1",
- require: function( val ) { return parseInt( val, 10 ) >= 0; }
- })
- ]
- });
- var dialog = new ui.DialogPanel({
- title: i18n.text("ClusterOverview.NewIndex"),
- body: new ui.PanelForm({ fields: fields }),
- onCommit: function(panel, args) {
- if(fields.validate()) {
- var data = fields.getData();
- var name = data["_name"];
- delete data["_name"];
- this.config.cluster.put( encodeURIComponent( name ), JSON.stringify({ settings: { index: data } }), function(d) {
- dialog.close();
- alert(JSON.stringify(d));
- this._clusterState.refresh();
- }.bind(this) );
- }
- }.bind(this)
- }).open();
- },
- _indexTable_template: function( view ) { return (
- { tag: "TABLE", cls: "table", children: [
- { tag: "THEAD", children: [
- { tag: "TR", children: [
- { tag: "TH" },
- { tag: "TH", children: [
- { tag: "H3", text: "Size" }
- ] },
- { tag: "TH", children: [
- { tag: "H3", text: "Docs" }
- ] }
- ] }
- ] },
- { tag: "TBODY", cls: "striped", children: view.indices.map( this._index_template, this ) }
- ] }
- ); },
-
- _index_template: function( index ) { return (
- { tag: "TR", children: [
- { tag: "TD", children: [
- { tag: "H3", text: index.name }
- ] },
- { tag: "TD", text: ut.byteSize_template( index.state.primaries.store.size_in_bytes ) + "/" + ut.byteSize_template( index.state.total.store.size_in_bytes ) },
- { tag: "TD", text: ut.count_template( index.state.primaries.docs.count ) }
- ] }
- ); },
- _main_template: function() {
- return { tag: "DIV", id: this.id(), cls: "uiIndexOverview", children: [
- new ui.Toolbar({
- label: i18n.text("IndexOverview.PageTitle"),
- left: [
- new ui.Button({
- label: i18n.text("ClusterOverview.NewIndex"),
- onclick: this._newIndex_handler
- }),
- ]
- }),
- { tag: "DIV", cls: "uiIndexOverview-table", children: this._indexViewEl }
- ] };
- }
-
- });
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/indexSelector/indexSelector.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/indexSelector/indexSelector.js
deleted file mode 100644
index 85743ec74..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/indexSelector/indexSelector.js
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
-
- ui.IndexSelector = ui.AbstractWidget.extend({
- init: function(parent) {
- this._super();
- this.el = $(this._main_template());
- this.attach( parent );
- this.cluster = this.config.cluster;
- this.update();
- },
- update: function() {
- this.cluster.get( "_stats", this._update_handler );
- },
-
- _update_handler: function(data) {
- var options = [];
- var index_names = Object.keys(data.indices).sort();
- for(var i=0; i < index_names.length; i++) {
- name = index_names[i];
- options.push(this._option_template(name, data.indices[name]));
- }
- this.el.find(".uiIndexSelector-select").empty().append(this._select_template(options));
- this._indexChanged_handler();
- },
-
- _main_template: function() {
- return { tag: "DIV", cls: "uiIndexSelector", children: i18n.complex( "IndexSelector.SearchIndexForDocs", { tag: "SPAN", cls: "uiIndexSelector-select" } ) };
- },
-
- _indexChanged_handler: function() {
- this.fire("indexChanged", this.el.find("SELECT").val());
- },
-
- _select_template: function(options) {
- return { tag: "SELECT", children: options, onChange: this._indexChanged_handler };
- },
-
- _option_template: function(name, index) {
- return { tag: "OPTION", value: name, text: i18n.text("IndexSelector.NameWithDocs", name, index.primaries.docs.count ) };
- }
- });
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/infoPanel/infoPanel.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/infoPanel/infoPanel.css
deleted file mode 100644
index 7d4a86c79..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/infoPanel/infoPanel.css
+++ /dev/null
@@ -1,38 +0,0 @@
-
-.uiInfoPanel {
- background: rgba(0, 0, 0, 0.75);
- color: white;
- border-radius: 8px;
- padding: 1px;
-}
-.uiInfoPanel .uiPanel-titleBar {
- background: rgba(74, 74, 74, 0.75);
- background: -moz-linear-gradient(top, rgba(84, 84, 84, 0.75), rgba(54, 54, 54, 0.75), rgba(64, 64, 64, 0.75));
- background: -webkit-linear-gradient(top, rgba(84, 84, 84, 0.75), rgba(54, 54, 54, 0.75), rgba(64, 64, 64, 0.75));
- border-radius: 8px 8px 0 0;
- padding: 1px 0 2px 0;
- border-bottom: 0;
-}
-.uiInfoPanel .uiPanel-close {
- border-radius: 6px;
- height: 13px;
- width: 13px;
- background: #ccc;
- left: 3px;
- top: 1px;
- color: #333;
- text-shadow: #222 0 0 1px;
- line-height: 11px;
- border: 0;
- padding: 0;
-}
-.uiInfoPanel .uiPanel-close:hover {
- background: #eee;
-}
-
-.uiInfoPanel .uiPanel-body {
- background: transparent;
- padding: 20px;
- border-radius: 0 0 8px 8px;
- border: 1px solid #222;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/infoPanel/infoPanel.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/infoPanel/infoPanel.js
deleted file mode 100644
index 9228fca1d..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/infoPanel/infoPanel.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ui = app.ns("ui");
-
- ui.InfoPanel = ui.DraggablePanel.extend({
- _baseCls: "uiPanel uiInfoPanel"
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPanel/jsonPanel.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPanel/jsonPanel.css
deleted file mode 100644
index 20aff8817..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPanel/jsonPanel.css
+++ /dev/null
@@ -1,4 +0,0 @@
-.uiJsonPanel SPAN.uiJsonPretty-string { color: #6F6; }
-.uiJsonPanel SPAN.uiJsonPretty-number { color: #66F; }
-.uiJsonPanel SPAN.uiJsonPretty-null { color: #F66; }
-.uiJsonPanel SPAN.uiJsonPretty-boolean { color: #F6F; }
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPanel/jsonPanel.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPanel/jsonPanel.js
deleted file mode 100644
index 040685997..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPanel/jsonPanel.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ui = app.ns("ui");
-
- ui.JsonPanel = ui.InfoPanel.extend({
- defaults: {
- json: null, // (required)
- modal: false,
- open: true,
- autoRemove: true,
- height: 500,
- width: 600
- },
-
- _baseCls: "uiPanel uiInfoPanel uiJsonPanel",
-
- _body_template: function() {
- var body = this._super();
- body.children = [ new ui.JsonPretty({ obj: this.config.json }) ];
- return body;
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPretty/jsonPretty.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPretty/jsonPretty.css
deleted file mode 100644
index 7a1a0ba62..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPretty/jsonPretty.css
+++ /dev/null
@@ -1,22 +0,0 @@
-DIV.uiJsonPretty-object { font-size: 1.26em; font-family: monospace; }
-UL.uiJsonPretty-object,
-UL.uiJsonPretty-array { margin: 0; padding: 0 0 0 2em; list-style: none; }
-UL.uiJsonPretty-object LI,
-UL.uiJsonPretty-array LI { padding: 0; margin: 0; }
-.expando > SPAN.uiJsonPretty-name:before { content: "\25bc\a0"; color: #555; position: relative; top: 2px; }
-.expando.uiJsonPretty-minimised > SPAN.uiJsonPretty-name:before { content: "\25ba\a0"; top: 0; }
-.uiJsonPretty-minimised > UL SPAN.uiJsonPretty-name:before,
-.expando .uiJsonPretty-minimised > UL SPAN.uiJsonPretty-name:before { content: ""; }
-SPAN.uiJsonPretty-string,
-SPAN.uiJsonPretty-string A { color: green; }
-SPAN.uiJsonPretty-string A { text-decoration: underline;}
-SPAN.uiJsonPretty-number { color: blue; }
-SPAN.uiJsonPretty-null { color: red; }
-SPAN.uiJsonPretty-boolean { color: purple; }
-.expando > .uiJsonPretty-name { cursor: pointer; }
-.expando > .uiJsonPretty-name:hover { text-decoration: underline; }
-.uiJsonPretty-minimised { white-space: nowrap; overflow: hidden; }
-.uiJsonPretty-minimised > UL { opacity: 0.6; }
-.uiJsonPretty-minimised .uiJsonPretty-minimised > UL { opacity: 1; }
-.uiJsonPretty-minimised UL, .uiJsonPretty-minimised LI { display: inline; padding: 0; }
-
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPretty/jsonPretty.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPretty/jsonPretty.js
deleted file mode 100644
index f48247938..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/jsonPretty/jsonPretty.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var ui = app.ns("ui");
-
- ui.JsonPretty = ui.AbstractWidget.extend({
- defaults: {
- obj: null
- },
- init: function(parent) {
- this._super();
- this.el = $(this._main_template());
- this.attach(parent);
- this.el.click(this._click_handler);
- },
-
- _click_handler: function(jEv) {
- var t = $(jEv.target).closest(".uiJsonPretty-name").closest("LI");
- if(t.length === 0 || t.parents(".uiJsonPretty-minimised").length > 0) { return; }
- t.toggleClass("uiJsonPretty-minimised");
- jEv.stopPropagation();
- },
-
- _main_template: function() {
- try {
- return { tag: "DIV", cls: "uiJsonPretty", children: this.pretty.parse(this.config.obj) };
- } catch (error) {
- throw "JsonPretty error: " + error.message;
- }
- },
-
- pretty: { // from https://github.com/RyanAmos/Pretty-JSON/blob/master/pretty_json.js
- "expando" : function(value) {
- return (value && (/array|object/i).test(value.constructor.name)) ? "expando" : "";
- },
- "parse": function (member) {
- return this[(member == null) ? 'null' : member.constructor.name.toLowerCase()](member);
- },
- "null": function (value) {
- return this['value']('null', 'null');
- },
- "array": function (value) {
- var results = [];
- var lastItem = value.length - 1;
- value.forEach(function( v, i ) {
- results.push({ tag: "LI", cls: this.expando(v), children: [ this['parse'](v) ] });
- if( i !== lastItem ) {
- results.push(",");
- }
- }, this);
- return [ "[ ", ((results.length > 0) ? { tag: "UL", cls: "uiJsonPretty-array", children: results } : null), "]" ];
- },
- "object": function (value) {
- var results = [];
- var keys = Object.keys( value );
- var lastItem = keys.length - 1;
- keys.forEach( function( key, i ) {
- var children = [ this['value']( 'name', '"' + key + '"' ), ": ", this['parse']( value[ key ]) ];
- if( i !== lastItem ) {
- children.push(",");
- }
- results.push( { tag: "LI", cls: this.expando( value[ key ] ), children: children } );
- }, this);
- return [ "{ ", ((results.length > 0) ? { tag: "UL", cls: "uiJsonPretty-object", children: results } : null ), "}" ];
- },
- "number": function (value) {
- return this['value']('number', value.toString());
- },
- "string": function (value) {
- if (/^(http|https|file):\/\/[^\s]+$/.test(value)) {
- return this['link']( value );
- } else {
- return this['value']('string', '"' + value.toString() + '"');
- }
- },
- "boolean": function (value) {
- return this['value']('boolean', value.toString());
- },
- "link": function( value ) {
- return this['value']("string", { tag: "A", href: value, target: "_blank", text: '"' + value + '"' } );
- },
- "value": function (type, value) {
- if (/^(http|https|file):\/\/[^\s]+$/.test(value)) {
- }
- return { tag: "SPAN", cls: "uiJsonPretty-" + type, text: value };
- }
- }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuButton/menuButton.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuButton/menuButton.css
deleted file mode 100644
index 21c36bc59..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuButton/menuButton.css
+++ /dev/null
@@ -1,11 +0,0 @@
-.uiMenuButton {
- display: inline-block;
-}
-
-.uiMenuButton .uiButton-label {
- background-image: url('data:image/gif;base64,R0lGODlhDwAPAIABAP///////yH5BAEAAAEALAAAAAAPAA8AAAITjI+py+0P4wG0gmavq1HLD4ZiAQA7');
- background-position: right 50%;
- background-repeat: no-repeat;
- padding-right: 17px;
- text-align: left;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuButton/menuButton.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuButton/menuButton.js
deleted file mode 100644
index a5c18ff23..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuButton/menuButton.js
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var ui = app.ns("ui");
-
- ui.MenuButton = app.ui.Button.extend({
- defaults: {
- menu: null
- },
- _baseCls: "uiButton uiMenuButton",
- init: function(parent) {
- this._super(parent);
- this.menu = this.config.menu;
- this.on("click", this.openMenu_handler);
- this.menu.on("open", function() { this.el.addClass("active"); }.bind(this));
- this.menu.on("close", function() { this.el.removeClass("active"); }.bind(this));
- },
- openMenu_handler: function(jEv) {
- this.menu && this.menu.open(jEv);
- }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuPanel/menuPanel.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuPanel/menuPanel.css
deleted file mode 100644
index 8236a856f..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuPanel/menuPanel.css
+++ /dev/null
@@ -1,30 +0,0 @@
-.uiMenuPanel {
- border: 1px solid #668dc6;
- position: absolute;
- background: #96c6eb;
- color: white;
-}
-
-.uiMenuPanel LI {
- list-style: none;
- border-bottom: 1px solid #668dc6;
-}
-
-.uiMenuPanel LI:hover {
- background: #2575b7;
-}
-
-.uiMenuPanel LI:last-child {
- border-bottom: 0;
-}
-
-.uiMenuPanel-label {
- white-space: nowrap;
- padding: 2px 10px 2px 10px;
- cursor: pointer;
-}
-
-.disabled .uiMenuPanel-label {
- cursor: auto;
- color: #888;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuPanel/menuPanel.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuPanel/menuPanel.js
deleted file mode 100644
index 6fc13e8d2..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/menuPanel/menuPanel.js
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ui = app.ns("ui");
-
- ui.MenuPanel = ui.AbstractPanel.extend({
- defaults: {
- items: [], // (required) an array of menu items
- modal: false
- },
- _baseCls: "uiMenuPanel",
- init: function() {
- this._super();
- this.el = $(this._main_template());
- },
- open: function(jEv) {
- this._super(jEv);
- var cx = this; setTimeout(function() { $(document).bind("click", cx._close_handler); }, 50);
- },
- _getItems: function() {
- return this.config.items;
- },
- _close_handler: function(jEv) {
- this._super(jEv);
- $(document).unbind("click", this._close_handler);
- },
- _main_template: function() {
- return { tag: "DIV", cls: this._baseCls, children: this._getItems().map(this._menuItem_template, this) };
- },
- _menuItem_template: function(item) {
- var dx = item.disabled ? { onclick: function() {} } : {};
- return { tag: "LI", cls: "uiMenuPanel-item" + (item.disabled ? " disabled" : "") + (item.selected ? " selected" : ""), children: [ $.extend({ tag: "DIV", cls: "uiMenuPanel-label" }, item, dx ) ] };
- },
- _getPosition: function(jEv) {
- var right = !! $(jEv.target).parents(".pull-right").length;
- var parent = $(jEv.target).closest("BUTTON");
- return parent.vOffset()
- .addY(parent.vSize().y)
- .addX( right ? parent.vSize().x - this.el.vOuterSize().x : 0 )
- .asOffset();
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesView.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesView.css
deleted file mode 100644
index e7a7778f3..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesView.css
+++ /dev/null
@@ -1,88 +0,0 @@
-.uiNodesView TH,
-.uiNodesView TD {
- vertical-align: top;
- padding: 2px 20px;
-}
-
-.uiNodesView TH.close,
-.uiNodesView TD.close {
- color: #888;
- background: #f2f2f2;
-}
-
-.uiNodesView .uiMenuButton .uiButton-content {
- padding-right: 3px;
- border-radius: 8px;
- height: 14px;
-}
-
-.uiNodesView .uiMenuButton.active .uiButton-content,
-.uiNodesView .uiMenuButton:active .uiButton-content {
- border-bottom-right-radius: 0px;
- border-bottom-left-radius: 0px;
-}
-
-.uiNodesView .uiMenuButton .uiButton-label {
- padding: 0px 17px 0px 7px;
-}
-
-.uiNodesView-hasAlias {
- text-align: center;
-}
-.uiNodesView-hasAlias.max {
- border-top-right-radius: 8px;
- border-bottom-right-radius: 8px;
-}
-.uiNodesView-hasAlias.min {
- border-top-left-radius: 8px;
- border-bottom-left-radius: 8px;
-}
-.uiNodesView-hasAlias-remove {
- float: right;
- font-weight: bold;
- cursor: pointer;
-}
-
-.uiNodesView TD.uiNodesView-icon {
- padding: 20px 0px 15px 20px;
-}
-
-.uiNodesView-node:nth-child(odd) {
- background: #eee;
-}
-
-.uiNodesView-routing {
- position: relative;
- min-width: 90px;
-}
-
-.uiNodesView-nullReplica,
-.uiNodesView-replica {
- box-sizing: border-box;
- cursor: pointer;
- float: left;
- height: 40px;
- width: 35px;
- margin: 4px;
- border: 2px solid #444;
- padding: 2px;
- font-size: 32px;
- line-height: 32px;
- text-align: center;
- letter-spacing: -5px;
- text-indent: -7px;
-}
-
-.uiNodesView-replica.primary {
- border-width: 4px;
- line-height: 29px;
-}
-
-.uiNodesView-nullReplica {
- border-color: transparent;
-}
-
-.uiNodesView-replica.state-UNASSIGNED { background: #eeeeee; color: #999; border-color: #666; float: none; display: inline-block; }
-.uiNodesView-replica.state-INITIALIZING { background: #dddc88; }
-.uiNodesView-replica.state-STARTED { background: #99dd88; }
-.uiNodesView-replica.state-RELOCATING { background: #dc88dd; }
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesView.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesView.js
deleted file mode 100644
index 17877adba..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesView.js
+++ /dev/null
@@ -1,292 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app, i18n, joey ) {
-
- var ui = app.ns("ui");
- var ut = app.ns("ut");
-
- ui.NodesView = ui.AbstractWidget.extend({
- defaults: {
- interactive: true,
- aliasRenderer: "list",
- scaleReplicas: 1,
- cluster: null,
- data: null
- },
- init: function() {
- this._super();
- this.interactive = this.config.interactive;
- this.cluster = this.config.cluster;
- this._aliasRenderFunction = {
- "none": this._aliasRender_template_none,
- "list": this._aliasRender_template_list,
- "full": this._aliasRender_template_full
- }[ this.config.aliasRenderer ];
- this._styleSheetEl = joey({ tag: "STYLE", text: ".uiNodesView-nullReplica, .uiNodesView-replica { zoom: " + this.config.scaleReplicas + " }" });
- this.el = $( this._main_template( this.config.data.cluster, this.config.data.indices ) );
- },
-
- _newAliasAction_handler: function( index ) {
- var fields = new app.ux.FieldCollection({
- fields: [
- new ui.TextField({ label: i18n.text("AliasForm.AliasName"), name: "alias", require: true })
- ]
- });
- var dialog = new ui.DialogPanel({
- title: i18n.text("AliasForm.NewAliasForIndexName", index.name),
- body: new ui.PanelForm({ fields: fields }),
- onCommit: function(panel, args) {
- if(fields.validate()) {
- var data = fields.getData();
- var command = {
- "actions" : [
- { "add" : { "index" : index.name, "alias" : data["alias"] } }
- ]
- };
- this.config.cluster.post('_aliases', JSON.stringify(command), function(d) {
- dialog.close();
- alert(JSON.stringify(d));
- this.fire("redraw");
- }.bind(this) );
- }
- }.bind(this)
- }).open();
- },
- _postIndexAction_handler: function(action, index, redraw) {
- this.cluster.post(encodeURIComponent( index.name ) + "/" + encodeURIComponent( action ), null, function(r) {
- alert(JSON.stringify(r));
- redraw && this.fire("redraw");
- }.bind(this));
- },
- _optimizeIndex_handler: function(index) {
- var fields = new app.ux.FieldCollection({
- fields: [
- new ui.TextField({ label: i18n.text("OptimizeForm.MaxSegments"), name: "max_num_segments", value: "1", require: true }),
- new ui.CheckField({ label: i18n.text("OptimizeForm.ExpungeDeletes"), name: "only_expunge_deletes", value: false }),
- new ui.CheckField({ label: i18n.text("OptimizeForm.FlushAfter"), name: "flush", value: true }),
- new ui.CheckField({ label: i18n.text("OptimizeForm.WaitForMerge"), name: "wait_for_merge", value: false })
- ]
- });
- var dialog = new ui.DialogPanel({
- title: i18n.text("OptimizeForm.OptimizeIndex", index.name),
- body: new ui.PanelForm({ fields: fields }),
- onCommit: function( panel, args ) {
- if(fields.validate()) {
- this.cluster.post(encodeURIComponent( index.name ) + "/_optimize", fields.getData(), function(r) {
- alert(JSON.stringify(r));
- });
- dialog.close();
- }
- }.bind(this)
- }).open();
- },
- _testAnalyser_handler: function(index) {
- this.cluster.get(encodeURIComponent( index.name ) + "/_analyze?text=" + encodeURIComponent( prompt( i18n.text("IndexCommand.TextToAnalyze") ) ), function(r) {
- alert(JSON.stringify(r, true, " "));
- });
- },
- _deleteIndexAction_handler: function(index) {
- if( prompt( i18n.text("AliasForm.DeleteAliasMessage", i18n.text("Command.DELETE"), index.name ) ) === i18n.text("Command.DELETE") ) {
- this.cluster["delete"](encodeURIComponent( index.name ), null, function(r) {
- alert(JSON.stringify(r));
- this.fire("redraw");
- }.bind(this) );
- }
- },
- _shutdownNode_handler: function(node) {
- if(prompt( i18n.text("IndexCommand.ShutdownMessage", i18n.text("Command.SHUTDOWN"), node.cluster.name ) ) === i18n.text("Command.SHUTDOWN") ) {
- this.cluster.post( "_cluster/nodes/" + encodeURIComponent( node.name ) + "/_shutdown", null, function(r) {
- alert(JSON.stringify(r));
- this.fire("redraw");
- }.bind(this));
- }
- },
- _deleteAliasAction_handler: function( index, alias ) {
- if( confirm( i18n.text("Command.DeleteAliasMessage" ) ) ) {
- var command = {
- "actions" : [
- { "remove" : { "index" : index.name, "alias" : alias.name } }
- ]
- };
- this.config.cluster.post('_aliases', JSON.stringify(command), function(d) {
- alert(JSON.stringify(d));
- this.fire("redraw");
- }.bind(this) );
- }
- },
-
- _replica_template: function(replica) {
- var r = replica.replica;
- return { tag: "DIV",
- cls: "uiNodesView-replica" + (r.primary ? " primary" : "") + ( " state-" + r.state ),
- text: r.shard.toString(),
- onclick: function() { new ui.JsonPanel({
- json: replica.status || r,
- title: r.index + "/" + r.node + " [" + r.shard + "]" });
- }
- };
- },
- _routing_template: function(routing) {
- var cell = { tag: "TD", cls: "uiNodesView-routing" + (routing.open ? "" : " close"), children: [] };
- for(var i = 0; i < routing.replicas.length; i++) {
- if(i % routing.max_number_of_shards === 0 && i > 0) {
- cell.children.push({ tag: "BR" });
- }
- if( routing.replicas[i] ) {
- cell.children.push(this._replica_template(routing.replicas[i]));
- } else {
- cell.children.push( { tag: "DIV", cls: "uiNodesView-nullReplica" } );
- }
- }
- return cell;
- },
- _nodeControls_template: function( node ) { return (
- { tag: "DIV", cls: "uiNodesView-controls", children: [
- new ui.MenuButton({
- label: i18n.text("NodeInfoMenu.Title"),
- menu: new ui.MenuPanel({
- items: [
- { text: i18n.text("NodeInfoMenu.ClusterNodeInfo"), onclick: function() { new ui.JsonPanel({ json: node.cluster, title: node.name });} },
- { text: i18n.text("NodeInfoMenu.NodeStats"), onclick: function() { new ui.JsonPanel({ json: node.stats, title: node.name });} }
- ]
- })
- }),
- new ui.MenuButton({
- label: i18n.text("NodeActionsMenu.Title"),
- menu: new ui.MenuPanel({
- items: [
- { text: i18n.text("NodeActionsMenu.Shutdown"), onclick: function() { this._shutdownNode_handler(node); }.bind(this) }
- ]
- })
- })
- ] }
- ); },
- _nodeIcon_template: function( node ) {
- var icon, alt;
- if( node.name === "Unassigned" ) {
- icon = "fa-exclamation-triangle";
- alt = i18n.text( "NodeType.Unassigned" );
- } else if( node.cluster.settings && "tribe" in node.cluster.settings) {
- icon = "fa-sitemap";
- alt = i18n.text("NodeType.Tribe" );
- } else {
- icon = "fa-" + (node.master_node ? "star" : "circle") + (node.data_node ? "" : "-o" );
- alt = i18n.text( node.master_node ? ( node.data_node ? "NodeType.Master" : "NodeType.Coord" ) : ( node.data_node ? "NodeType.Worker" : "NodeType.Client" ) );
- }
- return { tag: "TD", title: alt, cls: "uiNodesView-icon", children: [
- { tag: "SPAN", cls: "fa fa-2x " + icon }
- ] };
- },
- _node_template: function(node) {
- return { tag: "TR", cls: "uiNodesView-node" + (node.master_node ? " master": ""), children: [
- this._nodeIcon_template( node ),
- { tag: "TH", children: node.name === "Unassigned" ? [
- { tag: "H3", text: node.name }
- ] : [
- { tag: "H3", text: node.cluster.name },
- { tag: "DIV", text: node.cluster.hostname },
- this.interactive ? this._nodeControls_template( node ) : null
- ] }
- ].concat(node.routings.map(this._routing_template, this))};
- },
- _indexHeaderControls_template: function( index ) { return (
- { tag: "DIV", cls: "uiNodesView-controls", children: [
- new ui.MenuButton({
- label: i18n.text("IndexInfoMenu.Title"),
- menu: new ui.MenuPanel({
- items: [
- { text: i18n.text("IndexInfoMenu.Status"), onclick: function() { new ui.JsonPanel({ json: index.status, title: index.name }); } },
- { text: i18n.text("IndexInfoMenu.Metadata"), onclick: function() { new ui.JsonPanel({ json: index.metadata, title: index.name }); } }
- ]
- })
- }),
- new ui.MenuButton({
- label: i18n.text("IndexActionsMenu.Title"),
- menu: new ui.MenuPanel({
- items: [
- { text: i18n.text("IndexActionsMenu.NewAlias"), onclick: function() { this._newAliasAction_handler(index); }.bind(this) },
- { text: i18n.text("IndexActionsMenu.Refresh"), onclick: function() { this._postIndexAction_handler("_refresh", index, false); }.bind(this) },
- { text: i18n.text("IndexActionsMenu.Flush"), onclick: function() { this._postIndexAction_handler("_flush", index, false); }.bind(this) },
- { text: i18n.text("IndexActionsMenu.Optimize"), onclick: function () { this._optimizeIndex_handler(index); }.bind(this) },
- { text: i18n.text("IndexActionsMenu.Snapshot"), disabled: closed, onclick: function() { this._postIndexAction_handler("_gateway/snapshot", index, false); }.bind(this) },
- { text: i18n.text("IndexActionsMenu.Analyser"), onclick: function() { this._testAnalyser_handler(index); }.bind(this) },
- { text: (index.state === "close") ? i18n.text("IndexActionsMenu.Open") : i18n.text("IndexActionsMenu.Close"), onclick: function() { this._postIndexAction_handler((index.state === "close") ? "_open" : "_close", index, true); }.bind(this) },
- { text: i18n.text("IndexActionsMenu.Delete"), onclick: function() { this._deleteIndexAction_handler(index); }.bind(this) }
- ]
- })
- })
- ] }
- ); },
- _indexHeader_template: function( index ) {
- var closed = index.state === "close";
- var line1 = closed ? "index: close" : ( "size: " + (index.status && index.status.primaries && index.status.total ? ut.byteSize_template( index.status.primaries.store.size_in_bytes ) + " (" + ut.byteSize_template( index.status.total.store.size_in_bytes ) + ")" : "unknown" ) );
- var line2 = closed ? "\u00A0" : ( "docs: " + (index.status && index.status.primaries && index.status.primaries.docs && index.status.total && index.status.total.docs ? index.status.primaries.docs.count.toLocaleString() + " (" + (index.status.total.docs.count + index.status.total.docs.deleted).toLocaleString() + ")" : "unknown" ) );
- return index.name ? { tag: "TH", cls: (closed ? "close" : ""), children: [
- { tag: "H3", text: index.name },
- { tag: "DIV", text: line1 },
- { tag: "DIV", text: line2 },
- this.interactive ? this._indexHeaderControls_template( index ) : null
- ] } : [ { tag: "TD" }, { tag: "TH" } ];
- },
- _aliasRender_template_none: function( cluster, indices ) {
- return null;
- },
- _aliasRender_template_list: function( cluster, indices ) {
- return cluster.aliases.length && { tag: "TBODY", children: [
- { tag: "TR", children: [
- { tag: "TD" }
- ].concat( indices.map( function( index ) {
- return { tag: "TD", children: index.metadata && index.metadata.aliases.map( function( alias ) {
- return { tag: "LI", text: alias };
- } ) };
- })) }
- ] };
- },
- _aliasRender_template_full: function( cluster, indices ) {
- return cluster.aliases.length && { tag: "TBODY", children: cluster.aliases.map( function(alias, row) {
- return { tag: "TR", children: [ { tag: "TD" },{ tag: "TD" } ].concat(alias.indices.map(function(index, i) {
- if (index) {
- return {
- tag: "TD",
- css: { background: "#" + "9ce9c7fc9".substr((row+6)%7,3) },
- cls: "uiNodesView-hasAlias" + ( alias.min === i ? " min" : "" ) + ( alias.max === i ? " max" : "" ),
- text: alias.name,
- children: this.interactive ? [
- { tag: 'SPAN',
- text: i18n.text("General.CloseGlyph"),
- cls: 'uiNodesView-hasAlias-remove',
- onclick: this._deleteAliasAction_handler.bind( this, index, alias )
- }
- ]: null
- };
- } else {
- return { tag: "TD" };
- }
- }, this ) ) };
- }, this ) };
- },
- _main_template: function(cluster, indices) {
- return { tag: "TABLE", cls: "table uiNodesView", children: [
- this._styleSheetEl,
- { tag: "THEAD", children: [ { tag: "TR", children: indices.map(this._indexHeader_template, this) } ] },
- this._aliasRenderFunction( cluster, indices ),
- { tag: "TBODY", children: cluster.nodes.map(this._node_template, this) }
- ] };
- }
-
- });
-
-})( this.app, this.i18n, this.joey );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesViewDemo.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesViewDemo.js
deleted file mode 100644
index c52e4da80..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/nodesView/nodesViewDemo.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-$( function() {
-
- var ui = window.app.ns("ui");
-
- var data = {
- "cluster":{"nodes":[{"name":"cqTmT9GLSlSWx-B7pvM--w","routings":[{"name":"_river","replicas":[],"max_number_of_shards":"1","open":true},{"name":"ag_01","replicas":[null,{"replica":{"state":"STARTED","primary":true,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_01"},"status":{"routing":{"state":"STARTED","primary":true,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_01"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731712637,"operations":0},"docs":{"num_docs":10328420,"max_doc":10329720,"deleted_docs":4},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"643ms","total_time_in_millis":643}}}],"max_number_of_shards":"2","open":true},{"name":"ag_02","replicas":[null,{"replica":{"state":"STARTED","primary":false,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_02"},"status":{"routing":{"state":"STARTED","primary":false,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_02"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381749663385,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"75ms","total_time_in_millis":75}}}],"max_number_of_shards":"3","open":true},{"name":"ag_03","replicas":[null,{"replica":{"state":"STARTED","primary":true,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_03"},"status":{"routing":{"state":"STARTED","primary":true,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_03"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731770058,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"86ms","total_time_in_millis":86}}}],"max_number_of_shards":"2","open":true},{"name":"twitter_river","replicas":[],"max_number_of_shards":"5","open":false}],"master_node":false,"stats":{"timestamp":1381790346979,"name":"Elathan","transport_address":"inet[/127.0.0.1:9301]","hostname":"server","indices":{"docs":{"count":0,"deleted":0},"store":{"size":"277b","size_in_bytes":277,"throttle_time":"0s","throttle_time_in_millis":0},"indexing":{"index_total":0,"index_time":"0s","index_time_in_millis":0,"index_current":0,"delete_total":0,"delete_time":"0s","delete_time_in_millis":0,"delete_current":0},"get":{"total":0,"get_time":"0s","time_in_millis":0,"exists_total":0,"exists_time":"0s","exists_time_in_millis":0,"missing_total":0,"missing_time":"0s","missing_time_in_millis":0,"current":0},"search":{"open_contexts":0,"query_total":6,"query_time":"19ms","query_time_in_millis":19,"query_current":0,"fetch_total":0,"fetch_time":"0s","fetch_time_in_millis":0,"fetch_current":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":10,"total_time":"0s","total_time_in_millis":0},"flush":{"total":186,"total_time":"9.1s","total_time_in_millis":9191},"warmer":{"current":0,"total":3,"total_time":"6ms","total_time_in_millis":6},"filter_cache":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"id_cache":{"memory_size":"0b","memory_size_in_bytes":0},"fielddata":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"completion":{"size":"0b","size_in_bytes":0}},"os":{"timestamp":1381790346979,"uptime":"15.5m","uptime_in_millis":932146,"load_average":[1.79736328125,1.95166015625,1.904296875],"cpu":{"sys":22,"user":6,"idle":70,"stolen":0},"mem":{"free":"3.7gb","free_in_bytes":4065169408,"used":"4.2gb","used_in_bytes":4524765184,"free_percent":51,"used_percent":48,"actual_free":"4.1gb","actual_free_in_bytes":4426321920,"actual_used":"3.8gb","actual_used_in_bytes":4163612672},"swap":{"used":"2.8gb","used_in_bytes":3025272832,"free":"1.1gb","free_in_bytes":1269694464}},"process":{"timestamp":1381790346979,"open_file_descriptors":266,"cpu":{"percent":0,"sys":"2.8m","sys_in_millis":172614,"user":"2.3m","user_in_millis":142295,"total":"5.2m","total_in_millis":314909},"mem":{"resident":"21.6mb","resident_in_bytes":22728704,"share":"-1b","share_in_bytes":-1,"total_virtual":"3.6gb","total_virtual_in_bytes":3900530688}},"jvm":{"timestamp":1381790346980,"uptime":"4d","uptime_in_millis":349028405,"mem":{"heap_used":"31.3mb","heap_used_in_bytes":32851896,"heap_committed":"265.5mb","heap_committed_in_bytes":278462464,"non_heap_used":"39.3mb","non_heap_used_in_bytes":41210896,"non_heap_committed":"63.7mb","non_heap_committed_in_bytes":66809856,"pools":{"Code Cache":{"used":"2mb","used_in_bytes":2120704,"max":"48mb","max_in_bytes":50331648,"peak_used":"2mb","peak_used_in_bytes":2131520,"peak_max":"48mb","peak_max_in_bytes":50331648},"Par Eden Space":{"used":"24mb","used_in_bytes":25224136,"max":"66.5mb","max_in_bytes":69795840,"peak_used":"27mb","peak_used_in_bytes":28311552,"peak_max":"66.5mb","peak_max_in_bytes":69795840},"Par Survivor Space":{"used":"816.5kb","used_in_bytes":836128,"max":"8.3mb","max_in_bytes":8716288,"peak_used":"2mb","peak_used_in_bytes":2162688,"peak_max":"8.3mb","peak_max_in_bytes":8716288},"CMS Old Gen":{"used":"6.4mb","used_in_bytes":6791632,"max":"940.8mb","max_in_bytes":986513408,"peak_used":"8.2mb","peak_used_in_bytes":8653824,"peak_max":"940.8mb","peak_max_in_bytes":986513408},"CMS Perm Gen":{"used":"37.2mb","used_in_bytes":39090192,"max":"82mb","max_in_bytes":85983232,"peak_used":"37.2mb","peak_used_in_bytes":39090192,"peak_max":"82mb","peak_max_in_bytes":85983232}}},"threads":{"count":51,"peak_count":56},"gc":{"collection_count":43,"collection_time":"374ms","collection_time_in_millis":374,"collectors":{"ParNew":{"collection_count":41,"collection_time":"374ms","collection_time_in_millis":374},"ConcurrentMarkSweep":{"collection_count":2,"collection_time":"0s","collection_time_in_millis":0}}}},"thread_pool":{"generic":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":3,"completed":7505},"index":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"get":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"snapshot":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"merge":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"suggest":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"bulk":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"optimize":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"warmer":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":16},"flush":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":2,"completed":188},"search":{"threads":6,"queue":0,"active":0,"rejected":0,"largest":6,"completed":6},"percolate":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"management":{"threads":5,"queue":0,"active":1,"rejected":0,"largest":5,"completed":8593},"refresh":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0}},"network":{"tcp":{"active_opens":91033,"passive_opens":3206,"curr_estab":824,"in_segs":9438878,"out_segs":7330495,"retrans_segs":10420,"estab_resets":4179,"attempt_fails":2304,"in_errs":15,"out_rsts":-1}},"fs":{"timestamp":1381790347004,"data":[{"path":"/var/elasticsearch/es2/data/elasticsearch/nodes/0","mount":"/","dev":"/dev/disk0s2","total":"465.1gb","total_in_bytes":499418034176,"free":"215.3gb","free_in_bytes":231241613312,"available":"215.1gb","available_in_bytes":230979469312,"disk_reads":2641856,"disk_writes":3231915,"disk_read_size":"75.9gb","disk_read_size_in_bytes":81593427456,"disk_write_size":"76.2gb","disk_write_size_in_bytes":81856144384}]},"transport":{"server_open":60,"rx_count":155197,"rx_size":"6.9mb","rx_size_in_bytes":7339947,"tx_count":155195,"tx_size":"11.6mb","tx_size_in_bytes":12251491},"http":{"current_open":0,"total_opened":0}},"cluster":{"name":"Elathan","transport_address":"inet[/127.0.0.1:9301]","hostname":"server","version":"0.90.5","http_address":"inet[server/127.0.0.1:9203]"}},{"name":"jw4owU-ZQgOYdM7ElauDTg","routings":[{"name":"_river","replicas":[],"max_number_of_shards":"1","open":true},{"name":"ag_01","replicas":[null,{"replica":{"state":"STARTED","primary":false,"node":"jw4owU-ZQgOYdM7ElauDTg","relocating_node":null,"shard":1,"index":"ag_01"},"status":{"routing":{"state":"STARTED","primary":false,"node":"jw4owU-ZQgOYdM7ElauDTg","relocating_node":null,"shard":1,"index":"ag_01"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731712637,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":6,"total_time":"194ms","total_time_in_millis":194}}}],"max_number_of_shards":"2","open":true},{"name":"ag_02","replicas":[{"replica":{"state":"STARTED","primary":true,"node":"jw4owU-ZQgOYdM7ElauDTg","relocating_node":null,"shard":0,"index":"ag_02"},"status":{"routing":{"state":"STARTED","primary":true,"node":"jw4owU-ZQgOYdM7ElauDTg","relocating_node":null,"shard":0,"index":"ag_02"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381749663369,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"107ms","total_time_in_millis":107}}}],"max_number_of_shards":"3","open":true},{"name":"ag_03","replicas":[],"max_number_of_shards":"2","open":true},{"name":"twitter_river","replicas":[],"max_number_of_shards":"5","open":false}],"master_node":false,"stats":{"timestamp":1381790346963,"name":"Numinus","transport_address":"inet[/127.0.0.1:9303]","hostname":"server","indices":{"docs":{"count":0,"deleted":0},"store":{"size":"178b","size_in_bytes":178,"throttle_time":"0s","throttle_time_in_millis":0},"indexing":{"index_total":2,"index_time":"50ms","index_time_in_millis":50,"index_current":0,"delete_total":0,"delete_time":"0s","delete_time_in_millis":0,"delete_current":0},"get":{"total":0,"get_time":"0s","time_in_millis":0,"exists_total":0,"exists_time":"0s","exists_time_in_millis":0,"missing_total":0,"missing_time":"0s","missing_time_in_millis":0,"current":0},"search":{"open_contexts":0,"query_total":12,"query_time":"32ms","query_time_in_millis":32,"query_current":0,"fetch_total":0,"fetch_time":"0s","fetch_time_in_millis":0,"fetch_current":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":9,"total_time":"66ms","total_time_in_millis":66},"flush":{"total":218,"total_time":"5.6s","total_time_in_millis":5697},"warmer":{"current":0,"total":2,"total_time":"4ms","total_time_in_millis":4},"filter_cache":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"id_cache":{"memory_size":"0b","memory_size_in_bytes":0},"fielddata":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"completion":{"size":"0b","size_in_bytes":0}},"os":{"timestamp":1381790346963,"uptime":"15.5m","uptime_in_millis":932146,"load_average":[1.79736328125,1.95166015625,1.904296875],"cpu":{"sys":22,"user":6,"idle":70,"stolen":0},"mem":{"free":"3.7gb","free_in_bytes":4058091520,"used":"4.2gb","used_in_bytes":4531843072,"free_percent":51,"used_percent":48,"actual_free":"4.1gb","actual_free_in_bytes":4419244032,"actual_used":"3.8gb","actual_used_in_bytes":4170690560},"swap":{"used":"2.8gb","used_in_bytes":3025272832,"free":"1.1gb","free_in_bytes":1269694464}},"process":{"timestamp":1381790346963,"open_file_descriptors":264,"cpu":{"percent":0,"sys":"2.9m","sys_in_millis":174208,"user":"2.3m","user_in_millis":139440,"total":"5.2m","total_in_millis":313648},"mem":{"resident":"27.2mb","resident_in_bytes":28606464,"share":"-1b","share_in_bytes":-1,"total_virtual":"3.6gb","total_virtual_in_bytes":3903823872}},"jvm":{"timestamp":1381790346978,"uptime":"4d","uptime_in_millis":349026382,"mem":{"heap_used":"12.8mb","heap_used_in_bytes":13428352,"heap_committed":"265.5mb","heap_committed_in_bytes":278462464,"non_heap_used":"39.8mb","non_heap_used_in_bytes":41791784,"non_heap_committed":"55.2mb","non_heap_committed_in_bytes":57950208,"pools":{"Code Cache":{"used":"1.9mb","used_in_bytes":2065280,"max":"48mb","max_in_bytes":50331648,"peak_used":"1.9mb","peak_used_in_bytes":2074880,"peak_max":"48mb","peak_max_in_bytes":50331648},"Par Eden Space":{"used":"2.4mb","used_in_bytes":2564176,"max":"66.5mb","max_in_bytes":69795840,"peak_used":"27mb","peak_used_in_bytes":28311552,"peak_max":"66.5mb","peak_max_in_bytes":69795840},"Par Survivor Space":{"used":"646.5kb","used_in_bytes":662048,"max":"8.3mb","max_in_bytes":8716288,"peak_used":"2.8mb","peak_used_in_bytes":3029584,"peak_max":"8.3mb","peak_max_in_bytes":8716288},"CMS Old Gen":{"used":"9.7mb","used_in_bytes":10202128,"max":"940.8mb","max_in_bytes":986513408,"peak_used":"9.7mb","peak_used_in_bytes":10202128,"peak_max":"940.8mb","peak_max_in_bytes":986513408},"CMS Perm Gen":{"used":"37.8mb","used_in_bytes":39726504,"max":"82mb","max_in_bytes":85983232,"peak_used":"37.8mb","peak_used_in_bytes":39726504,"peak_max":"82mb","peak_max_in_bytes":85983232}}},"threads":{"count":60,"peak_count":66},"gc":{"collection_count":42,"collection_time":"512ms","collection_time_in_millis":512,"collectors":{"ParNew":{"collection_count":40,"collection_time":"512ms","collection_time_in_millis":512},"ConcurrentMarkSweep":{"collection_count":2,"collection_time":"0s","collection_time_in_millis":0}}}},"thread_pool":{"generic":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":3,"completed":7490},"index":{"threads":2,"queue":0,"active":0,"rejected":0,"largest":2,"completed":2},"get":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"snapshot":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2},"merge":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2},"suggest":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"bulk":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"optimize":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"warmer":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":18},"flush":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":2,"completed":221},"search":{"threads":12,"queue":0,"active":0,"rejected":0,"largest":12,"completed":12},"percolate":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"management":{"threads":3,"queue":0,"active":1,"rejected":0,"largest":5,"completed":8597},"refresh":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2}},"network":{"tcp":{"active_opens":91033,"passive_opens":3206,"curr_estab":824,"in_segs":9438878,"out_segs":7330495,"retrans_segs":10420,"estab_resets":4179,"attempt_fails":2304,"in_errs":15,"out_rsts":-1}},"fs":{"timestamp":1381790346992,"data":[{"path":"/var/elasticsearch/es4/data/elasticsearch/nodes/0","mount":"/","dev":"/dev/disk0s2","total":"465.1gb","total_in_bytes":499418034176,"free":"215.3gb","free_in_bytes":231241613312,"available":"215.1gb","available_in_bytes":230979469312,"disk_reads":2641856,"disk_writes":3231915,"disk_read_size":"75.9gb","disk_read_size_in_bytes":81593427456,"disk_write_size":"76.2gb","disk_write_size_in_bytes":81856144384}]},"transport":{"server_open":60,"rx_count":155179,"rx_size":"7mb","rx_size_in_bytes":7341687,"tx_count":155177,"tx_size":"11.6mb","tx_size_in_bytes":12249878},"http":{"current_open":0,"total_opened":0}},"cluster":{"name":"Numinus","transport_address":"inet[/127.0.0.1:9303]","hostname":"server","version":"0.90.5","http_address":"inet[server/127.0.0.1:9202]"}},{"name":"SwCmq0QKQuShZcJAbuW8OQ","routings":[{"name":"_river","replicas":[{"replica":{"state":"STARTED","primary":false,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":0,"index":"_river"},"status":{"routing":{"state":"STARTED","primary":false,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":0,"index":"_river"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1380240228838,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":62,"total_time":"1.6s","total_time_in_millis":1632}}}],"max_number_of_shards":"1","open":true},{"name":"ag_01","replicas":[{"replica":{"state":"STARTED","primary":false,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":0,"index":"ag_01"},"status":{"routing":{"state":"STARTED","primary":false,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":0,"index":"ag_01"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731712651,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"216ms","total_time_in_millis":216}}}],"max_number_of_shards":"2","open":true},{"name":"ag_02","replicas":[null,null,{"replica":{"state":"STARTED","primary":true,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":2,"index":"ag_02"},"status":{"routing":{"state":"STARTED","primary":true,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":2,"index":"ag_02"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381749663407,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":4,"total_time":"17ms","total_time_in_millis":17}}}],"max_number_of_shards":"3","open":true},{"name":"ag_03","replicas":[],"max_number_of_shards":"2","open":true},{"name":"twitter_river","replicas":[],"max_number_of_shards":"5","open":false}],"master_node":false,"stats":{"timestamp":1381790346944,"name":"Ameridroid","transport_address":"inet[/127.0.0.1:9305]","hostname":"server","indices":{"docs":{"count":0,"deleted":0},"store":{"size":"257b","size_in_bytes":257,"throttle_time":"0s","throttle_time_in_millis":0},"indexing":{"index_total":6,"index_time":"64ms","index_time_in_millis":64,"index_current":0,"delete_total":0,"delete_time":"0s","delete_time_in_millis":0,"delete_current":0},"get":{"total":0,"get_time":"0s","time_in_millis":0,"exists_total":0,"exists_time":"0s","exists_time_in_millis":0,"missing_total":0,"missing_time":"0s","missing_time_in_millis":0,"current":0},"search":{"open_contexts":0,"query_total":12,"query_time":"27ms","query_time_in_millis":27,"query_current":0,"fetch_total":0,"fetch_time":"0s","fetch_time_in_millis":0,"fetch_current":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":10,"total_time":"113ms","total_time_in_millis":113},"flush":{"total":241,"total_time":"5.5s","total_time_in_millis":5553},"warmer":{"current":0,"total":3,"total_time":"4ms","total_time_in_millis":4},"filter_cache":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"id_cache":{"memory_size":"0b","memory_size_in_bytes":0},"fielddata":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"completion":{"size":"0b","size_in_bytes":0}},"os":{"timestamp":1381790346944,"uptime":"15.5m","uptime_in_millis":932146,"load_average":[1.79736328125,1.95166015625,1.904296875],"cpu":{"sys":22,"user":6,"idle":70,"stolen":0},"mem":{"free":"3.7gb","free_in_bytes":4059074560,"used":"4.2gb","used_in_bytes":4530860032,"free_percent":51,"used_percent":48,"actual_free":"4.1gb","actual_free_in_bytes":4419702784,"actual_used":"3.8gb","actual_used_in_bytes":4170231808},"swap":{"used":"2.8gb","used_in_bytes":3025272832,"free":"1.1gb","free_in_bytes":1269694464}},"process":{"timestamp":1381790346944,"open_file_descriptors":266,"cpu":{"percent":0,"sys":"2.8m","sys_in_millis":171912,"user":"2.3m","user_in_millis":143905,"total":"5.2m","total_in_millis":315817},"mem":{"resident":"30.4mb","resident_in_bytes":31936512,"share":"-1b","share_in_bytes":-1,"total_virtual":"3.6gb","total_virtual_in_bytes":3905077248}},"jvm":{"timestamp":1381790346944,"uptime":"4d","uptime_in_millis":349024271,"mem":{"heap_used":"16.6mb","heap_used_in_bytes":17485968,"heap_committed":"253.9mb","heap_committed_in_bytes":266272768,"non_heap_used":"39.7mb","non_heap_used_in_bytes":41733256,"non_heap_committed":"40.4mb","non_heap_committed_in_bytes":42405888,"pools":{"Code Cache":{"used":"1.9mb","used_in_bytes":2018624,"max":"48mb","max_in_bytes":50331648,"peak_used":"1.9mb","peak_used_in_bytes":2029504,"peak_max":"48mb","peak_max_in_bytes":50331648},"Par Eden Space":{"used":"5.9mb","used_in_bytes":6242912,"max":"66.5mb","max_in_bytes":69795840,"peak_used":"16.6mb","peak_used_in_bytes":17432576,"peak_max":"66.5mb","peak_max_in_bytes":69795840},"Par Survivor Space":{"used":"489.7kb","used_in_bytes":501496,"max":"8.3mb","max_in_bytes":8716288,"peak_used":"2mb","peak_used_in_bytes":2162688,"peak_max":"8.3mb","peak_max_in_bytes":8716288},"CMS Old Gen":{"used":"10.2mb","used_in_bytes":10741560,"max":"940.8mb","max_in_bytes":986513408,"peak_used":"10.2mb","peak_used_in_bytes":10741560,"peak_max":"940.8mb","peak_max_in_bytes":986513408},"CMS Perm Gen":{"used":"37.8mb","used_in_bytes":39714632,"max":"82mb","max_in_bytes":85983232,"peak_used":"37.8mb","peak_used_in_bytes":39714632,"peak_max":"82mb","peak_max_in_bytes":85983232}}},"threads":{"count":63,"peak_count":70},"gc":{"collection_count":61,"collection_time":"533ms","collection_time_in_millis":533,"collectors":{"ParNew":{"collection_count":61,"collection_time":"533ms","collection_time_in_millis":533},"ConcurrentMarkSweep":{"collection_count":0,"collection_time":"0s","collection_time_in_millis":0}}}},"thread_pool":{"generic":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":4,"completed":7504},"index":{"threads":4,"queue":0,"active":0,"rejected":0,"largest":4,"completed":6},"get":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"snapshot":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":4},"merge":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":4},"suggest":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"bulk":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"optimize":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"warmer":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":23},"flush":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":2,"completed":241},"search":{"threads":12,"queue":0,"active":0,"rejected":0,"largest":12,"completed":12},"percolate":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"management":{"threads":4,"queue":0,"active":1,"rejected":0,"largest":5,"completed":10284},"refresh":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":4}},"network":{"tcp":{"active_opens":91033,"passive_opens":3206,"curr_estab":824,"in_segs":9438844,"out_segs":7330461,"retrans_segs":10420,"estab_resets":4179,"attempt_fails":2304,"in_errs":15,"out_rsts":-1}},"fs":{"timestamp":1381790346959,"data":[{"path":"/var/elasticsearch/es6/data/elasticsearch/nodes/0","mount":"/","dev":"/dev/disk0s2","total":"465.1gb","total_in_bytes":499418034176,"free":"215.3gb","free_in_bytes":231240040448,"available":"215.1gb","available_in_bytes":230977896448,"disk_reads":2641849,"disk_writes":3231915,"disk_read_size":"75.9gb","disk_read_size_in_bytes":81593058816,"disk_write_size":"76.2gb","disk_write_size_in_bytes":81856144384}]},"transport":{"server_open":60,"rx_count":156880,"rx_size":"7mb","rx_size_in_bytes":7431874,"tx_count":156877,"tx_size":"11.9mb","tx_size_in_bytes":12480678},"http":{"current_open":0,"total_opened":0}},"cluster":{"name":"Ameridroid","transport_address":"inet[/127.0.0.1:9305]","hostname":"server","version":"0.90.5","http_address":"inet[server/127.0.0.1:9205]"}},{"name":"aBuoaKR5QVCfUZHgrJEfVg","routings":[{"name":"_river","replicas":[],"max_number_of_shards":"1","open":true},{"name":"ag_01","replicas":[{"replica":{"state":"STARTED","primary":true,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":0,"index":"ag_01"},"status":{"routing":{"state":"STARTED","primary":true,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":0,"index":"ag_01"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731712651,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"382ms","total_time_in_millis":382}}}],"max_number_of_shards":"2","open":true},{"name":"ag_02","replicas":[null,null,{"replica":{"state":"STARTED","primary":false,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":2,"index":"ag_02"},"status":{"routing":{"state":"STARTED","primary":false,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":2,"index":"ag_02"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381749663407,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"15ms","total_time_in_millis":15}}}],"max_number_of_shards":"3","open":true},{"name":"ag_03","replicas":[{"replica":{"state":"STARTED","primary":true,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":0,"index":"ag_03"},"status":{"routing":{"state":"STARTED","primary":true,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":0,"index":"ag_03"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731770063,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":6,"total_time":"101ms","total_time_in_millis":101}}}],"max_number_of_shards":"2","open":true},{"name":"twitter_river","replicas":[],"max_number_of_shards":"5","open":false}],"master_node":false,"stats":{"timestamp":1381790346945,"name":"Immortus","transport_address":"inet[/127.0.0.1:9302]","hostname":"server","indices":{"docs":{"count":0,"deleted":0},"store":{"size":"277b","size_in_bytes":277,"throttle_time":"0s","throttle_time_in_millis":0},"indexing":{"index_total":2,"index_time":"59ms","index_time_in_millis":59,"index_current":0,"delete_total":0,"delete_time":"0s","delete_time_in_millis":0,"delete_current":0},"get":{"total":0,"get_time":"0s","time_in_millis":0,"exists_total":0,"exists_time":"0s","exists_time_in_millis":0,"missing_total":0,"missing_time":"0s","missing_time_in_millis":0,"current":0},"search":{"open_contexts":0,"query_total":12,"query_time":"27ms","query_time_in_millis":27,"query_current":0,"fetch_total":1,"fetch_time":"9ms","fetch_time_in_millis":9,"fetch_current":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":9,"total_time":"72ms","total_time_in_millis":72},"flush":{"total":239,"total_time":"6.3s","total_time_in_millis":6363},"warmer":{"current":0,"total":3,"total_time":"8ms","total_time_in_millis":8},"filter_cache":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"id_cache":{"memory_size":"0b","memory_size_in_bytes":0},"fielddata":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"completion":{"size":"0b","size_in_bytes":0}},"os":{"timestamp":1381790346963,"uptime":"15.5m","uptime_in_millis":932146,"load_average":[1.79736328125,1.95166015625,1.904296875],"cpu":{"sys":22,"user":6,"idle":70,"stolen":0},"mem":{"free":"3.7gb","free_in_bytes":4058099712,"used":"4.2gb","used_in_bytes":4531834880,"free_percent":51,"used_percent":48,"actual_free":"4.1gb","actual_free_in_bytes":4419252224,"actual_used":"3.8gb","actual_used_in_bytes":4170682368},"swap":{"used":"2.8gb","used_in_bytes":3025272832,"free":"1.1gb","free_in_bytes":1269694464}},"process":{"timestamp":1381790346963,"open_file_descriptors":266,"cpu":{"percent":0,"sys":"2.9m","sys_in_millis":174105,"user":"2.4m","user_in_millis":145373,"total":"5.3m","total_in_millis":319478},"mem":{"resident":"29mb","resident_in_bytes":30453760,"share":"-1b","share_in_bytes":-1,"total_virtual":"3.6gb","total_virtual_in_bytes":3912540160}},"jvm":{"timestamp":1381790346963,"uptime":"4d","uptime_in_millis":349027381,"mem":{"heap_used":"28.5mb","heap_used_in_bytes":29980664,"heap_committed":"265.5mb","heap_committed_in_bytes":278462464,"non_heap_used":"40mb","non_heap_used_in_bytes":42021480,"non_heap_committed":"65.6mb","non_heap_committed_in_bytes":68853760,"pools":{"Code Cache":{"used":"2mb","used_in_bytes":2183808,"max":"48mb","max_in_bytes":50331648,"peak_used":"2mb","peak_used_in_bytes":2193408,"peak_max":"48mb","peak_max_in_bytes":50331648},"Par Eden Space":{"used":"23.8mb","used_in_bytes":25026800,"max":"66.5mb","max_in_bytes":69795840,"peak_used":"27mb","peak_used_in_bytes":28311552,"peak_max":"66.5mb","peak_max_in_bytes":69795840},"Par Survivor Space":{"used":"464.1kb","used_in_bytes":475296,"max":"8.3mb","max_in_bytes":8716288,"peak_used":"2mb","peak_used_in_bytes":2162688,"peak_max":"8.3mb","peak_max_in_bytes":8716288},"CMS Old Gen":{"used":"4.2mb","used_in_bytes":4478568,"max":"940.8mb","max_in_bytes":986513408,"peak_used":"12.4mb","peak_used_in_bytes":13054208,"peak_max":"940.8mb","peak_max_in_bytes":986513408},"CMS Perm Gen":{"used":"37.9mb","used_in_bytes":39837672,"max":"82mb","max_in_bytes":85983232,"peak_used":"38.2mb","peak_used_in_bytes":40134632,"peak_max":"82mb","peak_max_in_bytes":85983232}}},"threads":{"count":62,"peak_count":67},"gc":{"collection_count":80,"collection_time":"561ms","collection_time_in_millis":561,"collectors":{"ParNew":{"collection_count":78,"collection_time":"557ms","collection_time_in_millis":557},"ConcurrentMarkSweep":{"collection_count":2,"collection_time":"4ms","collection_time_in_millis":4}}}},"thread_pool":{"generic":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":4,"completed":7528},"index":{"threads":2,"queue":0,"active":0,"rejected":0,"largest":2,"completed":2},"get":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"snapshot":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2},"merge":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2},"suggest":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"bulk":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"optimize":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"warmer":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":26},"flush":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":2,"completed":242},"search":{"threads":12,"queue":0,"active":0,"rejected":0,"largest":12,"completed":13},"percolate":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"management":{"threads":5,"queue":0,"active":2,"rejected":0,"largest":5,"completed":10288},"refresh":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2}},"network":{"tcp":{"active_opens":91033,"passive_opens":3206,"curr_estab":824,"in_segs":9438862,"out_segs":7330479,"retrans_segs":10420,"estab_resets":4179,"attempt_fails":2304,"in_errs":15,"out_rsts":-1}},"fs":{"timestamp":1381790346977,"data":[{"path":"/var/elasticsearch/es3/data/elasticsearch/nodes/0","mount":"/","dev":"/dev/disk0s2","total":"465.1gb","total_in_bytes":499418034176,"free":"215.3gb","free_in_bytes":231241089024,"available":"215.1gb","available_in_bytes":230978945024,"disk_reads":2641854,"disk_writes":3231915,"disk_read_size":"75.9gb","disk_read_size_in_bytes":81593402880,"disk_write_size":"76.2gb","disk_write_size_in_bytes":81856144384}]},"transport":{"server_open":60,"rx_count":156920,"rx_size":"7.1mb","rx_size_in_bytes":7451979,"tx_count":156915,"tx_size":"11.9mb","tx_size_in_bytes":12499329},"http":{"current_open":0,"total_opened":0}},"cluster":{"name":"Immortus","transport_address":"inet[/127.0.0.1:9302]","hostname":"server","version":"0.90.5","http_address":"inet[server/127.0.0.1:9201]"}},{"name":"3Rbfod0sS9eZ6VrOkY0JKw","routings":[{"name":"_river","replicas":[{"replica":{"state":"STARTED","primary":true,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"_river"},"status":{"routing":{"state":"STARTED","primary":true,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"_river"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1380240228838,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":62,"total_time":"833ms","total_time_in_millis":833}}}],"max_number_of_shards":"1","open":true},{"name":"ag_01","replicas":[],"max_number_of_shards":"2","open":true},{"name":"ag_02","replicas":[{"replica":{"state":"STARTED","primary":false,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"ag_02"},"status":{"routing":{"state":"STARTED","primary":false,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"ag_02"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381749663369,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"4ms","total_time_in_millis":4}}}],"max_number_of_shards":"3","open":true},{"name":"ag_03","replicas":[{"replica":{"state":"STARTED","primary":false,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"ag_03"},"status":{"routing":{"state":"STARTED","primary":false,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"ag_03"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731770063,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"274ms","total_time_in_millis":274}}}],"max_number_of_shards":"2","open":true},{"name":"twitter_river","replicas":[],"max_number_of_shards":"5","open":false}],"master_node":true,"stats":{"timestamp":1381790346938,"name":"Steel Serpent","transport_address":"inet[server/127.0.0.1:9300]","hostname":"server","indices":{"docs":{"count":0,"deleted":0},"store":{"size":"237b","size_in_bytes":237,"throttle_time":"0s","throttle_time_in_millis":0},"indexing":{"index_total":2,"index_time":"59ms","index_time_in_millis":59,"index_current":0,"delete_total":0,"delete_time":"0s","delete_time_in_millis":0,"delete_current":0},"get":{"total":0,"get_time":"0s","time_in_millis":0,"exists_total":0,"exists_time":"0s","exists_time_in_millis":0,"missing_total":0,"missing_time":"0s","missing_time_in_millis":0,"current":0},"search":{"open_contexts":0,"query_total":12,"query_time":"32ms","query_time_in_millis":32,"query_current":0,"fetch_total":3,"fetch_time":"5ms","fetch_time_in_millis":5,"fetch_current":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":6,"total_time":"58ms","total_time_in_millis":58},"flush":{"total":240,"total_time":"4.3s","total_time_in_millis":4339},"warmer":{"current":0,"total":3,"total_time":"8ms","total_time_in_millis":8},"filter_cache":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"id_cache":{"memory_size":"0b","memory_size_in_bytes":0},"fielddata":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"completion":{"size":"0b","size_in_bytes":0}},"os":{"timestamp":1381790346938,"uptime":"15.5m","uptime_in_millis":932146,"load_average":[1.79736328125,1.95166015625,1.904296875],"cpu":{"sys":22,"user":6,"idle":70,"stolen":0},"mem":{"free":"3.7gb","free_in_bytes":4062093312,"used":"4.2gb","used_in_bytes":4527841280,"free_percent":51,"used_percent":48,"actual_free":"4.1gb","actual_free_in_bytes":4422721536,"actual_used":"3.8gb","actual_used_in_bytes":4167213056},"swap":{"used":"2.8gb","used_in_bytes":3025272832,"free":"1.1gb","free_in_bytes":1269694464}},"process":{"timestamp":1381790346938,"open_file_descriptors":272,"cpu":{"percent":0,"sys":"3.3m","sys_in_millis":200578,"user":"3.2m","user_in_millis":192613,"total":"6.5m","total_in_millis":393191},"mem":{"resident":"43.8mb","resident_in_bytes":46018560,"share":"-1b","share_in_bytes":-1,"total_virtual":"3.6gb","total_virtual_in_bytes":3910467584}},"jvm":{"timestamp":1381790346938,"uptime":"4d","uptime_in_millis":349029191,"mem":{"heap_used":"28.9mb","heap_used_in_bytes":30381984,"heap_committed":"253.9mb","heap_committed_in_bytes":266272768,"non_heap_used":"42.9mb","non_heap_used_in_bytes":45068896,"non_heap_committed":"43.3mb","non_heap_committed_in_bytes":45420544,"pools":{"Code Cache":{"used":"3.3mb","used_in_bytes":3534656,"max":"48mb","max_in_bytes":50331648,"peak_used":"3.3mb","peak_used_in_bytes":3545408,"peak_max":"48mb","peak_max_in_bytes":50331648},"Par Eden Space":{"used":"15.6mb","used_in_bytes":16402808,"max":"66.5mb","max_in_bytes":69795840,"peak_used":"16.6mb","peak_used_in_bytes":17432576,"peak_max":"66.5mb","peak_max_in_bytes":69795840},"Par Survivor Space":{"used":"44.9kb","used_in_bytes":46016,"max":"8.3mb","max_in_bytes":8716288,"peak_used":"2mb","peak_used_in_bytes":2162688,"peak_max":"8.3mb","peak_max_in_bytes":8716288},"CMS Old Gen":{"used":"13.2mb","used_in_bytes":13933160,"max":"940.8mb","max_in_bytes":986513408,"peak_used":"13.2mb","peak_used_in_bytes":13933160,"peak_max":"940.8mb","peak_max_in_bytes":986513408},"CMS Perm Gen":{"used":"39.6mb","used_in_bytes":41534240,"max":"82mb","max_in_bytes":85983232,"peak_used":"39.6mb","peak_used_in_bytes":41534240,"peak_max":"82mb","peak_max_in_bytes":85983232}}},"threads":{"count":64,"peak_count":68},"gc":{"collection_count":272,"collection_time":"967ms","collection_time_in_millis":967,"collectors":{"ParNew":{"collection_count":272,"collection_time":"967ms","collection_time_in_millis":967},"ConcurrentMarkSweep":{"collection_count":0,"collection_time":"0s","collection_time_in_millis":0}}}},"thread_pool":{"generic":{"threads":2,"queue":0,"active":0,"rejected":0,"largest":4,"completed":9499},"index":{"threads":2,"queue":0,"active":0,"rejected":0,"largest":2,"completed":2},"get":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"snapshot":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2},"merge":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2},"suggest":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"bulk":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"optimize":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"warmer":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":21},"flush":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":2,"completed":241},"search":{"threads":12,"queue":0,"active":0,"rejected":0,"largest":12,"completed":15},"percolate":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"management":{"threads":5,"queue":0,"active":1,"rejected":0,"largest":5,"completed":15207},"refresh":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2}},"network":{"tcp":{"active_opens":91033,"passive_opens":3206,"curr_estab":824,"in_segs":9438818,"out_segs":7330435,"retrans_segs":10420,"estab_resets":4179,"attempt_fails":2304,"in_errs":15,"out_rsts":-1}},"fs":{"timestamp":1381790346956,"data":[{"path":"/var/elasticsearch/es1/data/elasticsearch/nodes/0","mount":"/","dev":"/dev/disk0s2","total":"465.1gb","total_in_bytes":499418034176,"free":"215.3gb","free_in_bytes":231240040448,"available":"215.1gb","available_in_bytes":230977896448,"disk_reads":2641849,"disk_writes":3231915,"disk_read_size":"75.9gb","disk_read_size_in_bytes":81593058816,"disk_write_size":"76.2gb","disk_write_size_in_bytes":81856144384}]},"transport":{"server_open":60,"rx_count":780551,"rx_size":"59mb","rx_size_in_bytes":61929023,"tx_count":780563,"tx_size":"35.2mb","tx_size_in_bytes":36961925},"http":{"current_open":6,"total_opened":201}},"cluster":{"name":"Steel Serpent","transport_address":"inet[server/127.0.0.1:9300]","hostname":"server","version":"0.90.5","http_address":"inet[server/127.0.0.1:9200]"}},{"name":"PO1wHIidQo-w7sGHaYHvjg","routings":[{"name":"_river","replicas":[],"max_number_of_shards":"1","open":true},{"name":"ag_01","replicas":[],"max_number_of_shards":"2","open":true},{"name":"ag_02","replicas":[null,{"replica":{"state":"STARTED","primary":true,"node":"PO1wHIidQo-w7sGHaYHvjg","relocating_node":null,"shard":1,"index":"ag_02"},"status":{"routing":{"state":"STARTED","primary":true,"node":"PO1wHIidQo-w7sGHaYHvjg","relocating_node":null,"shard":1,"index":"ag_02"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381749663385,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":4,"total_time":"122ms","total_time_in_millis":122}}}],"max_number_of_shards":"3","open":true},{"name":"ag_03","replicas":[null,{"replica":{"state":"STARTED","primary":false,"node":"PO1wHIidQo-w7sGHaYHvjg","relocating_node":null,"shard":1,"index":"ag_03"},"status":{"routing":{"state":"STARTED","primary":false,"node":"PO1wHIidQo-w7sGHaYHvjg","relocating_node":null,"shard":1,"index":"ag_03"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731770058,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"137ms","total_time_in_millis":137}}}],"max_number_of_shards":"2","open":true},{"name":"twitter_river","replicas":[],"max_number_of_shards":"5","open":false}],"master_node":false,"stats":{"timestamp":1381790346964,"name":"Thumbelina","transport_address":"inet[/127.0.0.1:9304]","hostname":"server","indices":{"docs":{"count":0,"deleted":0},"store":{"size":"178b","size_in_bytes":178,"throttle_time":"0s","throttle_time_in_millis":0},"indexing":{"index_total":4,"index_time":"55ms","index_time_in_millis":55,"index_current":0,"delete_total":0,"delete_time":"0s","delete_time_in_millis":0,"delete_current":0},"get":{"total":0,"get_time":"0s","time_in_millis":0,"exists_total":0,"exists_time":"0s","exists_time_in_millis":0,"missing_total":0,"missing_time":"0s","missing_time_in_millis":0,"current":0},"search":{"open_contexts":0,"query_total":6,"query_time":"21ms","query_time_in_millis":21,"query_current":0,"fetch_total":2,"fetch_time":"10ms","fetch_time_in_millis":10,"fetch_current":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":9,"total_time":"81ms","total_time_in_millis":81},"flush":{"total":198,"total_time":"3.6s","total_time_in_millis":3662},"warmer":{"current":0,"total":2,"total_time":"3ms","total_time_in_millis":3},"filter_cache":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"id_cache":{"memory_size":"0b","memory_size_in_bytes":0},"fielddata":{"memory_size":"0b","memory_size_in_bytes":0,"evictions":0},"completion":{"size":"0b","size_in_bytes":0}},"os":{"timestamp":1381790346964,"uptime":"15.5m","uptime_in_millis":932146,"load_average":[1.79736328125,1.95166015625,1.904296875],"cpu":{"sys":22,"user":6,"idle":70,"stolen":0},"mem":{"free":"3.7gb","free_in_bytes":4058308608,"used":"4.2gb","used_in_bytes":4531625984,"free_percent":51,"used_percent":48,"actual_free":"4.1gb","actual_free_in_bytes":4419461120,"actual_used":"3.8gb","actual_used_in_bytes":4170473472},"swap":{"used":"2.8gb","used_in_bytes":3025272832,"free":"1.1gb","free_in_bytes":1269694464}},"process":{"timestamp":1381790346964,"open_file_descriptors":264,"cpu":{"percent":0,"sys":"2.8m","sys_in_millis":172378,"user":"2.3m","user_in_millis":140227,"total":"5.2m","total_in_millis":312605},"mem":{"resident":"28.5mb","resident_in_bytes":29892608,"share":"-1b","share_in_bytes":-1,"total_virtual":"3.6gb","total_virtual_in_bytes":3904798720}},"jvm":{"timestamp":1381790346976,"uptime":"4d","uptime_in_millis":349025339,"mem":{"heap_used":"20.8mb","heap_used_in_bytes":21889120,"heap_committed":"253.9mb","heap_committed_in_bytes":266272768,"non_heap_used":"40.2mb","non_heap_used_in_bytes":42232320,"non_heap_committed":"40.8mb","non_heap_committed_in_bytes":42799104,"pools":{"Code Cache":{"used":"2mb","used_in_bytes":2125312,"max":"48mb","max_in_bytes":50331648,"peak_used":"2mb","peak_used_in_bytes":2134912,"peak_max":"48mb","peak_max_in_bytes":50331648},"Par Eden Space":{"used":"8.4mb","used_in_bytes":8836504,"max":"66.5mb","max_in_bytes":69795840,"peak_used":"16.6mb","peak_used_in_bytes":17432576,"peak_max":"66.5mb","peak_max_in_bytes":69795840},"Par Survivor Space":{"used":"659.3kb","used_in_bytes":675192,"max":"8.3mb","max_in_bytes":8716288,"peak_used":"2mb","peak_used_in_bytes":2162688,"peak_max":"8.3mb","peak_max_in_bytes":8716288},"CMS Old Gen":{"used":"11.8mb","used_in_bytes":12377424,"max":"940.8mb","max_in_bytes":986513408,"peak_used":"11.8mb","peak_used_in_bytes":12377424,"peak_max":"940.8mb","peak_max_in_bytes":986513408},"CMS Perm Gen":{"used":"38.2mb","used_in_bytes":40107008,"max":"82mb","max_in_bytes":85983232,"peak_used":"38.2mb","peak_used_in_bytes":40107008,"peak_max":"82mb","peak_max_in_bytes":85983232}}},"threads":{"count":59,"peak_count":65},"gc":{"collection_count":61,"collection_time":"632ms","collection_time_in_millis":632,"collectors":{"ParNew":{"collection_count":61,"collection_time":"632ms","collection_time_in_millis":632},"ConcurrentMarkSweep":{"collection_count":0,"collection_time":"0s","collection_time_in_millis":0}}}},"thread_pool":{"generic":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":4,"completed":7515},"index":{"threads":4,"queue":0,"active":0,"rejected":0,"largest":4,"completed":4},"get":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"snapshot":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2},"merge":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2},"suggest":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"bulk":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"optimize":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"warmer":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":22},"flush":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":2,"completed":198},"search":{"threads":8,"queue":0,"active":0,"rejected":0,"largest":8,"completed":8},"percolate":{"threads":0,"queue":0,"active":0,"rejected":0,"largest":0,"completed":0},"management":{"threads":4,"queue":0,"active":1,"rejected":0,"largest":5,"completed":10266},"refresh":{"threads":1,"queue":0,"active":0,"rejected":0,"largest":1,"completed":2}},"network":{"tcp":{"active_opens":91033,"passive_opens":3206,"curr_estab":824,"in_segs":9438872,"out_segs":7330489,"retrans_segs":10420,"estab_resets":4179,"attempt_fails":2304,"in_errs":15,"out_rsts":-1}},"fs":{"timestamp":1381790347016,"data":[{"path":"/var/elasticsearch/es5/data/elasticsearch/nodes/0","mount":"/","dev":"/dev/disk0s2","total":"465.1gb","total_in_bytes":499418034176,"free":"215.3gb","free_in_bytes":231241613312,"available":"215.1gb","available_in_bytes":230979469312,"disk_reads":2641856,"disk_writes":3231915,"disk_read_size":"75.9gb","disk_read_size_in_bytes":81593427456,"disk_write_size":"76.2gb","disk_write_size_in_bytes":81856144384}]},"transport":{"server_open":60,"rx_count":156869,"rx_size":"7mb","rx_size_in_bytes":7444733,"tx_count":156866,"tx_size":"11.9mb","tx_size_in_bytes":12497730},"http":{"current_open":0,"total_opened":2}},"cluster":{"name":"Thumbelina","transport_address":"inet[/127.0.0.1:9304]","hostname":"server","version":"0.90.5","http_address":"inet[server/127.0.0.1:9204]"}}],"aliases":[{"name":"search","max":3,"min":1,"indices":[false,{"name":"ag_01","state":"open","metadata":{"state":"open","settings":{"index.number_of_replicas":"1","index.number_of_shards":"2","index.version.created":"900599"},"mappings":{},"aliases":["search"]},"status":{"index":{"primary_size":"198b","primary_size_in_bytes":198,"size":"356b","size_in_bytes":356},"translog":{"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":2,"total_time":"0s","total_time_in_millis":0},"flush":{"total":27,"total_time":"1.4s","total_time_in_millis":1435},"shards":{"0":[{"routing":{"state":"STARTED","primary":false,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":0,"index":"ag_01"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731712651,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"216ms","total_time_in_millis":216}},{"routing":{"state":"STARTED","primary":true,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":0,"index":"ag_01"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731712651,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"382ms","total_time_in_millis":382}}],"1":[{"routing":{"state":"STARTED","primary":true,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_01"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731712637,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"643ms","total_time_in_millis":643}},{"routing":{"state":"STARTED","primary":false,"node":"jw4owU-ZQgOYdM7ElauDTg","relocating_node":null,"shard":1,"index":"ag_01"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731712637,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":6,"total_time":"194ms","total_time_in_millis":194}}]}}},{"name":"ag_02","state":"open","metadata":{"state":"open","settings":{"index.number_of_replicas":"1","index.number_of_shards":"3","index.version.created":"900599"},"mappings":{},"aliases":["search"]},"status":{"index":{"primary_size":"297b","primary_size_in_bytes":297,"size":"534b","size_in_bytes":534},"translog":{"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":3,"total_time":"0s","total_time_in_millis":0},"flush":{"total":20,"total_time":"340ms","total_time_in_millis":340},"shards":{"0":[{"routing":{"state":"STARTED","primary":true,"node":"jw4owU-ZQgOYdM7ElauDTg","relocating_node":null,"shard":0,"index":"ag_02"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381749663369,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"107ms","total_time_in_millis":107}},{"routing":{"state":"STARTED","primary":false,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"ag_02"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381749663369,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"4ms","total_time_in_millis":4}}],"1":[{"routing":{"state":"STARTED","primary":false,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_02"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381749663385,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"75ms","total_time_in_millis":75}},{"routing":{"state":"STARTED","primary":true,"node":"PO1wHIidQo-w7sGHaYHvjg","relocating_node":null,"shard":1,"index":"ag_02"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381749663385,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":4,"total_time":"122ms","total_time_in_millis":122}}],"2":[{"routing":{"state":"STARTED","primary":true,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":2,"index":"ag_02"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381749663407,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":4,"total_time":"17ms","total_time_in_millis":17}},{"routing":{"state":"STARTED","primary":false,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":2,"index":"ag_02"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381749663407,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"15ms","total_time_in_millis":15}}]}}},{"name":"ag_03","state":"open","metadata":{"state":"open","settings":{"index.number_of_replicas":"1","index.number_of_shards":"2","index.version.created":"900599"},"mappings":{},"aliases":["search","live"]},"status":{"index":{"primary_size":"198b","primary_size_in_bytes":198,"size":"356b","size_in_bytes":356},"translog":{"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":2,"total_time":"0s","total_time_in_millis":0},"flush":{"total":27,"total_time":"598ms","total_time_in_millis":598},"shards":{"0":[{"routing":{"state":"STARTED","primary":true,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":0,"index":"ag_03"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731770063,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":6,"total_time":"101ms","total_time_in_millis":101}},{"routing":{"state":"STARTED","primary":false,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"ag_03"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731770063,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"274ms","total_time_in_millis":274}}],"1":[{"routing":{"state":"STARTED","primary":true,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_03"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731770058,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"86ms","total_time_in_millis":86}},{"routing":{"state":"STARTED","primary":false,"node":"PO1wHIidQo-w7sGHaYHvjg","relocating_node":null,"shard":1,"index":"ag_03"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731770058,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"137ms","total_time_in_millis":137}}]}}},false]},{"name":"live","max":3,"min":3,"indices":[false,false,false,{"name":"ag_03","state":"open","metadata":{"state":"open","settings":{"index.number_of_replicas":"1","index.number_of_shards":"2","index.version.created":"900599"},"mappings":{},"aliases":["search","live"]},"status":{"index":{"primary_size":"198b","primary_size_in_bytes":198,"size":"356b","size_in_bytes":356},"translog":{"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":2,"total_time":"0s","total_time_in_millis":0},"flush":{"total":27,"total_time":"598ms","total_time_in_millis":598},"shards":{"0":[{"routing":{"state":"STARTED","primary":true,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":0,"index":"ag_03"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731770063,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":6,"total_time":"101ms","total_time_in_millis":101}},{"routing":{"state":"STARTED","primary":false,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"ag_03"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731770063,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"274ms","total_time_in_millis":274}}],"1":[{"routing":{"state":"STARTED","primary":true,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_03"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731770058,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"86ms","total_time_in_millis":86}},{"routing":{"state":"STARTED","primary":false,"node":"PO1wHIidQo-w7sGHaYHvjg","relocating_node":null,"shard":1,"index":"ag_03"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731770058,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"137ms","total_time_in_millis":137}}]}}},false]}]},
- "indices":[{"name":null},{"name":"_river","state":"open","metadata":{"state":"open","settings":{"index.version.created":"900599","index.number_of_replicas":"1","index.number_of_shards":"1"},"mappings":{},"aliases":[]},"status":{"index":{"primary_size":"79b","primary_size_in_bytes":79,"size":"158b","size_in_bytes":158},"translog":{"operations":0},"docs":{"num_docs":1,"max_doc":1,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":124,"total_time":"2.4s","total_time_in_millis":2465},"shards":{"0":[{"routing":{"state":"STARTED","primary":false,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":0,"index":"_river"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1380240228838,"operations":0},"docs":{"num_docs":187162420,"max_doc":187171320,"deleted_docs":9},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":62,"total_time":"1.6s","total_time_in_millis":1632}},{"routing":{"state":"STARTED","primary":true,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"_river"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1380240228838,"operations":0},"docs":{"num_docs":187162420,"max_doc":187171320,"deleted_docs":9},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":62,"total_time":"833ms","total_time_in_millis":833}}]}}},{"name":"ag_01","state":"open","metadata":{"state":"open","settings":{"index.number_of_replicas":"1","index.number_of_shards":"2","index.version.created":"900599"},"mappings":{},"aliases":["search"]},"status":{"index":{"primary_size":"198b","primary_size_in_bytes":198,"size":"356b","size_in_bytes":356},"translog":{"operations":0},"docs":{"num_docs":18716242,"max_doc":18717132,"deleted_docs":9},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":2,"total_time":"0s","total_time_in_millis":0},"flush":{"total":27,"total_time":"1.4s","total_time_in_millis":1435},"shards":{"0":[{"routing":{"state":"STARTED","primary":false,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":0,"index":"ag_01"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731712651,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"216ms","total_time_in_millis":216}},{"routing":{"state":"STARTED","primary":true,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":0,"index":"ag_01"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731712651,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"382ms","total_time_in_millis":382}}],"1":[{"routing":{"state":"STARTED","primary":true,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_01"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731712637,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"643ms","total_time_in_millis":643}},{"routing":{"state":"STARTED","primary":false,"node":"jw4owU-ZQgOYdM7ElauDTg","relocating_node":null,"shard":1,"index":"ag_01"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731712637,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":6,"total_time":"194ms","total_time_in_millis":194}}]}}},{"name":"ag_02","state":"open","metadata":{"state":"open","settings":{"index.number_of_replicas":"1","index.number_of_shards":"3","index.version.created":"900599"},"mappings":{},"aliases":["search"]},"status":{"index":{"primary_size":"297b","primary_size_in_bytes":297,"size":"534b","size_in_bytes":534},"translog":{"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":3,"total_time":"0s","total_time_in_millis":0},"flush":{"total":20,"total_time":"340ms","total_time_in_millis":340},"shards":{"0":[{"routing":{"state":"STARTED","primary":true,"node":"jw4owU-ZQgOYdM7ElauDTg","relocating_node":null,"shard":0,"index":"ag_02"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381749663369,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"107ms","total_time_in_millis":107}},{"routing":{"state":"STARTED","primary":false,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"ag_02"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381749663369,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"4ms","total_time_in_millis":4}}],"1":[{"routing":{"state":"STARTED","primary":false,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_02"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381749663385,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"75ms","total_time_in_millis":75}},{"routing":{"state":"STARTED","primary":true,"node":"PO1wHIidQo-w7sGHaYHvjg","relocating_node":null,"shard":1,"index":"ag_02"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381749663385,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":4,"total_time":"122ms","total_time_in_millis":122}}],"2":[{"routing":{"state":"STARTED","primary":true,"node":"SwCmq0QKQuShZcJAbuW8OQ","relocating_node":null,"shard":2,"index":"ag_02"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381749663407,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":4,"total_time":"17ms","total_time_in_millis":17}},{"routing":{"state":"STARTED","primary":false,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":2,"index":"ag_02"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381749663407,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":3,"total_time":"15ms","total_time_in_millis":15}}]}}},{"name":"ag_03","state":"open","metadata":{"state":"open","settings":{"index.number_of_replicas":"1","index.number_of_shards":"2","index.version.created":"900599"},"mappings":{},"aliases":["search","live"]},"status":{"index":{"primary_size":"198b","primary_size_in_bytes":198,"size":"356b","size_in_bytes":356},"translog":{"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":2,"total_time":"0s","total_time_in_millis":0},"flush":{"total":27,"total_time":"598ms","total_time_in_millis":598},"shards":{"0":[{"routing":{"state":"STARTED","primary":true,"node":"aBuoaKR5QVCfUZHgrJEfVg","relocating_node":null,"shard":0,"index":"ag_03"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731770063,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":6,"total_time":"101ms","total_time_in_millis":101}},{"routing":{"state":"STARTED","primary":false,"node":"3Rbfod0sS9eZ6VrOkY0JKw","relocating_node":null,"shard":0,"index":"ag_03"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731770063,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"274ms","total_time_in_millis":274}}],"1":[{"routing":{"state":"STARTED","primary":true,"node":"cqTmT9GLSlSWx-B7pvM--w","relocating_node":null,"shard":1,"index":"ag_03"},"state":"STARTED","index":{"size":"99b","size_in_bytes":99},"translog":{"id":1381731770058,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":1,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"86ms","total_time_in_millis":86}},{"routing":{"state":"STARTED","primary":false,"node":"PO1wHIidQo-w7sGHaYHvjg","relocating_node":null,"shard":1,"index":"ag_03"},"state":"STARTED","index":{"size":"79b","size_in_bytes":79},"translog":{"id":1381731770058,"operations":0},"docs":{"num_docs":0,"max_doc":0,"deleted_docs":0},"merges":{"current":0,"current_docs":0,"current_size":"0b","current_size_in_bytes":0,"total":0,"total_time":"0s","total_time_in_millis":0,"total_docs":0,"total_size":"0b","total_size_in_bytes":0},"refresh":{"total":0,"total_time":"0s","total_time_in_millis":0},"flush":{"total":7,"total_time":"137ms","total_time_in_millis":137}}]}}},{"name":"twitter_river","state":"close","metadata":{"state":"close","settings":{"index.number_of_replicas":"1","index.version.created":"900599","index.number_of_shards":"5"},"mappings":{"status":{"properties":{"text":{"type":"string"},"location":{"properties":{"lon":{"type":"double"},"lat":{"type":"double"}}},"link":{"properties":{"start":{"type":"long"},"expand_url":{"type":"string"},"display_url":{"type":"string"},"url":{"type":"string"},"end":{"type":"long"}}},"hashtag":{"properties":{"text":{"type":"string"},"start":{"type":"long"},"end":{"type":"long"}}},"truncated":{"type":"boolean"},"source":{"type":"string"},"retweet":{"properties":{"id":{"type":"long"},"user_screen_name":{"type":"string"},"retweet_count":{"type":"long"},"user_id":{"type":"long"}}},"created_at":{"format":"dateOptionalTime","type":"date"},"retweet_count":{"type":"long"},"in_reply":{"properties":{"user_screen_name":{"type":"string"},"status":{"type":"long"},"user_id":{"type":"long"}}},"mention":{"properties":{"id":{"type":"long"},"start":{"type":"long"},"name":{"type":"string"},"screen_name":{"type":"string"},"end":{"type":"long"}}},"place":{"properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"},"country_code":{"type":"string"},"url":{"type":"string"},"full_name":{"type":"string"},"country":{"type":"string"}}},"user":{"properties":{"id":{"type":"long"},"profile_image_url_https":{"type":"string"},"location":{"type":"string"},"description":{"type":"string"},"name":{"type":"string"},"screen_name":{"type":"string"},"profile_image_url":{"type":"string"}}}}}},"aliases":[]},"status":null}]
- };
-
- window.builder = function() {
- return new ui.NodesView({
- interactive: true,
- data: data
- });
- };
-
-}); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/page/page.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/page/page.js
deleted file mode 100644
index 70bd114fb..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/page/page.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ui = app.ns("ui");
-
- ui.Page = ui.AbstractWidget.extend({
- show: function() {
- this.el.show();
- },
- hide: function() {
- this.el.hide();
- }
- });
-
-})( this.app ); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/panelForm/panelForm.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/panelForm/panelForm.css
deleted file mode 100644
index cd4138e23..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/panelForm/panelForm.css
+++ /dev/null
@@ -1,12 +0,0 @@
-.uiPanelForm-field {
- display: block;
- padding: 2px 0;
- clear: both;
-}
-
-.uiPanelForm-label {
- float: left;
- width: 200px;
- padding: 3px 7px;
- text-align: right;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/panelForm/panelForm.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/panelForm/panelForm.js
deleted file mode 100644
index 1bfbbdb4b..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/panelForm/panelForm.js
+++ /dev/null
@@ -1,41 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var ui = app.ns("ui");
- var ut = app.ns("ut");
-
- ui.PanelForm = ui.AbstractWidget.extend({
- defaults: {
- fields: null // (required) instanceof app.ux.FieldCollection
- },
- init: function(parent) {
- this._super();
- this.el = $.joey(this._main_template());
- this.attach( parent );
- },
- _main_template: function() {
- return { tag: "DIV", id: this.id(), cls: "uiPanelForm", children: this.config.fields.fields.map(this._field_template, this) };
- },
- _field_template: function(field) {
- return { tag: "LABEL", cls: "uiPanelForm-field", children: [
- { tag: "DIV", cls: "uiPanelForm-label", children: [ field.label, ut.require_template(field) ] },
- field
- ]};
- }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/queryFilter/queryFilter.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/queryFilter/queryFilter.css
deleted file mode 100644
index dfe055cd7..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/queryFilter/queryFilter.css
+++ /dev/null
@@ -1,62 +0,0 @@
-.uiQueryFilter {
- width: 350px;
- padding: 5px;
- background: #d8e7ff;
- background: -moz-linear-gradient(left, #d8e7ff, #e8f1ff);
- background: -webkit-linear-gradient(left, #d8e7ff, #e8f1ff);
-}
-
-.uiQueryFilter DIV.uiQueryFilter-section {
- margin-bottom: 5px;
-}
-
-.uiQueryFilter HEADER {
- display: block;
- font-variant: small-caps;
- font-weight: bold;
- margin: 5px 0;
-}
-
-.uiQueryFilter-aliases SELECT {
- width: 100%;
-}
-
-.uiQueryFilter-booble {
- cursor: pointer;
- background: #e8f1ff;
- border: 1px solid #e8f1ff;
- border-radius: 5px;
- padding: 1px 4px;
- margin-bottom: 1px;
- overflow: hidden;
- white-space: nowrap;
-}
-
-.uiQueryFilter-booble.selected {
- background: #dae3f0;
- border-top: 1px solid #c8d4e6;
- border-left: 1px solid #c8d4e6;
- border-bottom: 1px solid #ffffff;
- border-right: 1px solid #ffffff;
-}
-
-.uiQueryFilter-filterName {
- background-color: #cbdfff;
- margin-bottom: 4px;
- padding: 3px;
- cursor: pointer;
-}
-
-.uiQueryFilter-filters INPUT {
- width: 300px;
-}
-
-.uiQueryFilter-subMultiFields {
- padding-left: 10px;
-}
-
-.uiQueryFilter-rangeHintFrom,
-.uiQueryFilter-rangeHintTo {
- margin: 0;
- opacity: 0.75;
-} \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/queryFilter/queryFilter.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/queryFilter/queryFilter.js
deleted file mode 100644
index 3148ad9ea..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/queryFilter/queryFilter.js
+++ /dev/null
@@ -1,292 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
- var ut = app.ns("ut");
-
- ui.QueryFilter = ui.AbstractWidget.extend({
- defaults: {
- metadata: null, // (required) instanceof app.data.MetaData
- query: null // (required) instanceof app.data.Query that the filters will act apon
- },
- init: function() {
- this._super();
- this.metadata = this.config.metadata;
- this.query = this.config.query;
- this.el = $(this._main_template());
- },
- helpTypeMap: {
- "date" : "QueryFilter.DateRangeHelp"
- },
- requestUpdate: function(jEv) {
- if(jEv && jEv.originalEvent) { // we only want to update on real user interaction not generated events
- this.query.setPage(1);
- this.query.query();
- }
- },
- getSpec: function(fieldName) {
- return this.metadata.fields[fieldName];
- },
- _selectAlias_handler: function(jEv) {
- var indices = (jEv.target.selectedIndex === 0) ? [] : this.metadata.getIndices($(jEv.target).val());
- $(".uiQueryFilter-index").each(function(i, el) {
- var jEl = $(el);
- if(indices.contains(jEl.text()) !== jEl.hasClass("selected")) {
- jEl.click();
- }
- });
- this.requestUpdate(jEv);
- },
- _selectIndex_handler: function(jEv) {
- var jEl = $(jEv.target).closest(".uiQueryFilter-index");
- jEl.toggleClass("selected");
- var selected = jEl.hasClass("selected");
- this.query.setIndex(jEl.text(), selected);
- if(selected) {
- var types = this.metadata.getTypes(this.query.indices);
- this.el.find("DIV.uiQueryFilter-type.selected").each(function(n, el) {
- if(! types.contains($(el).text())) {
- $(el).click();
- }
- });
- }
- this.requestUpdate(jEv);
- },
- _selectType_handler: function(jEv) {
- var jEl = $(jEv.target).closest(".uiQueryFilter-type");
- jEl.toggleClass("selected");
- var type = jEl.text(), selected = jEl.hasClass("selected");
- this.query.setType(type, selected);
- if(selected) {
- var indices = this.metadata.types[type].indices;
- // es throws a 500 if searching an index for a type it does not contain - so we prevent that
- this.el.find("DIV.uiQueryFilter-index.selected").each(function(n, el) {
- if(! indices.contains($(el).text())) {
- $(el).click();
- }
- });
- // es throws a 500 if you specify types from different indices with _all
- jEl.siblings(".uiQueryFilter-type.selected").forEach(function(el) {
- if(this.metadata.types[$(el).text()].indices.intersection(indices).length === 0) {
- $(el).click();
- }
- }, this);
- }
- this.requestUpdate(jEv);
- },
- _openFilter_handler: function(section) {
- var field_name = section.config.title;
- if(! section.loaded) {
- var spec = this.getSpec(field_name);
- if(spec.core_type === "string") {
- section.body.append(this._textFilter_template(spec));
- } else if(spec.core_type === "date") {
- section.body.append(this._dateFilter_template(spec));
- section.body.append(new ui.DateHistogram({ printEl: section.body.find("INPUT"), cluster: this.cluster, query: this.query, spec: spec }));
- } else if(spec.core_type === "number") {
- section.body.append(this._numericFilter_template(spec));
- } else if(spec.core_type === 'boolean') {
- section.body.append(this._booleanFilter_template(spec));
- } else if (spec.core_type === 'multi_field') {
- section.body.append(this._multiFieldFilter_template(section, spec));
- }
- section.loaded = true;
- }
- section.on("animComplete", function(section) { section.body.find("INPUT").focus(); });
- },
- _textFilterChange_handler: function(jEv) {
- var jEl = $(jEv.target).closest("INPUT");
- var val = jEl.val();
- var spec = jEl.data("spec");
- var uqids = jEl.data("uqids") || [];
- uqids.forEach(function(uqid) {
- uqid && this.query.removeClause(uqid);
- }, this);
- if(val.length) {
- if(jEl[0] === document.activeElement && jEl[0].selectionStart === jEl[0].selectionEnd) {
- val = val.replace(new RegExp("(.{"+jEl[0].selectionStart+"})"), "$&*");
- }
- uqids = val.split(/\s+/).map(function(term) {
- // Figure out the actual field name - needed for multi_field, because
- // querying for "field.field" will not work. Simply "field" must be used
- // if nothing is aliased.
- var fieldNameParts = spec.field_name.split('.');
- var part = fieldNameParts.length - 1;
- var name = fieldNameParts[part];
- while (part >= 1) {
- if (fieldNameParts[part] !== fieldNameParts[part - 1]) {
- name = fieldNameParts[part - 1] + "." + name;
- }
- part--;
- }
- return term && this.query.addClause(term, name, "wildcard", "must");
- }, this);
- }
- jEl.data("uqids", uqids);
- this.requestUpdate(jEv);
- },
- _dateFilterChange_handler: function(jEv) {
- var jEl = $(jEv.target).closest("INPUT");
- var val = jEl.val();
- var spec = jEl.data("spec");
- var uqid = jEl.data("uqid") || null;
- var range = window.dateRangeParser.parse(val);
- var lastRange = jEl.data("lastRange");
- if(!range || (lastRange && lastRange.start === range.start && lastRange.end === range.end)) {
- return;
- }
- uqid && this.query.removeClause(uqid);
- if((range.start && range.end) === null) {
- uqid = null;
- } else {
- var value = {};
- if( range.start ) {
- value["gte"] = range.start;
- }
- if( range.end ) {
- value["lte"] = range.end;
- }
- uqid = this.query.addClause( value, spec.field_name, "range", "must");
- }
- jEl.data("lastRange", range);
- jEl.siblings(".uiQueryFilter-rangeHintFrom")
- .text(i18n.text("QueryFilter.DateRangeHint.from", range.start && new Date(range.start).toUTCString()));
- jEl.siblings(".uiQueryFilter-rangeHintTo")
- .text(i18n.text("QueryFilter.DateRangeHint.to", range.end && new Date(range.end).toUTCString()));
- jEl.data("uqid", uqid);
- this.requestUpdate(jEv);
- },
- _numericFilterChange_handler: function(jEv) {
- var jEl = $(jEv.target).closest("INPUT");
- var val = jEl.val();
- var spec = jEl.data("spec");
- var uqid = jEl.data("uqid") || null;
- var lastRange = jEl.data("lastRange");
- var range = (function(val) {
- var ops = val.split(/->|<>|</).map( function(v) { return parseInt(v.trim(), 10); });
- if(/<>/.test(val)) {
- return { gte: (ops[0] - ops[1]), lte: (ops[0] + ops[1]) };
- } else if(/->|</.test(val)) {
- return { gte: ops[0], lte: ops[1] };
- } else {
- return { gte: ops[0], lte: ops[0] };
- }
- })(val || "");
- if(!range || (lastRange && lastRange.lte === range.lte && lastRange.gte === range.gte)) {
- return;
- }
- jEl.data("lastRange", range);
- uqid && this.query.removeClause(uqid);
- uqid = this.query.addClause( range, spec.field_name, "range", "must");
- jEl.data("uqid", uqid);
- this.requestUpdate(jEv);
- },
- _booleanFilterChange_handler: function( jEv ) {
- var jEl = $(jEv.target).closest("SELECT");
- var val = jEl.val();
- var spec = jEl.data("spec");
- var uqid = jEl.data("uqid") || null;
- uqid && this.query.removeClause(uqid);
- if(val === "true" || val === "false") {
- jEl.data("uqid", this.query.addClause(val, spec.field_name, "term", "must") );
- }
- this.requestUpdate(jEv);
- },
- _main_template: function() {
- return { tag: "DIV", id: this.id(), cls: "uiQueryFilter", children: [
- this._aliasSelector_template(),
- this._indexSelector_template(),
- this._typesSelector_template(),
- this._filters_template()
- ] };
- },
- _aliasSelector_template: function() {
- var aliases = Object.keys(this.metadata.aliases).sort();
- aliases.unshift( i18n.text("QueryFilter.AllIndices") );
- return { tag: "DIV", cls: "uiQueryFilter-section uiQueryFilter-aliases", children: [
- { tag: "SELECT", onChange: this._selectAlias_handler, children: aliases.map(ut.option_template) }
- ] };
- },
- _indexSelector_template: function() {
- var indices = Object.keys( this.metadata.indices ).sort();
- return { tag: "DIV", cls: "uiQueryFilter-section uiQueryFilter-indices", children: [
- { tag: "HEADER", text: i18n.text("QueryFilter-Header-Indices") },
- { tag: "DIV", onClick: this._selectIndex_handler, children: indices.map( function( name ) {
- return { tag: "DIV", cls: "uiQueryFilter-booble uiQueryFilter-index", text: name };
- })}
- ] };
- },
- _typesSelector_template: function() {
- var types = Object.keys( this.metadata.types ).sort();
- return { tag: "DIV", cls: "uiQueryFilter-section uiQueryFilter-types", children: [
- { tag: "HEADER", text: i18n.text("QueryFilter-Header-Types") },
- { tag: "DIV", onClick: this._selectType_handler, children: types.map( function( name ) {
- return { tag: "DIV", cls: "uiQueryFilter-booble uiQueryFilter-type", text: name };
- })}
- ] };
- },
- _filters_template: function() {
- var _metadataFields = this.metadata.fields;
- var fields = Object.keys( _metadataFields ).sort()
- .filter(function(d) { return (_metadataFields[d].core_type !== undefined); });
- return { tag: "DIV", cls: "uiQueryFilter-section uiQueryFilter-filters", children: [
- { tag: "HEADER", text: i18n.text("QueryFilter-Header-Fields") },
- { tag: "DIV", children: fields.map( function(name ) {
- return new app.ui.SidebarSection({
- title: name,
- help: this.helpTypeMap[this.metadata.fields[ name ].type],
- onShow: this._openFilter_handler
- });
- }, this ) }
- ] };
- },
- _textFilter_template: function(spec) {
- return { tag: "INPUT", data: { spec: spec }, onKeyup: this._textFilterChange_handler };
- },
- _dateFilter_template: function(spec) {
- return { tag: "DIV", children: [
- { tag: "INPUT", data: { spec: spec }, onKeyup: this._dateFilterChange_handler },
- { tag: "PRE", cls: "uiQueryFilter-rangeHintFrom", text: i18n.text("QueryFilter.DateRangeHint.from", "")},
- { tag: "PRE", cls: "uiQueryFilter-rangeHintTo", text: i18n.text("QueryFilter.DateRangeHint.to", "") }
- ]};
- },
- _numericFilter_template: function(spec) {
- return { tag: "INPUT", data: { spec: spec }, onKeyup: this._numericFilterChange_handler };
- },
- _booleanFilter_template: function(spec) {
- return { tag: "SELECT", data: { spec: spec }, onChange: this._booleanFilterChange_handler,
- children: [ i18n.text("QueryFilter.AnyValue"), "true", "false" ].map( function( val ) {
- return { tag: "OPTION", value: val, text: val };
- })
- };
- },
- _multiFieldFilter_template: function(section, spec) {
- return {
- tag : "DIV", cls : "uiQueryFilter-subMultiFields", children : acx.eachMap(spec.fields, function(name, data) {
- if (name === spec.field_name) {
- section.config.title = spec.field_name + "." + name;
- return this._openFilter_handler(section);
- }
- return new app.ui.SidebarSection({
- title : data.field_name, help : this.helpTypeMap[data.type], onShow : this._openFilter_handler
- });
- }, this)
- };
- }
- });
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButton.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButton.js
deleted file mode 100644
index 189cd4e2f..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButton.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
-
- ui.RefreshButton = ui.SplitButton.extend({
- defaults: {
- timer: -1
- },
- init: function( parent ) {
- this.config.label = i18n.text("General.RefreshResults");
- this._super( parent );
- this.set( this.config.timer );
- },
- set: function( value ) {
- this.value = value;
- window.clearInterval( this._timer );
- if( this.value > 0 ) {
- this._timer = window.setInterval( this._refresh_handler, this.value );
- }
- },
- _click_handler: function() {
- this._refresh_handler();
- },
- _select_handler: function( el, event ) {
- this.set( event.value );
- this.fire("change", this );
- },
- _refresh_handler: function() {
- this.fire("refresh", this );
- },
- _getItems: function() {
- return [
- { text: i18n.text("General.ManualRefresh"), value: -1 },
- { text: i18n.text("General.RefreshQuickly"), value: 100 },
- { text: i18n.text("General.Refresh5seconds"), value: 5000 },
- { text: i18n.text("General.Refresh1minute"), value: 60000 }
- ];
- }
- });
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButtonDemo.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButtonDemo.js
deleted file mode 100644
index 585321aef..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButtonDemo.js
+++ /dev/null
@@ -1,27 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-$( function() {
-
- var ui = window.app.ns("ui");
-
- window.builder = function() {
- return new ui.RefreshButton({
- onRefresh: function() { console.log("-> refresh", arguments ); },
- onChange: function() { console.log("-> change", arguments ); }
- });
- };
-
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButtonSpec.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButtonSpec.js
deleted file mode 100644
index 0adbb5110..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/refreshButton/refreshButtonSpec.js
+++ /dev/null
@@ -1,107 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-describe("app.ui.RefreshButton", function() {
-
- var RefreshButton = window.app.ui.RefreshButton;
-
- var r, refresh_handler, change_handler;
-
- function openMenuPanel( button, label ) {
- button.el.find("BUTTON").eq(1).click();
- $(".uiMenuPanel-label:contains(" + label + ")").click();
- test.clock.tick(); // menuPanel -> bind _close_handler
- }
-
-
- beforeEach( function() {
- test.clock.steal();
- refresh_handler = jasmine.createSpy("refresh_handler");
- change_handler = jasmine.createSpy("change_handler");
- r = new RefreshButton({
- onRefresh: refresh_handler,
- onChange: change_handler
- });
- r.attach( document.body );
- });
-
- afterEach( function() {
- r.remove();
- test.clock.restore();
- });
-
- it("should have an initial default value", function() {
- expect( r.value ).toBe( -1 );
- });
-
- it("should fire a refresh event after clicking the refresh button ", function() {
- r.el.find("BUTTON").eq(0).click();
-
- expect( refresh_handler ).toHaveBeenCalled();
- });
-
- it("should change the refresh rate when set it called", function() {
- r.set( 100 );
- expect( r.value ).toBe( 100 );
- });
-
- it("should set an interval when rate is set to a positive value", function() {
- r.set( 100 );
- test.clock.tick();
- expect( refresh_handler.calls.count() ).toBe( 1 );
- });
-
- it("should not set an interval when rate is set to a non positive value", function() {
- r.set( -1 );
- test.clock.tick();
- expect( refresh_handler.calls.count() ).toBe( 0 );
- });
-
- it("should fire a refresh event on intervals if refresh menu item is set to quickly", function() {
- openMenuPanel( r, "quickly" );
-
- expect( refresh_handler.calls.count() ).toBe( 0 );
- test.clock.tick();
- expect( refresh_handler.calls.count() ).toBe( 1 );
- test.clock.tick();
- expect( refresh_handler.calls.count() ).toBe( 2 );
- });
-
- it("should not fire refresh events when user selects Manual", function() {
-
- openMenuPanel( r, "quickly" );
-
- expect( refresh_handler.calls.count() ).toBe( 0 );
- test.clock.tick();
- expect( refresh_handler.calls.count() ).toBe( 1 );
-
- openMenuPanel( r, "Manual" );
-
- test.clock.tick();
- expect( refresh_handler.calls.count() ).toBe( 1 );
- test.clock.tick();
- expect( refresh_handler.calls.count() ).toBe( 1 );
- });
-
- it("should fire a change event when a new refresh rate is selected", function() {
- openMenuPanel( r, "quickly" );
- expect( change_handler.calls.count() ).toBe( 1 );
- expect( r.value ).toBe( 100 );
- openMenuPanel( r, "Manual" );
- expect( change_handler.calls.count() ).toBe( 2 );
- expect( r.value ).toBe( -1 );
- });
-
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/resultTable/resultTable.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/resultTable/resultTable.js
deleted file mode 100644
index 11999a915..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/resultTable/resultTable.js
+++ /dev/null
@@ -1,70 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var ui = app.ns("ui");
-
- ui.ResultTable = ui.Table.extend({
- defaults: {
- width: 500,
- height: 400
- },
-
- init: function() {
- this._super();
- this.on("rowClick", this._showPreview_handler);
- this.selectedRow = null;
- $(document).bind("keydown", this._nav_handler);
- },
- remove: function() {
- $(document).unbind("keydown", this._nav_handler);
- this._super();
- },
- attach: function(parent) {
- if(parent) {
- var height = parent.height() || ( $(document).height() - parent.offset().top - 41 ); // 41 = height in px of .uiTable-tools + uiTable-header
- var width = parent.width();
- this.el.width( width );
- this.body.width( width ).height( height );
- }
- this._super(parent);
- },
- showPreview: function(row) {
- row.addClass("selected");
- this.preview = new app.ui.JsonPanel({
- title: i18n.text("Browser.ResultSourcePanelTitle"),
- json: row.data("row")._source,
- onClose: function() { row.removeClass("selected"); }
- });
- },
- _nav_handler: function(jEv) {
- if(jEv.keyCode !== 40 && jEv.keyCode !== 38) {
- return;
- }
- this.selectedRow && this.preview && this.preview.remove();
- if(jEv.keyCode === 40) { // up arrow
- this.selectedRow = this.selectedRow ? this.selectedRow.next("TR") : this.body.find("TR:first");
- } else if(jEv.keyCode === 38) { // down arrow
- this.selectedRow = this.selectedRow ? this.selectedRow.prev("TR") : this.body.find("TR:last");
- }
- this.selectedRow && this.showPreview(this.selectedRow);
- },
- _showPreview_handler: function(obj, data) {
- this.showPreview(this.selectedRow = data.row);
- }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/selectMenuPanel/selectMenuPanel.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/selectMenuPanel/selectMenuPanel.css
deleted file mode 100644
index 7315527df..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/selectMenuPanel/selectMenuPanel.css
+++ /dev/null
@@ -1,11 +0,0 @@
-.uiSelectMenuPanel .uiMenuPanel-label {
- margin-left: 1em;
- padding-left: 4px;
-}
-
-.uiSelectMenuPanel .uiMenuPanel-item.selected .uiMenuPanel-label:before {
- content: "\2713";
- width: 12px;
- margin-left: -12px;
- display: inline-block;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/selectMenuPanel/selectMenuPanel.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/selectMenuPanel/selectMenuPanel.js
deleted file mode 100644
index 49cecca13..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/selectMenuPanel/selectMenuPanel.js
+++ /dev/null
@@ -1,48 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ui = app.ns("ui");
-
- ui.SelectMenuPanel = ui.MenuPanel.extend({
- defaults: {
- items: [], // (required) an array of menu items
- value: null
- },
- _baseCls: "uiSelectMenuPanel uiMenuPanel",
- init: function() {
- this.value = this.config.value;
- this._super();
- },
- _getItems: function() {
- return this.config.items.map( function( item ) {
- return {
- text: item.text,
- selected: this.value === item.value,
- onclick: function( jEv ) {
- var el = $( jEv.target ).closest("LI");
- el.parent().children().removeClass("selected");
- el.addClass("selected");
- this.fire( "select", this, { value: item.value } );
- this.value = item.value;
- }.bind(this)
- };
- }, this );
-
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/sidebarSection/sidebarSection.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/sidebarSection/sidebarSection.css
deleted file mode 100644
index 654389fcd..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/sidebarSection/sidebarSection.css
+++ /dev/null
@@ -1,28 +0,0 @@
-.uiSidebarSection-head {
- background-color: #b9cfff;
- background-image: url('data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAcCAMAAABifa5OAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAMAUExURQUCFf///wICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKCgoODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4yMjI2NjY6Ojo+Pj5CQkJGRkZKSkpOTk5SUlJWVlZaWlpeXl5iYmJmZmZqampubm5ycnJ2dnZ6enp+fn6CgoKGhoaKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq6ysrK2tra6urq+vr7CwsLGxsbKysrOzs7S0tLW1tba2tre3t7i4uLm5ubq6uru7u7y8vL29vb6+vr+/v8DAwMHBwcLCwsPDw8TExMXFxcbGxsfHx8jIyMnJycrKysvLy8zMzM3Nzc7Ozs/Pz9DQ0NHR0dLS0tPT09TU1NXV1dbW1tfX19jY2NnZ2dra2tvb29zc3N3d3d7e3t/f3+Dg4OHh4eLi4uPj4+Tk5OXl5ebm5ufn5+jo6Onp6erq6uvr6+zs7O3t7e7u7u/v7/Dw8PHx8fLy8vPz8/T09PX19fb29vf39/j4+Pn5+fr6+vv7+/z8/P39/f7+/v///2Oyy/cAAAACdFJOU/8A5bcwSgAAADxJREFUeNq8zzkOACAMA8Hd/3+agiuRcIsrRopIjArOoLK1QAMNNBCRPkhLyzkn35Bjfd7JR1Nr09NoDACnvgDl1zlzoQAAAABJRU5ErkJggg==');
- background-repeat: no-repeat;
- background-position: 2px 5px;
- margin-bottom: 1px;
- padding: 3px 3px 3px 17px;
- cursor: pointer;
-}
-
-.shown > .uiSidebarSection-head {
- background-position: 2px -13px;
-}
-
-.uiSidebarSection-body {
- margin-bottom: 3px;
- display: none;
-}
-
-.uiSidebarSection-help {
- text-shadow: #228 1px 1px 2px;
- color: blue;
- cursor: pointer;
-}
-
-.uiSidebarSection-help:hover {
- text-decoration: underline;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/sidebarSection/sidebarSection.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/sidebarSection/sidebarSection.js
deleted file mode 100644
index e9f2300b0..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/sidebarSection/sidebarSection.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
-
- ui.SidebarSection = ui.AbstractWidget.extend({
- defaults: {
- title: "",
- help: null,
- body: null,
- open: false
- },
- init: function() {
- this._super();
- this.el = $.joey( this._main_template() );
- this.body = this.el.children(".uiSidebarSection-body");
- this.config.open && ( this.el.addClass("shown") && this.body.css("display", "block") );
- },
- _showSection_handler: function( ev ) {
- var shown = $( ev.target ).closest(".uiSidebarSection")
- .toggleClass("shown")
- .children(".uiSidebarSection-body").slideToggle(200, function() { this.fire("animComplete", this); }.bind(this))
- .end()
- .hasClass("shown");
- this.fire(shown ? "show" : "hide", this);
- },
- _showHelp_handler: function( ev ) {
- new ui.HelpPanel({ref: this.config.help});
- ev.stopPropagation();
- },
- _main_template: function() { return (
- { tag: "DIV", cls: "uiSidebarSection", children: [
- (this.config.title && { tag: "DIV", cls: "uiSidebarSection-head", onclick: this._showSection_handler, children: [
- this.config.title,
- ( this.config.help && { tag: "SPAN", cls: "uiSidebarSection-help pull-right", onclick: this._showHelp_handler, text: i18n.text("General.HelpGlyph") } )
- ] }),
- { tag: "DIV", cls: "uiSidebarSection-body", children: [ this.config.body ] }
- ] }
- ); }
- });
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButton.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButton.css
deleted file mode 100644
index e8d275296..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButton.css
+++ /dev/null
@@ -1,33 +0,0 @@
-.uiSplitButton {
- white-space: nowrap;
-}
-
-.uiSplitButton .uiButton:first-child {
- margin-right: 0;
- display: inline-block;
-}
-
-.uiSplitButton .uiButton:first-child .uiButton-content {
- border-right-width: 1;
- border-right-color: #5296c7;
- border-top-right-radius: 0;
- border-bottom-right-radius: 0;
-}
-
-.uiSplitButton .uiMenuButton {
- margin-left: 0;
-}
-
-.uiSplitButton .uiButton:last-child .uiButton-content {
- border-radius: 2px;
- border-left-width: 1;
- border-left-color: #96c6eb;
- border-top-left-radius: 0;
- border-bottom-left-radius: 0;
- height: 20px;
-}
-
-.uiSplitButton .uiButton:last-child .uiButton-label {
- padding: 2px 17px 2px 6px;
- margin-left: -8px;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButton.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButton.js
deleted file mode 100644
index 1e5b27637..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButton.js
+++ /dev/null
@@ -1,69 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var ui = app.ns("ui");
-
- ui.SplitButton = ui.AbstractWidget.extend({
- defaults: {
- items: [],
- label: ""
- },
- _baseCls: "uiSplitButton",
- init: function( parent ) {
- this._super( parent );
- this.value = null;
- this.button = new ui.Button({
- label: this.config.label,
- onclick: this._click_handler
- });
- this.menu = new ui.SelectMenuPanel({
- value: this.config.value,
- items: this._getItems(),
- onSelect: this._select_handler
- });
- this.menuButton = new ui.MenuButton({
- label: "\u00a0",
- menu: this.menu
- });
- this.el = $.joey(this._main_template());
- },
- remove: function() {
- this.menu.remove();
- },
- disable: function() {
- this.button.disable();
- },
- enable: function() {
- this.button.enable();
- },
- _click_handler: function() {
- this.fire("click", this, { value: this.value } );
- },
- _select_handler: function( panel, event ) {
- this.fire( "select", this, event );
- },
- _getItems: function() {
- return this.config.items;
- },
- _main_template: function() {
- return { tag: "DIV", cls: this._baseCls, children: [
- this.button, this.menuButton
- ] };
- }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButtonDemo.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButtonDemo.js
deleted file mode 100644
index 2ef6d0bdd..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/splitButton/splitButtonDemo.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-$( function() {
-
- var ui = window.app.ns("ui");
-
- window.builder = function() {
- return new ui.SplitButton({
- label: "Default",
- items: [
- { label: "Action" },
- { label: "Another Action" },
- { label: "Selected", selected: true }
- ]
- });
- };
-
-}); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/structuredQuery/structuredQuery.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/structuredQuery/structuredQuery.css
deleted file mode 100644
index 502204587..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/structuredQuery/structuredQuery.css
+++ /dev/null
@@ -1,7 +0,0 @@
-.uiStructuredQuery {
- padding: 10px;
-}
-
-.uiStructuredQuery-out {
- min-height: 30px;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/structuredQuery/structuredQuery.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/structuredQuery/structuredQuery.js
deleted file mode 100644
index 11d3095d5..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/structuredQuery/structuredQuery.js
+++ /dev/null
@@ -1,110 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app, i18n ) {
-
- var ui = app.ns("ui");
- var data = app.ns("data");
-
- var StructuredQuery = ui.AbstractWidget.extend({
- defaults: {
- cluster: null // (required) instanceof app.services.Cluster
- },
- _baseCls: "uiStructuredQuery",
- init: function(parent) {
- this._super();
- this.selector = new ui.IndexSelector({
- onIndexChanged: this._indexChanged_handler,
- cluster: this.config.cluster
- });
- this.el = $(this._main_template());
- this.out = this.el.find("DIV.uiStructuredQuery-out");
- this.attach( parent );
- },
-
- _indexChanged_handler: function( index ) {
- this.filter && this.filter.remove();
- this.filter = new ui.FilterBrowser({
- cluster: this.config.cluster,
- index: index,
- onStartingSearch: function() { this.el.find("DIV.uiStructuredQuery-out").text( i18n.text("General.Searching") ); this.el.find("DIV.uiStructuredQuery-src").hide(); }.bind(this),
- onSearchSource: this._searchSource_handler,
- onResults: this._results_handler
- });
- this.el.find(".uiStructuredQuery-body").append(this.filter);
- },
-
- _results_handler: function( filter, event ) {
- var typeMap = {
- "json": this._jsonResults_handler,
- "table": this._tableResults_handler,
- "csv": this._csvResults_handler
- };
- typeMap[ event.type ].call( this, event.data, event.metadata );
- },
- _jsonResults_handler: function( results ) {
- this.el.find("DIV.uiStructuredQuery-out").empty().append( new ui.JsonPretty({ obj: results }));
- },
- _csvResults_handler: function( results ) {
- this.el.find("DIV.uiStructuredQuery-out").empty().append( new ui.CSVTable({ results: results }));
- },
- _tableResults_handler: function( results, metadata ) {
- // hack up a QueryDataSourceInterface so that StructuredQuery keeps working without using a Query object
- var qdi = new data.QueryDataSourceInterface({ metadata: metadata, query: new data.Query() });
- var tab = new ui.Table( {
- store: qdi,
- height: 400,
- width: this.out.innerWidth()
- } ).attach(this.out.empty());
- qdi._results_handler(qdi.config.query, results);
- },
-
- _showRawJSON : function() {
- if($("#rawJsonText").length === 0) {
- var hiddenButton = $("#showRawJSON");
- var jsonText = $({tag: "P", type: "p", id: "rawJsonText"});
- jsonText.text(hiddenButton[0].value);
- hiddenButton.parent().append(jsonText);
- }
- },
-
- _searchSource_handler: function(src) {
- var searchSourceDiv = this.el.find("DIV.uiStructuredQuery-src");
- searchSourceDiv.empty().append(new app.ui.JsonPretty({ obj: src }));
- if(typeof JSON !== "undefined") {
- var showRawJSON = $({ tag: "BUTTON", type: "button", text: i18n.text("StructuredQuery.ShowRawJson"), id: "showRawJSON", value: JSON.stringify(src), onclick: this._showRawJSON });
- searchSourceDiv.append(showRawJSON);
- }
- searchSourceDiv.show();
- },
-
- _main_template: function() {
- return { tag: "DIV", cls: this._baseCls, children: [
- this.selector,
- { tag: "DIV", cls: "uiStructuredQuery-body" },
- { tag: "DIV", cls: "uiStructuredQuery-src", css: { display: "none" } },
- { tag: "DIV", cls: "uiStructuredQuery-out" }
- ]};
- }
- });
-
- ui.StructuredQuery = ui.Page.extend({
- init: function() {
- this.q = new StructuredQuery( this.config );
- this.el = this.q.el;
- }
- });
-
-})( this.jQuery, this.app, this.i18n );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/table/table.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/table/table.css
deleted file mode 100644
index ea8e0cfd4..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/table/table.css
+++ /dev/null
@@ -1,92 +0,0 @@
-.uiTable TABLE {
- border-collapse: collapse;
-}
-
-.uiTable-body {
- overflow-y: scroll;
- overflow-x: auto;
-}
-
-.uiTable-headers {
- overflow-x: hidden;
-}
-
-.uiTable-body TD {
- white-space: nowrap;
-}
-
-.uiTable-body .uiTable-header-row TH,
-.uiTable-body .uiTable-header-row TH DIV {
- padding-top: 0;
- padding-bottom: 0;
-}
-
-.uiTable-body .uiTable-header-cell > DIV {
- height: 0;
- overflow: hidden;
-}
-
-.uiTable-headercell-menu {
- float: right;
-}
-
-.uiTable-tools {
- padding: 3px 4px;
- height: 14px;
-}
-
-.uiTable-header-row {
- background: #ddd;
- background: -moz-linear-gradient(top, #eee, #ccc);
- background: -webkit-linear-gradient(top, #eee, #ccc);
-}
-
-.uiTable-headercell-text {
- margin-right: 20px;
-}
-
-.uiTable-headercell-menu {
- display: none;
-}
-
-.uiTable-header-row TH {
- border-right: 1px solid #bbb;
- padding: 0;
- text-align: left;
-}
-
-.uiTable-header-row TH > DIV {
- padding: 3px 4px;
- border-right: 1px solid #eee;
-}
-
-.uiTable-headerEndCap > DIV {
- width: 19px;
-}
-
-.uiTable-header-row .uiTable-sort {
- background: #ccc;
- background: -moz-linear-gradient(top, #bebebe, #ccc);
- background: -webkit-linear-gradient(top, #bebebe, #ccc);
-}
-.uiTable-header-row TH.uiTable-sort > DIV {
- border-right: 1px solid #ccc;
-}
-
-.uiTable-sort .uiTable-headercell-menu {
- display: block;
-}
-
-.uiTable TABLE TD {
- border-right: 1px solid transparent;
- padding: 3px 4px;
-}
-
-.uiTable-body TABLE TR:nth-child(even) {
- background: #f3f3f3;
-}
-
-.uiTable-body TABLE TR.selected {
- color: white;
- background: #6060f1;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/table/table.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/table/table.js
deleted file mode 100644
index 91827d1bf..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/table/table.js
+++ /dev/null
@@ -1,117 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-( function( $, app ) {
-
- var ui = app.ns("ui");
-
- ui.Table = ui.AbstractWidget.extend({
- defaults: {
- store: null, // (required) implements interface app.data.DataSourceInterface
- height: 0,
- width: 0
- },
- _baseCls: "uiTable",
- init: function(parent) {
- this._super();
- this.initElements(parent);
- this.config.store.on("data", this._data_handler);
- },
- attach: function(parent) {
- if(parent) {
- this._super(parent);
- this._reflow();
- }
- },
- initElements: function(parent) {
- this.el = $.joey(this._main_template());
- this.body = this.el.find(".uiTable-body");
- this.headers = this.el.find(".uiTable-headers");
- this.tools = this.el.find(".uiTable-tools");
- this.attach( parent );
- },
- _data_handler: function(store) {
- this.tools.text(store.summary);
- this.headers.empty().append(this._header_template(store.columns));
- this.body.empty().append(this._body_template(store.data, store.columns));
- this._reflow();
- },
- _reflow: function() {
- var firstCol = this.body.find("TR:first TH.uiTable-header-cell > DIV"),
- headers = this.headers.find("TR:first TH.uiTable-header-cell > DIV");
- for(var i = 0; i < headers.length; i++) {
- $(headers[i]).width( $(firstCol[i]).width() );
- }
- this._scroll_handler();
- },
- _scroll_handler: function(ev) {
- this.el.find(".uiTable-headers").scrollLeft(this.body.scrollLeft());
- },
- _dataClick_handler: function(ev) {
- var row = $(ev.target).closest("TR");
- if(row.length) {
- this.fire("rowClick", this, { row: row } );
- }
- },
- _headerClick_handler: function(ev) {
- var header = $(ev.target).closest("TH.uiTable-header-cell");
- if(header.length) {
- this.fire("headerClick", this, { header: header, column: header.data("column"), dir: header.data("dir") });
- }
- },
- _main_template: function() {
- return { tag: "DIV", id: this.id(), css: { width: this.config.width + "px" }, cls: this._baseCls, children: [
- { tag: "DIV", cls: "uiTable-tools" },
- { tag: "DIV", cls: "uiTable-headers", onclick: this._headerClick_handler },
- { tag: "DIV", cls: "uiTable-body",
- onclick: this._dataClick_handler,
- onscroll: this._scroll_handler,
- css: { height: this.config.height + "px", width: this.config.width + "px" }
- }
- ] };
- },
- _header_template: function(columns) {
- var ret = { tag: "TABLE", children: [ this._headerRow_template(columns) ] };
- ret.children[0].children.push(this._headerEndCap_template());
- return ret;
- },
- _headerRow_template: function(columns) {
- return { tag: "TR", cls: "uiTable-header-row", children: columns.map(function(column) {
- var dir = ((this.config.store.sort.column === column) && this.config.store.sort.dir) || "none";
- return { tag: "TH", data: { column: column, dir: dir }, cls: "uiTable-header-cell" + ((dir !== "none") ? " uiTable-sort" : ""), children: [
- { tag: "DIV", children: [
- { tag: "DIV", cls: "uiTable-headercell-menu", text: dir === "asc" ? "\u25b2" : "\u25bc" },
- { tag: "DIV", cls: "uiTable-headercell-text", text: column }
- ]}
- ]};
- }, this)};
- },
- _headerEndCap_template: function() {
- return { tag: "TH", cls: "uiTable-headerEndCap", children: [ { tag: "DIV" } ] };
- },
- _body_template: function(data, columns) {
- return { tag: "TABLE", children: []
- .concat(this._headerRow_template(columns))
- .concat(data.map(function(row) {
- return { tag: "TR", data: { row: row }, cls: "uiTable-row", children: columns.map(function(column){
- return { tag: "TD", cls: "uiTable-cell", children: [ { tag: "DIV", text: (row[column] || "").toString() } ] };
- })};
- }))
- };
- }
-
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/textField/textField.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/textField/textField.js
deleted file mode 100644
index 0ee98ec54..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/textField/textField.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ui = app.ns("ui");
-
- ui.TextField = ui.AbstractField.extend({
- init: function() {
- this._super();
- },
- _keyup_handler: function() {
- this.fire("change", this );
- },
- _main_template: function() {
- return { tag: "DIV", id: this.id(), cls: "uiField uiTextField", children: [
- { tag: "INPUT",
- type: "text",
- name: this.config.name,
- placeholder: this.config.placeholder,
- onkeyup: this._keyup_handler
- }
- ]};
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/textField/textFieldDemo.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/textField/textFieldDemo.js
deleted file mode 100644
index 9f77159c5..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/textField/textFieldDemo.js
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-$( function() {
-
- var ui = window.app.ns("ui");
-
- window.builder = function() { return (
- { tag: "DIV", children: [
- new ui.TextField({}),
- new ui.TextField({ placeholder: "placeholder" }),
- new ui.TextField({ onchange: function( tf ) { console.log( tf.val() ); } })
- ] }
- ); };
-
-}); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/toolbar/toolbar.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/toolbar/toolbar.css
deleted file mode 100644
index e5cf72f1f..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/toolbar/toolbar.css
+++ /dev/null
@@ -1,24 +0,0 @@
-.uiToolbar {
- height: 28px;
- background: #fdfefe;
- background: -moz-linear-gradient(top, #fdfefe, #eaedef);
- background: -webkit-linear-gradient(top, #fdfefe, #eaedef);
- border-bottom: 1px solid #d2d5d7;
- padding: 3px 10px;
-}
-
-.uiToolbar H2 {
- display: inline-block;
- font-size: 120%;
- margin: 0;
- padding: 5px 20px 5px 0;
-}
-
-.uiToolbar .uiTextField {
- display: inline-block;
-}
-
-.uiToolbar .uiTextField INPUT {
- padding-top: 2px;
- padding-bottom: 5px;
-} \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/toolbar/toolbar.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/toolbar/toolbar.js
deleted file mode 100644
index ac2ad377d..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/toolbar/toolbar.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var ui = app.ns("ui");
-
- ui.Toolbar = ui.AbstractWidget.extend({
- defaults: {
- label: "",
- left: [],
- right: []
- },
- init: function(parent) {
- this._super();
- this.el = $.joey(this._main_template());
- },
- _main_template: function() {
- return { tag: "DIV", cls: "uiToolbar", children: [
- { tag: "DIV", cls: "pull-left", children: [
- { tag: "H2", text: this.config.label }
- ].concat(this.config.left) },
- { tag: "DIV", cls: "pull-right", children: this.config.right }
- ]};
- }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/class.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/class.js
deleted file mode 100644
index 80142637c..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/class.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * base class for creating inheritable classes
- * based on resigs 'Simple Javascript Inheritance Class' (based on base2 and prototypejs)
- * modified with static super and auto config
- * @name Class
- * @constructor
- */
-(function( $, app ){
-
- var ux = app.ns("ux");
-
- var initializing = false, fnTest = /\b_super\b/;
-
- ux.Class = function(){};
-
- ux.Class.extend = function(prop) {
- function Class() {
- if(!initializing) {
- var args = Array.prototype.slice.call(arguments);
- this.config = $.extend( function(t) { // automatically construct a config object based on defaults and last item passed into the constructor
- return $.extend(t._proto && t._proto() && arguments.callee(t._proto()) || {}, t.defaults);
- } (this) , args.pop() );
- this.init && this.init.apply(this, args); // automatically run the init function when class created
- }
- }
-
- initializing = true;
- var prototype = new this();
- initializing = false;
-
- var _super = this.prototype;
- prototype._proto = function() {
- return _super;
- };
-
- for(var name in prop) {
- prototype[name] = typeof prop[name] === "function" && typeof _super[name] === "function" && fnTest.test(prop[name]) ?
- (function(name, fn){
- return function() { this._super = _super[name]; return fn.apply(this, arguments); };
- })(name, prop[name]) : prop[name];
- }
-
- Class.prototype = prototype;
- Class.constructor = Class;
-
- Class.extend = arguments.callee; // make class extendable
-
- return Class;
- };
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/dragdrop.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/dragdrop.js
deleted file mode 100644
index 6f81878cb..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/dragdrop.js
+++ /dev/null
@@ -1,139 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( $, app ) {
-
- var ux = app.ns("ux");
-
- /**
- * Provides drag and drop functionality<br>
- * a DragDrop instance is created for each usage pattern and then used over and over again<br>
- * first a dragObj is defined - this is the jquery node that will be dragged around<br>
- * second, the event callbacks are defined - these allow you control the ui during dragging and run functions when successfully dropping<br>
- * thirdly drop targets are defined - this is a list of DOM nodes, the constructor works in one of two modes:
- * <li>without targets - objects can be picked up and dragged around, dragStart and dragStop events fire</li>
- * <li>with targets - as objects are dragged over targets dragOver, dragOut and DragDrop events fire
- * to start dragging call the DragDrop.pickup_handler() function, dragging stops when the mouse is released.
- * @constructor
- * The following options are supported
- * <dt>targetSelector</dt>
- * <dd>an argument passed directly to jquery to create a list of targets, as such it can be a CSS style selector, or an array of DOM nodes<br>if target selector is null the DragDrop does Drag only and will not fire dragOver dragOut and dragDrop events</dd>
- * <dt>pickupSelector</dt>
- * <dd>a jquery selector. The pickup_handler is automatically bound to matched elements (eg clicking on these elements starts the drag). if pickupSelector is null, the pickup_handler must be manually bound <code>$(el).bind("mousedown", dragdrop.pickup_handler)</code></dd>
- * <dt>dragObj</dt>
- * <dd>the jQuery element to drag around when pickup is called. If not defined, dragObj must be set in onDragStart</dd>
- * <dt>draggingClass</dt>
- * <dd>the class(es) added to items when they are being dragged</dd>
- * The following observables are supported
- * <dt>dragStart</dt>
- * <dd>a callback when start to drag<br><code>function(jEv)</code></dd>
- * <dt>dragOver</dt>
- * <dd>a callback when we drag into a target<br><code>function(jEl)</code></dd>
- * <dt>dragOut</dt>
- * <dd>a callback when we drag out of a target, or when we drop over a target<br><code>function(jEl)</code></dd>
- * <dt>dragDrop</dt>
- * <dd>a callback when we drop on a target<br><code>function(jEl)</code></dd>
- * <dt>dragStop</dt>
- * <dd>a callback when we stop dragging<br><code>function(jEv)</code></dd>
- */
- ux.DragDrop = ux.Observable.extend({
- defaults : {
- targetsSelector : null,
- pickupSelector: null,
- dragObj : null,
- draggingClass : "dragging"
- },
-
- init: function(options) {
- this._super(); // call the class initialiser
-
- this.drag_handler = this.drag.bind(this);
- this.drop_handler = this.drop.bind(this);
- this.pickup_handler = this.pickup.bind(this);
- this.targets = [];
- this.dragObj = null;
- this.dragObjOffset = null;
- this.currentTarget = null;
- if(this.config.pickupSelector) {
- $(this.config.pickupSelector).bind("mousedown", this.pickup_handler);
- }
- },
-
- drag : function(jEv) {
- jEv.preventDefault();
- var mloc = acx.vector( this.lockX || jEv.pageX, this.lockY || jEv.pageY );
- this.dragObj.css(mloc.add(this.dragObjOffset).asOffset());
- if(this.targets.length === 0) {
- return;
- }
- if(this.currentTarget !== null && mloc.within(this.currentTarget[1], this.currentTarget[2])) {
- return;
- }
- if(this.currentTarget !== null) {
- this.fire('dragOut', this.currentTarget[0]);
- this.currentTarget = null;
- }
- for(var i = 0; i < this.targets.length; i++) {
- if(mloc.within(this.targets[i][1], this.targets[i][2])) {
- this.currentTarget = this.targets[i];
- break;
- }
- }
- if(this.currentTarget !== null) {
- this.fire('dragOver', this.currentTarget[0]);
- }
- },
-
- drop : function(jEv) {
- $(document).unbind("mousemove", this.drag_handler);
- $(document).unbind("mouseup", this.drop_handler);
- this.dragObj.removeClass(this.config.draggingClass);
- if(this.currentTarget !== null) {
- this.fire('dragOut', this.currentTarget[0]);
- this.fire('dragDrop', this.currentTarget[0]);
- }
- this.fire('dragStop', jEv);
- this.dragObj = null;
- },
-
- pickup : function(jEv, opts) {
- $.extend(this.config, opts);
- this.fire('dragStart', jEv);
- this.dragObj = this.dragObj || this.config.dragObj;
- this.dragObjOffset = this.config.dragObjOffset || acx.vector(this.dragObj.offset()).sub(jEv.pageX, jEv.pageY);
- this.lockX = this.config.lockX ? jEv.pageX : 0;
- this.lockY = this.config.lockY ? jEv.pageY : 0;
- this.dragObj.addClass(this.config.draggingClass);
- if(!this.dragObj.get(0).parentNode || this.dragObj.get(0).parentNode.nodeType === 11) { // 11 = document fragment
- $(document.body).append(this.dragObj);
- }
- if(this.config.targetsSelector) {
- this.currentTarget = null;
- var targets = ( this.targets = [] );
- // create an array of elements optimised for rapid collision detection calculation
- $(this.config.targetsSelector).each(function(i, el) {
- var jEl = $(el);
- var tl = acx.vector(jEl.offset());
- var br = tl.add(jEl.width(), jEl.height());
- targets.push([jEl, tl, br]);
- });
- }
- $(document).bind("mousemove", this.drag_handler);
- $(document).bind("mouseup", this.drop_handler);
- this.drag_handler(jEv);
- }
- });
-
-})( this.jQuery, this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/fieldCollection.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/fieldCollection.js
deleted file mode 100644
index 01ced60ca..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/fieldCollection.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ux = app.ns("ux");
-
- ux.FieldCollection = ux.Observable.extend({
- defaults: {
- fields: [] // the collection of fields
- },
- init: function() {
- this._super();
- this.fields = this.config.fields;
- },
- validate: function() {
- return this.fields.reduce(function(r, field) {
- return r && field.validate();
- }, true);
- },
- getData: function(type) {
- return this.fields.reduce(function(r, field) {
- r[field.name] = field.val(); return r;
- }, {});
- }
- });
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/observable.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/observable.js
deleted file mode 100644
index 16368512c..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/observable.js
+++ /dev/null
@@ -1,61 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ux = app.ns("ux");
-
- ux.Observable = ux.Class.extend((function() {
- return {
- init: function() {
- this.observers = {};
- for( var opt in this.config ) { // automatically install observers that are defined in the configuration
- if( opt.indexOf( 'on' ) === 0 ) {
- this.on( opt.substring(2) , this.config[ opt ] );
- }
- }
- },
- _getObs: function( type ) {
- return ( this.observers[ type.toLowerCase() ] || ( this.observers[ type.toLowerCase() ] = [] ) );
- },
- on: function( type, fn, params, thisp ) {
- this._getObs( type ).push( { "cb" : fn, "args" : params || [] , "cx" : thisp || this } );
- return this;
- },
- fire: function( type ) {
- var params = Array.prototype.slice.call( arguments, 1 );
- this._getObs( type ).slice().forEach( function( ob ) {
- ob["cb"].apply( ob["cx"], ob["args"].concat( params ) );
- } );
- return this;
- },
- removeAllObservers: function() {
- this.observers = {};
- },
- removeObserver: function( type, fn ) {
- var obs = this._getObs( type ),
- index = obs.reduce( function(p, t, i) { return (t.cb === fn) ? i : p; }, -1 );
- if(index !== -1) {
- obs.splice( index, 1 );
- }
- return this; // make observable functions chainable
- },
- hasObserver: function( type ) {
- return !! this._getObs( type ).length;
- }
- };
- })());
-
-})( this.app ); \ No newline at end of file
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/singleton.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/singleton.js
deleted file mode 100644
index 16dabaf87..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/singleton.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ux = app.ns("ux");
-
- var extend = ux.Observable.extend;
- var instance = function() {
- if( ! ("me" in this) ) {
- this.me = new this();
- }
- return this.me;
- };
-
- ux.Singleton = ux.Observable.extend({});
-
- ux.Singleton.extend = function() {
- var Self = extend.apply( this, arguments );
- Self.instance = instance;
- return Self;
- };
-
-})( this.app );
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/singletonSpec.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/singletonSpec.js
deleted file mode 100644
index 7a137094a..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/singletonSpec.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-describe("app.ux.singleton", function(){
-
-var Singleton = window.app.ux.Singleton;
-
- describe("creating a singleton", function() {
- var X = Singleton.extend({
- foo: function() {
- return "bar";
- }
- });
-
- var Y = Singleton.extend({
- bar: function() {
- return "baz";
- }
- });
-
- it("should have properties like a normal class", function() {
- var a = X.instance();
-
- expect( a instanceof X ).toBe( true );
- expect( a.foo() ).toBe( "bar" );
- });
-
- it("should return single instance each time instance() is called", function() {
- var a = X.instance();
- var b = X.instance();
-
- expect( a ).toBe( b );
- });
-
- it("should not share instances with different singletons", function() {
- var a = X.instance();
- var c = Y.instance();
-
- expect( a ).not.toBe( c );
- });
-
- });
-
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/table.css b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/table.css
deleted file mode 100644
index 7d829c4ce..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/table.css
+++ /dev/null
@@ -1,20 +0,0 @@
-TABLE.table {
- border-collapse: collapse;
-}
-
-
-TABLE.table TH {
- font-weight: normal;
- text-align: left;
- vertical-align: middle;
-}
-
-TABLE.table TBODY.striped TR:nth-child(odd) {
- background: #eee;
-}
-
-TABLE.table H3 {
- margin: 0;
- font-weight: bold;
- font-size: 140%;
-}
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/templates/templateSpec.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/templates/templateSpec.js
deleted file mode 100644
index e75b80686..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/templates/templateSpec.js
+++ /dev/null
@@ -1,96 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-describe("app.ut.byteSize_template", function() {
-
- describe("byteSize_template()", function() {
- var byteSize_template = window.app.ut.byteSize_template;
-
- it("should postfix with a B and have not decimal for number less than 1000", function() {
- expect( byteSize_template( 0 ) ).toBe( "0B" );
- expect( byteSize_template( 1 ) ).toBe( "1B" );
- expect( byteSize_template( 10 ) ).toBe( "10B" );
- expect( byteSize_template( 100 ) ).toBe( "100B" );
- expect( byteSize_template( 999 ) ).toBe( "999B" );
- });
-
- it("should have 0.xxX for values between 1000 and 1023", function() {
- expect( byteSize_template( 1000 ) ).toBe( "0.98ki" );
- expect( byteSize_template( 1024 * 1000 ) ).toBe( "0.98Mi" );
- });
-
- it("should always have three significant digits", function() {
- expect( byteSize_template( 1023 ) ).toBe( "1.00ki" );
- expect( byteSize_template( 1024 ) ).toBe( "1.00ki" );
- expect( byteSize_template( 1025 ) ).toBe( "1.00ki" );
- expect( byteSize_template( 1024 * 5 ) ).toBe( "5.00ki" );
- expect( byteSize_template( 1024 * 55 ) ).toBe( "55.0ki" );
- expect( byteSize_template( 1024 * 555 ) ).toBe( "555ki" );
- });
-
- it("should have the correct postfix", function() {
- expect( byteSize_template( 3 * Math.pow( 1024, 1) ) ).toBe( "3.00ki" );
- expect( byteSize_template( 3 * Math.pow( 1024, 2) ) ).toBe( "3.00Mi" );
- expect( byteSize_template( 3 * Math.pow( 1024, 3) ) ).toBe( "3.00Gi" );
- expect( byteSize_template( 3 * Math.pow( 1024, 4) ) ).toBe( "3.00Ti" );
- expect( byteSize_template( 3 * Math.pow( 1024, 5) ) ).toBe( "3.00Pi" );
- expect( byteSize_template( 3 * Math.pow( 1024, 6) ) ).toBe( "3.00Ei" );
- expect( byteSize_template( 3 * Math.pow( 1024, 7) ) ).toBe( "3.00Zi" );
- expect( byteSize_template( 3 * Math.pow( 1024, 8) ) ).toBe( "3.00Yi" );
- });
-
- it("should show an overflow for stupidly big numbers", function() {
- expect( byteSize_template( 3 * Math.pow( 1024, 10) ) ).toBe( "3.00..E" );
- });
- });
-
- describe("count_template()", function() {
- var count_template = window.app.ut.count_template;
-
- it("should not postfix and not decimal for number less than 1000", function() {
- expect( count_template( 0 ) ).toBe( "0" );
- expect( count_template( 1 ) ).toBe( "1" );
- expect( count_template( 10 ) ).toBe( "10" );
- expect( count_template( 100 ) ).toBe( "100" );
- expect( count_template( 999 ) ).toBe( "999" );
- });
-
- it("should always have three significant digits", function() {
- expect( count_template( 1000 ) ).toBe( "1.00k" );
- expect( count_template( 1005 ) ).toBe( "1.00k" );
- expect( count_template( 1055 ) ).toBe( "1.05k" );
- expect( count_template( 1000 * 5 ) ).toBe( "5.00k" );
- expect( count_template( 1000 * 55 ) ).toBe( "55.0k" );
- expect( count_template( 1000 * 555 ) ).toBe( "555k" );
- });
-
- it("should have the correct postfix", function() {
- expect( count_template( 3 * Math.pow( 1000, 1) ) ).toBe( "3.00k" );
- expect( count_template( 3 * Math.pow( 1000, 2) ) ).toBe( "3.00M" );
- expect( count_template( 3 * Math.pow( 1000, 3) ) ).toBe( "3.00G" );
- expect( count_template( 3 * Math.pow( 1000, 4) ) ).toBe( "3.00T" );
- expect( count_template( 3 * Math.pow( 1000, 5) ) ).toBe( "3.00P" );
- expect( count_template( 3 * Math.pow( 1000, 6) ) ).toBe( "3.00E" );
- expect( count_template( 3 * Math.pow( 1000, 7) ) ).toBe( "3.00Z" );
- expect( count_template( 3 * Math.pow( 1000, 8) ) ).toBe( "3.00Y" );
- });
-
- it("should show an overflow for stupidly big numbers", function() {
- expect( count_template( 3 * Math.pow( 1000, 10) ) ).toBe( "3.00..E" );
- });
- });
-
-
-});
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/templates/templates.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/templates/templates.js
deleted file mode 100644
index 8c1138499..000000000
--- a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ux/templates/templates.js
+++ /dev/null
@@ -1,47 +0,0 @@
-/**
- * Copyright 2010-2013 Ben Birch
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-(function( app ) {
-
- var ut = app.ns("ut");
-
- ut.option_template = function(v) { return { tag: "OPTION", value: v, text: v }; };
-
- ut.require_template = function(f) { return f.require ? { tag: "SPAN", cls: "require", text: "*" } : null; };
-
-
- var sib_prefix = ['B','ki','Mi', 'Gi', 'Ti', 'Pi', 'Ei', 'Zi', 'Yi'];
-
- ut.byteSize_template = function(n) {
- var i = 0;
- while( n >= 1000 ) {
- i++;
- n /= 1024;
- }
- return (i === 0 ? n.toString() : n.toFixed( 3 - parseInt(n,10).toString().length )) + ( sib_prefix[ i ] || "..E" );
- };
-
- var sid_prefix = ['','k','M', 'G', 'T', 'P', 'E', 'Z', 'Y'];
-
- ut.count_template = function(n) {
- var i = 0;
- while( n >= 1000 ) {
- i++;
- n /= 1000;
- }
- return i === 0 ? n.toString() : ( n.toFixed( 3 - parseInt(n,10).toString().length ) + ( sid_prefix[ i ] || "..E" ) );
- };
-
-})( this.app );