From 60cd91f1446e96203131687050ffe71fb29ddb1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 15:50:41 +0200 Subject: [PATCH 01/11] indentation --- lib/cartodb/backends/filter-stats.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index ba427405..08861b21 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -24,8 +24,8 @@ function getEstimatedRows(pgQueryRunner, username, query, callback) { } FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_query, filters, callback) { - var stats = {}; - var self = this; + var stats = {}; + var self = this; step( function getUnfilteredRows() { getEstimatedRows(self.pgQueryRunner, username, unfiltered_query, this); From eeafad7cd97d4f1bc6b79ba87656c4c6a79fa461 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 15:52:41 +0200 Subject: [PATCH 02/11] remove step --- lib/cartodb/backends/filter-stats.js | 60 ++++++++++++++-------------- 1 file changed, 29 insertions(+), 31 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index 08861b21..7aa3adc7 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -1,5 +1,4 @@ var _ = require('underscore'); -var step = require('step'); var AnalysisFilter = require('../models/filter/analysis'); function FilterStatsBackends(pgQueryRunner) { @@ -26,34 +25,33 @@ function getEstimatedRows(pgQueryRunner, username, query, callback) { FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_query, filters, callback) { var stats = {}; var self = this; - step( - function getUnfilteredRows() { - getEstimatedRows(self.pgQueryRunner, username, unfiltered_query, this); - }, - function receiveUnfilteredRows(err, rows) { - if (err){ - callback(err); - return; - } - stats.unfiltered_rows = rows; - this(null, rows); - }, - function getFilteredRows() { - if ( filters && !_.isEmpty(filters)) { - var analysisFilter = new AnalysisFilter(filters); - var query = analysisFilter.sql(unfiltered_query); - getEstimatedRows(self.pgQueryRunner, username, query, this); - } else { - this(null, null); - } - }, - function receiveFilteredRows(err, rows) { - if (err){ - callback(err); - return; - } - stats.filtered_rows = rows; - callback(null, stats); - } - ); + + function getUnfilteredRows() { + getEstimatedRows(self.pgQueryRunner, username, unfiltered_query, this); + }, + function receiveUnfilteredRows(err, rows) { + if (err){ + callback(err); + return; + } + stats.unfiltered_rows = rows; + this(null, rows); + }, + function getFilteredRows() { + if ( filters && !_.isEmpty(filters)) { + var analysisFilter = new AnalysisFilter(filters); + var query = analysisFilter.sql(unfiltered_query); + getEstimatedRows(self.pgQueryRunner, username, query, this); + } else { + this(null, null); + } + }, + function receiveFilteredRows(err, rows) { + if (err){ + callback(err); + return; + } + stats.filtered_rows = rows; + callback(null, stats); + } }; From bafeceeb6ee4fe7ebfdadd993f067901dd42f0bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 15:54:26 +0200 Subject: [PATCH 03/11] remove step: first funcion --- lib/cartodb/backends/filter-stats.js | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index 7aa3adc7..de41da3f 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -26,17 +26,14 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu var stats = {}; var self = this; - function getUnfilteredRows() { - getEstimatedRows(self.pgQueryRunner, username, unfiltered_query, this); - }, - function receiveUnfilteredRows(err, rows) { + getEstimatedRows(self.pgQueryRunner, username, unfiltered_query, function (err, rows) { if (err){ callback(err); return; } stats.unfiltered_rows = rows; this(null, rows); - }, + }) function getFilteredRows() { if ( filters && !_.isEmpty(filters)) { var analysisFilter = new AnalysisFilter(filters); From 2196a89ec3b27bcf7b36885635f014e4bdb7623a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 15:55:24 +0200 Subject: [PATCH 04/11] remove step: 2 function refactor --- lib/cartodb/backends/filter-stats.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index de41da3f..2afd5ffc 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -28,11 +28,10 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu getEstimatedRows(self.pgQueryRunner, username, unfiltered_query, function (err, rows) { if (err){ - callback(err); - return; + return callback(err); } + stats.unfiltered_rows = rows; - this(null, rows); }) function getFilteredRows() { if ( filters && !_.isEmpty(filters)) { From fb683e438d291f5a728c7d74d4f8a8e3d13d8c3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 15:56:18 +0200 Subject: [PATCH 05/11] remove step: second function --- lib/cartodb/backends/filter-stats.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index 2afd5ffc..d2ffe6ba 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -32,8 +32,7 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu } stats.unfiltered_rows = rows; - }) - function getFilteredRows() { + if ( filters && !_.isEmpty(filters)) { var analysisFilter = new AnalysisFilter(filters); var query = analysisFilter.sql(unfiltered_query); @@ -41,7 +40,7 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu } else { this(null, null); } - }, + }) function receiveFilteredRows(err, rows) { if (err){ callback(err); From 150658d58d999bb21eecd85c70423d71b5216ab7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 15:59:37 +0200 Subject: [PATCH 06/11] remove step: 3 function refactor --- lib/cartodb/backends/filter-stats.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index d2ffe6ba..5458c637 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -36,9 +36,9 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu if ( filters && !_.isEmpty(filters)) { var analysisFilter = new AnalysisFilter(filters); var query = analysisFilter.sql(unfiltered_query); - getEstimatedRows(self.pgQueryRunner, username, query, this); - } else { - this(null, null); + getEstimatedRows(self.pgQueryRunner, username, query, function () { + + }); } }) function receiveFilteredRows(err, rows) { From c2577d1d2538da3c783e7145b9a69950a094567a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 16:02:04 +0200 Subject: [PATCH 07/11] remove step: last function --- lib/cartodb/backends/filter-stats.js | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index 5458c637..338e9f10 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -36,17 +36,16 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu if ( filters && !_.isEmpty(filters)) { var analysisFilter = new AnalysisFilter(filters); var query = analysisFilter.sql(unfiltered_query); - getEstimatedRows(self.pgQueryRunner, username, query, function () { - + getEstimatedRows(self.pgQueryRunner, username, query, function (err, rows) { + if (err){ + callback(err); + return; + } + stats.filtered_rows = rows; + callback(null, stats); }); } - }) - function receiveFilteredRows(err, rows) { - if (err){ - callback(err); - return; - } - stats.filtered_rows = rows; + callback(null, stats); - } + }) }; From cd08ad693f7df2515d436d3bb71aa07079954732 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 16:38:04 +0200 Subject: [PATCH 08/11] remove step: last function refactor --- lib/cartodb/backends/filter-stats.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index 338e9f10..48692c41 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -38,14 +38,14 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu var query = analysisFilter.sql(unfiltered_query); getEstimatedRows(self.pgQueryRunner, username, query, function (err, rows) { if (err){ - callback(err); - return; + return callback(err); } - stats.filtered_rows = rows; - callback(null, stats); - }); - } - callback(null, stats); + stats.filtered_rows = rows; + return callback(null, stats); + }); + } else { + return callback(null, stats); + } }) }; From 898bac5b042d9d7ed2b790a25db7cba837f826be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 16:42:17 +0200 Subject: [PATCH 09/11] jshint and style --- lib/cartodb/backends/filter-stats.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index 48692c41..9c410362 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -36,6 +36,7 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu if ( filters && !_.isEmpty(filters)) { var analysisFilter = new AnalysisFilter(filters); var query = analysisFilter.sql(unfiltered_query); + getEstimatedRows(self.pgQueryRunner, username, query, function (err, rows) { if (err){ return callback(err); @@ -44,8 +45,9 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu stats.filtered_rows = rows; return callback(null, stats); }); + } else { return callback(null, stats); } - }) + }); }; From 384f4f74e04eddbb38b52ae139b2d7e71b869629 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Mon, 30 Jul 2018 16:44:30 +0200 Subject: [PATCH 10/11] remove 'self' with arrows functions --- lib/cartodb/backends/filter-stats.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index 9c410362..76179ff3 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -24,9 +24,8 @@ function getEstimatedRows(pgQueryRunner, username, query, callback) { FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_query, filters, callback) { var stats = {}; - var self = this; - getEstimatedRows(self.pgQueryRunner, username, unfiltered_query, function (err, rows) { + getEstimatedRows(this.pgQueryRunner, username, unfiltered_query, (err, rows) => { if (err){ return callback(err); } @@ -37,7 +36,7 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu var analysisFilter = new AnalysisFilter(filters); var query = analysisFilter.sql(unfiltered_query); - getEstimatedRows(self.pgQueryRunner, username, query, function (err, rows) { + getEstimatedRows(this.pgQueryRunner, username, query, (err, rows) => { if (err){ return callback(err); } From 515e4828868fbc762aebd701f2519441111c0f60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Mart=C3=ADn?= Date: Tue, 31 Jul 2018 15:07:34 +0200 Subject: [PATCH 11/11] early return --- lib/cartodb/backends/filter-stats.js | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/lib/cartodb/backends/filter-stats.js b/lib/cartodb/backends/filter-stats.js index 76179ff3..b37d8704 100644 --- a/lib/cartodb/backends/filter-stats.js +++ b/lib/cartodb/backends/filter-stats.js @@ -32,21 +32,20 @@ FilterStatsBackends.prototype.getFilterStats = function (username, unfiltered_qu stats.unfiltered_rows = rows; - if ( filters && !_.isEmpty(filters)) { - var analysisFilter = new AnalysisFilter(filters); - var query = analysisFilter.sql(unfiltered_query); - - getEstimatedRows(this.pgQueryRunner, username, query, (err, rows) => { - if (err){ - return callback(err); - } - - stats.filtered_rows = rows; - return callback(null, stats); - }); - - } else { + if (!filters || _.isEmpty(filters)) { return callback(null, stats); } + + var analysisFilter = new AnalysisFilter(filters); + var query = analysisFilter.sql(unfiltered_query); + + getEstimatedRows(this.pgQueryRunner, username, query, (err, rows) => { + if (err){ + return callback(err); + } + + stats.filtered_rows = rows; + return callback(null, stats); + }); }); };