From 032927cf8f54a4458d8de94faf1d3fdbf5b8f7c8 Mon Sep 17 00:00:00 2001 From: Alexander Zobnin Date: Sun, 13 Nov 2016 13:16:07 +0300 Subject: [PATCH] Refactor: queryProcessor renamend to queryBuilder. --- src/datasource-zabbix/datasource.js | 18 +++++++++--------- src/datasource-zabbix/query.controller.js | 10 +++++----- ...eryProcessor.service.js => queryBuilder.js} | 8 ++++---- .../specs/datasource_specs.js | 14 +++++++------- src/panel-triggers/editor.js | 8 ++++---- src/panel-triggers/module.js | 4 ++-- 6 files changed, 31 insertions(+), 31 deletions(-) rename src/datasource-zabbix/{queryProcessor.service.js => queryBuilder.js} (97%) diff --git a/src/datasource-zabbix/datasource.js b/src/datasource-zabbix/datasource.js index 71c2e6c..bd3c2b2 100644 --- a/src/datasource-zabbix/datasource.js +++ b/src/datasource-zabbix/datasource.js @@ -8,13 +8,13 @@ import DataProcessor from './DataProcessor'; import responseHandler from './responseHandler'; import './zabbixAPI.service.js'; import './zabbixCache.service.js'; -import './queryProcessor.service.js'; +import './queryBuilder.js'; import {ZabbixAPIError} from './zabbixAPICore.service.js'; class ZabbixAPIDatasource { /** @ngInject */ - constructor(instanceSettings, $q, templateSrv, alertSrv, zabbixAPIService, ZabbixCachingProxy, QueryProcessor) { + constructor(instanceSettings, $q, templateSrv, alertSrv, zabbixAPIService, ZabbixCachingProxy, QueryBuilder) { // General data source settings this.name = instanceSettings.name; @@ -42,7 +42,7 @@ class ZabbixAPIDatasource { this.zabbixCache = new ZabbixCachingProxy(this.zabbixAPI, this.cacheTTL); // Initialize query builder - this.queryProcessor = new QueryProcessor(this.zabbixCache); + this.queryBuilder = new QueryBuilder(this.zabbixCache); // Dependencies this.q = $q; @@ -149,7 +149,7 @@ class ZabbixAPIDatasource { let options = { itemtype: 'num' }; - return this.queryProcessor.build(target, options) + return this.queryBuilder.build(target, options) .then(items => { // Add hostname for items from multiple hosts var addHostName = utils.isRegex(target.host.filter); @@ -228,7 +228,7 @@ class ZabbixAPIDatasource { let options = { itemtype: 'text' }; - return this.queryProcessor.build(target, options) + return this.queryBuilder.build(target, options) .then(items => { if (items.length) { return this.zabbixAPI.getHistory(items, timeFrom, timeTo) @@ -318,13 +318,13 @@ class ZabbixAPIDatasource { if (template.app === '/.*/') { template.app = ''; } - result = this.queryProcessor.getItems(template.group, template.host, template.app); + result = this.queryBuilder.getItems(template.group, template.host, template.app); } else if (parts.length === 3) { // Get applications - result = this.queryProcessor.getApps(template.group, template.host); + result = this.queryBuilder.getApps(template.group, template.host); } else if (parts.length === 2) { // Get hosts - result = this.queryProcessor.getHosts(template.group); + result = this.queryBuilder.getHosts(template.group); } else if (parts.length === 1) { // Get groups result = this.zabbixCache.getGroups(template.group); @@ -350,7 +350,7 @@ class ZabbixAPIDatasource { // Show all triggers var showTriggers = [0, 1]; - var buildQuery = this.queryProcessor + var buildQuery = this.queryBuilder .buildTriggerQuery(this.replaceTemplateVars(annotation.group, {}), this.replaceTemplateVars(annotation.host, {}), this.replaceTemplateVars(annotation.application, {})); diff --git a/src/datasource-zabbix/query.controller.js b/src/datasource-zabbix/query.controller.js index d8e6623..19acdca 100644 --- a/src/datasource-zabbix/query.controller.js +++ b/src/datasource-zabbix/query.controller.js @@ -20,7 +20,7 @@ export class ZabbixQueryController extends QueryCtrl { this.zabbix = this.datasource.zabbixAPI; this.cache = this.datasource.zabbixCache; - this.queryProcessor = this.datasource.queryProcessor; + this.queryBuilder = this.datasource.queryBuilder; this.$q = $q; // Use custom format for template variables @@ -116,7 +116,7 @@ export class ZabbixQueryController extends QueryCtrl { } suggestGroups() { - return this.queryProcessor.getAllGroups() + return this.queryBuilder.getAllGroups() .then(groups => { this.metric.groupList = groups; return groups; @@ -125,7 +125,7 @@ export class ZabbixQueryController extends QueryCtrl { suggestHosts() { let groupFilter = this.replaceTemplateVars(this.target.group.filter); - return this.queryProcessor.getAllHosts(groupFilter) + return this.queryBuilder.getAllHosts(groupFilter) .then(hosts => { this.metric.hostList = hosts; return hosts; @@ -135,7 +135,7 @@ export class ZabbixQueryController extends QueryCtrl { suggestApps() { let groupFilter = this.replaceTemplateVars(this.target.group.filter); let hostFilter = this.replaceTemplateVars(this.target.host.filter); - return this.queryProcessor.getAllApps(groupFilter, hostFilter) + return this.queryBuilder.getAllApps(groupFilter, hostFilter) .then(apps => { this.metric.appList = apps; return apps; @@ -151,7 +151,7 @@ export class ZabbixQueryController extends QueryCtrl { showDisabledItems: this.target.options.showDisabledItems }; - return this.queryProcessor + return this.queryBuilder .getAllItems(groupFilter, hostFilter, appFilter, options) .then(items => { this.metric.itemList = items; diff --git a/src/datasource-zabbix/queryProcessor.service.js b/src/datasource-zabbix/queryBuilder.js similarity index 97% rename from src/datasource-zabbix/queryProcessor.service.js rename to src/datasource-zabbix/queryBuilder.js index 0951cad..8188e59 100644 --- a/src/datasource-zabbix/queryProcessor.service.js +++ b/src/datasource-zabbix/queryBuilder.js @@ -2,9 +2,9 @@ import angular from 'angular'; import _ from 'lodash'; import * as utils from './utils'; -function QueryProcessorFactory() { +function QueryBuilderFactory() { - class QueryProcessor { + class QueryBuilder { constructor(zabbixCacheInstance) { this.cache = zabbixCacheInstance; } @@ -149,12 +149,12 @@ function QueryProcessorFactory() { } } - return QueryProcessor; + return QueryBuilder; } angular .module('grafana.services') - .factory('QueryProcessor', QueryProcessorFactory); + .factory('QueryBuilder', QueryBuilderFactory); /** * Find group, host, app or item by given name. diff --git a/src/datasource-zabbix/specs/datasource_specs.js b/src/datasource-zabbix/specs/datasource_specs.js index 923d99a..7919856 100644 --- a/src/datasource-zabbix/specs/datasource_specs.js +++ b/src/datasource-zabbix/specs/datasource_specs.js @@ -22,10 +22,10 @@ describe('ZabbixDatasource', () => { ctx.alertSrv = {}; ctx.zabbixAPIService = () => {}; ctx.ZabbixCachingProxy = () => {}; - ctx.QueryProcessor = () => {}; + ctx.queryBuilder = () => {}; ctx.ds = new Datasource(ctx.instanceSettings, ctx.$q, ctx.templateSrv, ctx.alertSrv, - ctx.zabbixAPIService, ctx.ZabbixCachingProxy, ctx.QueryProcessor); + ctx.zabbixAPIService, ctx.ZabbixCachingProxy, ctx.queryBuilder); }); describe('When querying data', () => { @@ -147,7 +147,7 @@ describe('ZabbixDatasource', () => { ctx.ds.zabbixCache = { getGroups: () => Q.when([]) }; - ctx.ds.queryProcessor = { + ctx.ds.queryBuilder = { getGroups: () => Q.when([]), getHosts: () => Q.when([]), getApps: () => Q.when([]), @@ -180,7 +180,7 @@ describe('ZabbixDatasource', () => { {query: 'Back*.', expect: 'Back*'} ]; - let getHosts = sinon.spy(ctx.ds.queryProcessor, 'getHosts'); + let getHosts = sinon.spy(ctx.ds.queryBuilder, 'getHosts'); for (const test of tests) { ctx.ds.metricFindQuery(test.query); expect(getHosts).to.have.been.calledWith(test.expect); @@ -197,7 +197,7 @@ describe('ZabbixDatasource', () => { {query: 'Back*.*.', expect: ['Back*', '/.*/']} ]; - let getApps = sinon.spy(ctx.ds.queryProcessor, 'getApps'); + let getApps = sinon.spy(ctx.ds.queryBuilder, 'getApps'); for (const test of tests) { ctx.ds.metricFindQuery(test.query); expect(getApps).to.have.been.calledWith(test.expect[0], test.expect[1]); @@ -214,7 +214,7 @@ describe('ZabbixDatasource', () => { {query: 'Back*.*.cpu.*', expect: ['Back*', '/.*/', 'cpu']} ]; - let getItems = sinon.spy(ctx.ds.queryProcessor, 'getItems'); + let getItems = sinon.spy(ctx.ds.queryBuilder, 'getItems'); for (const test of tests) { ctx.ds.metricFindQuery(test.query); expect(getItems) @@ -227,7 +227,7 @@ describe('ZabbixDatasource', () => { it('should invoke method with proper arguments', (done) => { let query = '*.*'; - let getHosts = sinon.spy(ctx.ds.queryProcessor, 'getHosts'); + let getHosts = sinon.spy(ctx.ds.queryBuilder, 'getHosts'); ctx.ds.metricFindQuery(query); expect(getHosts).to.have.been.calledWith('/.*/'); done(); diff --git a/src/panel-triggers/editor.js b/src/panel-triggers/editor.js index 6c6377a..e9a3088 100644 --- a/src/panel-triggers/editor.js +++ b/src/panel-triggers/editor.js @@ -76,7 +76,7 @@ class TriggerPanelEditorCtrl { this.datasourceSrv.get(this.panel.datasource) .then(datasource => { this.datasource = datasource; - this.queryProcessor = datasource.queryProcessor; + this.queryBuilder = datasource.queryBuilder; this.initFilters(); this.panelCtrl.refresh(); }); @@ -91,7 +91,7 @@ class TriggerPanelEditorCtrl { } suggestGroups() { - return this.queryProcessor.getAllGroups() + return this.queryBuilder.getAllGroups() .then(groups => { this.metric.groupList = groups; return groups; @@ -100,7 +100,7 @@ class TriggerPanelEditorCtrl { suggestHosts() { let groupFilter = this.datasource.replaceTemplateVars(this.panel.triggers.group.filter); - return this.queryProcessor.getAllHosts(groupFilter) + return this.queryBuilder.getAllHosts(groupFilter) .then(hosts => { this.metric.hostList = hosts; return hosts; @@ -110,7 +110,7 @@ class TriggerPanelEditorCtrl { suggestApps() { let groupFilter = this.datasource.replaceTemplateVars(this.panel.triggers.group.filter); let hostFilter = this.datasource.replaceTemplateVars(this.panel.triggers.host.filter); - return this.queryProcessor.getAllApps(groupFilter, hostFilter) + return this.queryBuilder.getAllApps(groupFilter, hostFilter) .then(apps => { this.metric.appList = apps; return apps; diff --git a/src/panel-triggers/module.js b/src/panel-triggers/module.js index ce412f5..c583b7c 100644 --- a/src/panel-triggers/module.js +++ b/src/panel-triggers/module.js @@ -108,7 +108,7 @@ class TriggerPanelCtrl extends MetricsPanelCtrl { // Load datasource return this.datasourceSrv.get(this.panel.datasource).then(datasource => { var zabbix = datasource.zabbixAPI; - var queryProcessor = datasource.queryProcessor; + var queryBuilder = datasource.queryBuilder; var showEvents = self.panel.showEvents.value; var triggerFilter = self.panel.triggers; @@ -117,7 +117,7 @@ class TriggerPanelCtrl extends MetricsPanelCtrl { var hostFilter = datasource.replaceTemplateVars(triggerFilter.host.filter); var appFilter = datasource.replaceTemplateVars(triggerFilter.application.filter); - var buildQuery = queryProcessor.buildTriggerQuery(groupFilter, hostFilter, appFilter); + var buildQuery = queryBuilder.buildTriggerQuery(groupFilter, hostFilter, appFilter); return buildQuery.then(query => { return zabbix.getTriggers(query.groupids, query.hostids,