You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ab...@apache.org on 2015/04/20 18:35:41 UTC

[2/2] ambari git commit: AMBARI-10601 Going to HBase enhanced configs page causes config change. (ababiichuk)

AMBARI-10601 Going to HBase enhanced configs page causes config change. (ababiichuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/b1d9cf98
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/b1d9cf98
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/b1d9cf98

Branch: refs/heads/trunk
Commit: b1d9cf98bcb8913bb3a89d8d8d618ebe1e9f3760
Parents: c230d0f
Author: aBabiichuk <ab...@cybervisiontech.com>
Authored: Mon Apr 20 18:13:00 2015 +0300
Committer: aBabiichuk <ab...@cybervisiontech.com>
Committed: Mon Apr 20 19:35:29 2015 +0300

----------------------------------------------------------------------
 ambari-web/app/utils/config.js       | 30 +++++++++++++++++++++++++++---
 ambari-web/test/utils/config_test.js |  2 ++
 2 files changed, 29 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/b1d9cf98/ambari-web/app/utils/config.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/utils/config.js b/ambari-web/app/utils/config.js
index 0c5b3da4..5c65e9e 100644
--- a/ambari-web/app/utils/config.js
+++ b/ambari-web/app/utils/config.js
@@ -307,11 +307,11 @@ App.config = Em.Object.create({
         if (!configsPropertyDef) {
           configsPropertyDef = advancedConfig;
         }
-
+        var value = this.parseValue(properties[index], configsPropertyDef, advancedConfig);
         var serviceConfigObj = App.ServiceConfig.create({
           name: index,
-          value: properties[index],
-          defaultValue: properties[index],
+          value: value,
+          defaultValue: value,
           filename: filename,
           isUserProperty: !advancedConfig,
           isVisible: !!service,
@@ -370,6 +370,30 @@ App.config = Em.Object.create({
     }
   },
 
+  /**
+   * additional parsing when value is int of float
+   * ex: if value is "0.40" result will be "0.4"
+   * @param value
+   * @param predefinedConfig
+   * @param advancedConfig
+   * @returns {String}
+   */
+  parseValue: function(value, predefinedConfig, advancedConfig) {
+    var type = predefinedConfig ? Em.get(predefinedConfig, 'displayType') :
+      advancedConfig && Em.get(advancedConfig, 'valueAttributes.type');
+    switch (type) {
+      case 'int':
+        var res = parseInt(value);
+        return Number.isNaN(res) ? "" : res.toString();
+      case 'float':
+        var res = parseFloat(value);
+        return Number.isNaN(res) ? "" : res.toString();
+      default:
+        return value;
+    }
+  },
+
+
   tweakConfigVisibility: function (config, allSiteConfigs) {
     var kdcType = allSiteConfigs['kdc_type'];
     if (kdcType === 'active-directory' && ['container_dn', 'ldap_url'].contains(Em.get(config, 'name'))) {

http://git-wip-us.apache.org/repos/asf/ambari/blob/b1d9cf98/ambari-web/test/utils/config_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/utils/config_test.js b/ambari-web/test/utils/config_test.js
index 3c10523..7b5aebe 100644
--- a/ambari-web/test/utils/config_test.js
+++ b/ambari-web/test/utils/config_test.js
@@ -607,6 +607,7 @@ describe('App.config', function () {
     var result;
 
     before(function() {
+      sinon.stub(App.config, 'parseValue', function(value) {return value});
       setups.setupStackVersion(this, 'HDP-2.2');
       loadServiceModelsData(['HDFS', 'STORM']);
       App.config.loadAdvancedConfigSuccess(modelSetup.advancedConfigs, { url: '/serviceName/configurations'}, {
@@ -629,6 +630,7 @@ describe('App.config', function () {
     });
 
     after(function() {
+      App.config.parseValue.restore();
       setups.restoreStackVersion(this);
       removeServiceModelData(['HDFS', 'STORM']);
     });