You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ak...@apache.org on 2015/01/31 00:39:11 UTC

ambari git commit: AMBARI-9419. Sometimes manage alert groups doesn't work. (akovalenko)

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 <ak...@hortonworks.com>
Authored: Fri Jan 30 20:31:36 2015 +0200
Committer: Aleksandr Kovalenko <ak...@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]
         }
       ];