Repository: ambari Updated Branches: refs/heads/branch-2.5 1b9073539 -> a3923fdd1
AMBARI-18648. There were no labels on fields on step "Configure Kerberos" after clicking back (alexantonenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/a3923fdd Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/a3923fdd Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/a3923fdd Branch: refs/heads/branch-2.5 Commit: a3923fdd16f5c0ca3d7fb14d416402cde4be9a75 Parents: 1b90735 Author: Alex Antonenko <[email protected]> Authored: Fri Oct 21 21:56:13 2016 +0300 Committer: Alex Antonenko <[email protected]> Committed: Sat Oct 22 00:50:57 2016 +0300 ---------------------------------------------------------------------- .../controllers/main/admin/kerberos/step2_controller.js | 2 +- ambari-web/app/utils/config.js | 12 +++++++----- .../main/admin/kerberos/step2_controller_test.js | 2 ++ 3 files changed, 10 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/a3923fdd/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js b/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js index dbea0b2..992fd34 100644 --- a/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js +++ b/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js @@ -97,7 +97,7 @@ App.KerberosWizardStep2Controller = App.WizardStep7Controller.extend(App.KDCCred App.config.setPreDefinedServiceConfigs(this.get('addMiscTabToPage')); var stored = this.get('content.serviceConfigProperties'); - this.set('configs', stored || this.getKerberosConfigs()); + this.set('configs', stored ? App.config.mergeStoredValue(this.getKerberosConfigs(), stored) : this.getKerberosConfigs()); this.filterConfigs(this.get('configs')); if (!this.get('wizardController.skipClientInstall')) { http://git-wip-us.apache.org/repos/asf/ambari/blob/a3923fdd/ambari-web/app/utils/config.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/utils/config.js b/ambari-web/app/utils/config.js index 81c95f3..9759a60 100644 --- a/ambari-web/app/utils/config.js +++ b/ambari-web/app/utils/config.js @@ -1189,16 +1189,18 @@ App.config = Em.Object.create({ * Merge values in "stored" to "base" if name matches, it's a value only merge. * @param base {Array} Em.Object * @param stored {Array} Object + * @returns {Object[]|Em.Object[]} base */ mergeStoredValue: function(base, stored) { if (stored) { base.forEach(function (p) { - var sp = stored.filterProperty("filename", p.filename).findProperty("name", p.name); + var sp = stored.filterProperty('filename', p.filename).findProperty('name', p.name); if (sp) { - p.set("value", sp.value); + Em.set(p, 'value', Em.get(sp, 'value')); } }); } + return base; }, @@ -1223,10 +1225,10 @@ App.config = Em.Object.create({ } return false; }, - + /** - * creates config object with non static properties like - * 'value', 'isFinal', 'errorMessage' and + * creates config object with non static properties like + * 'value', 'isFinal', 'errorMessage' and * 'id', 'name', 'filename', * @param configProperty * @returns {Object} http://git-wip-us.apache.org/repos/asf/ambari/blob/a3923fdd/ambari-web/test/controllers/main/admin/kerberos/step2_controller_test.js ---------------------------------------------------------------------- diff --git a/ambari-web/test/controllers/main/admin/kerberos/step2_controller_test.js b/ambari-web/test/controllers/main/admin/kerberos/step2_controller_test.js index dd8263e..2e603da 100644 --- a/ambari-web/test/controllers/main/admin/kerberos/step2_controller_test.js +++ b/ambari-web/test/controllers/main/admin/kerberos/step2_controller_test.js @@ -212,6 +212,7 @@ describe('App.KerberosWizardStep2Controller', function() { }]); sinon.stub(controller, 'clearStep'); sinon.stub(App.config, 'setPreDefinedServiceConfigs'); + sinon.stub(App.config, 'mergeStoredValue'); sinon.stub(controller, 'filterConfigs'); sinon.stub(controller, 'getKerberosConfigs'); sinon.stub(controller, 'initializeKDCStoreProperties'); @@ -233,6 +234,7 @@ describe('App.KerberosWizardStep2Controller', function() { this.mockStackService.restore(); controller.clearStep.restore(); App.config.setPreDefinedServiceConfigs.restore(); + App.config.mergeStoredValue.restore(); controller.filterConfigs.restore(); controller.getKerberosConfigs.restore(); controller.initializeKDCStoreProperties.restore();
