Repository: ambari Updated Branches: refs/heads/trunk 3e601aa3e -> d8997295d
AMBARI-9419. Sometimes manage alert groups doesn't work. (akovalenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/d8997295 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/d8997295 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/d8997295 Branch: refs/heads/trunk Commit: d8997295d3ad692ce871ccb1759dc9c87d5ad7fa Parents: 3e601aa Author: Aleksandr Kovalenko <akovale...@hortonworks.com> Authored: Fri Jan 30 20:31:36 2015 +0200 Committer: Aleksandr Kovalenko <akovale...@hortonworks.com> Committed: Sat Jan 31 01:38:50 2015 +0200 ---------------------------------------------------------------------- ambari-web/app/mappers/alert_groups_mapper.js | 24 +++----------------- ambari-web/app/models/alert_group.js | 2 +- .../test/mappers/alert_groups_mapper_test.js | 12 ++-------- 3 files changed, 6 insertions(+), 32 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/d8997295/ambari-web/app/mappers/alert_groups_mapper.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/mappers/alert_groups_mapper.js b/ambari-web/app/mappers/alert_groups_mapper.js index a1b33f5..50a8ea5 100644 --- a/ambari-web/app/mappers/alert_groups_mapper.js +++ b/ambari-web/app/mappers/alert_groups_mapper.js @@ -38,27 +38,12 @@ App.alertGroupsMapper = App.QuickDataMapper.create({ } }, - /** - * Map for alertGroup's alertDefinitions - * Store alertDefinitions to alertGroup-properties basing on alertDefinitionType - * Format: key - alertDefinitionType, value - alertGroup-property where alertDefinition should be saved - * @type {object} - */ - typesMap: { - PORT: 'port_alert_definitions', - METRIC: 'metrics_alert_definitions', - WEB: 'web_alert_definitions', - AGGREGATE: 'aggregate_alert_definitions', - SCRIPT: 'script_alert_definitions' - }, - map: function (json) { if (!Em.isNone(json, 'items')) { var alertGroups = [], self = this, groupsToDelete = App.AlertGroup.find().mapProperty('id'), - typesMap = this.get('typesMap'), /** * AlertGroups-map for <code>App.AlertDefinitionsMappers</code> * Format: @@ -77,15 +62,12 @@ App.alertGroupsMapper = App.QuickDataMapper.create({ json.items.forEach(function(item) { var group = self.parseIt(item, self.get('config')); groupsToDelete = groupsToDelete.without(group.id); - Em.keys(typesMap).forEach(function(k) { - group[typesMap[k]] = []; - }); group.targets = []; + group.definitions = []; if (item.AlertGroup.definitions) { item.AlertGroup.definitions.forEach(function(definition) { - var type = typesMap[definition.source_type]; - if (!group[type].contains(definition.id)) { - group[type].push(definition.id); + if (!group.definitions.contains(definition.id)) { + group.definitions.push(definition.id); } if (Em.isNone(alertDefinitionsGroupsMap[definition.id])) { alertDefinitionsGroupsMap[definition.id] = []; http://git-wip-us.apache.org/repos/asf/ambari/blob/d8997295/ambari-web/app/models/alert_group.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/models/alert_group.js b/ambari-web/app/models/alert_group.js index df038d6..e914ed5 100644 --- a/ambari-web/app/models/alert_group.js +++ b/ambari-web/app/models/alert_group.js @@ -44,7 +44,7 @@ App.AlertGroup = DS.Model.extend({ /** * @type {App.AlertDefinition[]} */ - definitions: App.AlertDefinition.find(), + definitions: DS.hasMany('App.AlertDefinition'), /** * @type {App.AlertNotification[]} http://git-wip-us.apache.org/repos/asf/ambari/blob/d8997295/ambari-web/test/mappers/alert_groups_mapper_test.js ---------------------------------------------------------------------- diff --git a/ambari-web/test/mappers/alert_groups_mapper_test.js b/ambari-web/test/mappers/alert_groups_mapper_test.js index f21f694..eb83759 100644 --- a/ambari-web/test/mappers/alert_groups_mapper_test.js +++ b/ambari-web/test/mappers/alert_groups_mapper_test.js @@ -113,22 +113,14 @@ describe('App.alertGroupsMapper', function () { id: 3, name: 'ZOOKEEPER', default: true, - port_alert_definitions: [8], - metrics_alert_definitions: [], - web_alert_definitions: [], - aggregate_alert_definitions: [9], - script_alert_definitions: [], + definitions: [8,9], targets: [1, 2] }, { id: 2, name: 'YARN', default: true, - port_alert_definitions: [], - metrics_alert_definitions: [1, 5], - web_alert_definitions: [2, 3, 7], - aggregate_alert_definitions: [4], - script_alert_definitions: [6], + definitions: [1, 2, 3, 4, 5, 6, 7], targets: [2, 3] } ];