You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by sr...@apache.org on 2015/04/07 00:30:43 UTC
ambari git commit: AMBARI-10340. Provide support for final configs
(Richard Zang via srimanth)
Repository: ambari
Updated Branches:
refs/heads/trunk 2bb9aa2de -> c55d89c1a
AMBARI-10340. Provide support for final configs (Richard Zang via srimanth)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c55d89c1
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c55d89c1
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c55d89c1
Branch: refs/heads/trunk
Commit: c55d89c1a0d53197598da2f60ff85c19f7aa9157
Parents: 2bb9aa2
Author: Srimanth Gunturi <sg...@hortonworks.com>
Authored: Mon Apr 6 15:30:20 2015 -0700
Committer: Srimanth Gunturi <sg...@hortonworks.com>
Committed: Mon Apr 6 15:30:20 2015 -0700
----------------------------------------------------------------------
ambari-web/app/styles/application.less | 10 +++++++++-
.../configs/widgets/slider_config_widget.hbs | 16 ++++++++++++----
.../views/common/configs/restore_config_view.js | 3 ++-
.../common/configs/widgets/config_widget_view.js | 17 +++++++++++++++++
4 files changed, 40 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/c55d89c1/ambari-web/app/styles/application.less
----------------------------------------------------------------------
diff --git a/ambari-web/app/styles/application.less b/ambari-web/app/styles/application.less
index 3c82dfa..e5b8a9b 100644
--- a/ambari-web/app/styles/application.less
+++ b/ambari-web/app/styles/application.less
@@ -1176,7 +1176,7 @@ h1 {
list-style-type: none;
}
}
- .common-config-category {
+ .common-config-category, .enhanced-config-tab-content {
.action {
cursor: pointer;
}
@@ -1219,6 +1219,14 @@ h1 {
}
}
}
+
+ .enhanced-config-tab-content
+ {
+ .action-button {
+ margin-left: 3px;
+ }
+ }
+
.capacity-scheduler {
.header {
margin-bottom: 10px;
http://git-wip-us.apache.org/repos/asf/ambari/blob/c55d89c1/ambari-web/app/templates/common/configs/widgets/slider_config_widget.hbs
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates/common/configs/widgets/slider_config_widget.hbs b/ambari-web/app/templates/common/configs/widgets/slider_config_widget.hbs
index e983ec8..5956230 100644
--- a/ambari-web/app/templates/common/configs/widgets/slider_config_widget.hbs
+++ b/ambari-web/app/templates/common/configs/widgets/slider_config_widget.hbs
@@ -25,13 +25,18 @@
<div class="pull-left ui-slider-wrapper-inner">{{view Ember.TextField valueBinding="view.config.value" class="input-mini slider-input"}}</div>
<div class="pull-right ui-slider-label">{{view.mirrorValue}} {{view.unitLabel}}</div>
</div>
- <div {{bindAttr class="view.isHover:show:not-show :clearfix"}}>
- {{#if view.isOriginalSCP}}
- {{view App.RestoreConfigView visibleBinding="view.undoAllowed"}}
+ <div {{bindAttr class=":clearfix"}}>
+ {{#if view.config.supportsFinal}}
+ <a href="#" data-toggle="tooltip"
+ {{bindAttr class=":btn :btn-small :btn-final :pull-left view.config.isFinal:active view.showFinalConfig:show:not-show" disabled="view.config.isNotEditable"}}
+ {{action "toggleFinalFlag" view.config target="view"}}
+ {{translateAttr data-original-title="services.service.config.final"}}>
+ <i class="icon-lock"></i>
+ </a>
{{/if}}
{{#if view.overrideAllowed}}
{{#isAccessible ADMIN}}
- <div class="pull-left action-button">
+ <div {{bindAttr class=":pull-left :action-button view.isHover:show:not-show"}}>
<a class="btn btn-small" href="#" data-toggle="tooltip"
{{action "createOverrideProperty" view.config target="view.parentView"}}
{{translateAttr data-original-title="common.override"}}>
@@ -40,6 +45,9 @@
</div>
{{/isAccessible}}
{{/if}}
+ {{#if view.isOriginalSCP}}
+ {{view App.RestoreConfigView visibleBinding="view.undoAllowed"}}
+ {{/if}}
</div>
{{#if view.isComparison}}
http://git-wip-us.apache.org/repos/asf/ambari/blob/c55d89c1/ambari-web/app/views/common/configs/restore_config_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/configs/restore_config_view.js b/ambari-web/app/views/common/configs/restore_config_view.js
index 0693af8..117a0f1 100644
--- a/ambari-web/app/views/common/configs/restore_config_view.js
+++ b/ambari-web/app/views/common/configs/restore_config_view.js
@@ -25,5 +25,6 @@ var App = require('app');
App.RestoreConfigView = Em.View.extend({
templateName: require('templates/common/configs/restore_config'),
classNames: ['pull-left', 'action-button'],
- visibleBinding: 'parentView.valueIsChanged'
+ visibleBinding: 'parentView.valueIsChanged',
+ classNameBindings: ['parentView.isHover:show:not-show']
});
http://git-wip-us.apache.org/repos/asf/ambari/blob/c55d89c1/ambari-web/app/views/common/configs/widgets/config_widget_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/configs/widgets/config_widget_view.js b/ambari-web/app/views/common/configs/widgets/config_widget_view.js
index 6277253..d24e845 100644
--- a/ambari-web/app/views/common/configs/widgets/config_widget_view.js
+++ b/ambari-web/app/views/common/configs/widgets/config_widget_view.js
@@ -83,6 +83,10 @@ App.ConfigWidgetView = Em.View.extend(App.SupportsDependentConfigs, App.WidgetPo
restoreValue: function () {
this.set('config.value', this.get('config.defaultValue'));
this.sendRequestRorDependentConfigs(this.get('config'));
+
+ if (this.get('config.supportsFinal')) {
+ this.get('config').set('isFinal', this.get('config.defaultIsFinal'));
+ }
},
/**
@@ -105,6 +109,19 @@ App.ConfigWidgetView = Em.View.extend(App.SupportsDependentConfigs, App.WidgetPo
return !config.get('cantBeUndone') && config.get('isNotDefaultValue');
}.property('config.cantBeUndone', 'config.isNotDefaultValue'),
+ showFinalConfig: function () {
+ var config = this.get('config');
+ return config.get('isFinal') || (!config.get('isNotEditable') && this.get('isHover'));
+ }.property('config.isFinal', 'config.isNotEditable', 'isHover'),
+
+ toggleFinalFlag: function (event) {
+ var configProperty = event.context;
+ if (configProperty.get('isNotEditable')) {
+ return;
+ }
+ configProperty.toggleProperty('isFinal');
+ },
+
/**
* sync widget value with config value when dependent properties
* have been loaded or changed