Repository: ambari Updated Branches: refs/heads/trunk a3a0ae041 -> 79b269d8e
AMBARI-10813. HDFS keyserver configs should be text-field instead of text-area Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/79b269d8 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/79b269d8 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/79b269d8 Branch: refs/heads/trunk Commit: 79b269d8e624735921abaffdc37a92cfb63c65d7 Parents: a3a0ae0 Author: Srimanth Gunturi <[email protected]> Authored: Tue Apr 28 18:08:51 2015 -0700 Committer: Srimanth Gunturi <[email protected]> Committed: Tue Apr 28 18:55:54 2015 -0700 ---------------------------------------------------------------------- .../services/HDFS/configuration/hadoop-env.xml | 2 + .../HDP/2.2/services/HDFS/themes/theme.json | 4 +- .../service/configs/widget_popover_support.js | 2 + ambari-web/app/styles/widgets.less | 6 +++ .../configs/widgets/textfield_config_widget.hbs | 8 ++-- ambari-web/app/views.js | 1 + .../configs/service_config_layout_tab_view.js | 3 +- .../widgets/textfield_config_widget_view.js | 47 ++++++++++++++++++++ 8 files changed, 67 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/79b269d8/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml index e4e548f..21b92a2 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml +++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml @@ -25,6 +25,7 @@ <property> <name>keyserver_host</name> <value> </value> + <display-name>Key Server Host</display-name> <description>Hostnames where Key Management Server is installed</description> <value-attributes> <type>string</type> @@ -33,6 +34,7 @@ <property> <name>keyserver_port</name> <value> </value> + <display-name>Key Server Port</display-name> <description>Port number where Key Management Server is available</description> <value-attributes> <type>int</type> http://git-wip-us.apache.org/repos/asf/ambari/blob/79b269d8/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/themes/theme.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/themes/theme.json b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/themes/theme.json index d1dd1f5..4ff39eb 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/themes/theme.json +++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/themes/theme.json @@ -204,13 +204,13 @@ { "config": "hadoop-env/keyserver_host", "widget": { - "type": "string" + "type": "text-field" } }, { "config": "hadoop-env/keyserver_port", "widget": { - "type": "string" + "type": "text-field" } } ] http://git-wip-us.apache.org/repos/asf/ambari/blob/79b269d8/ambari-web/app/mixins/main/service/configs/widget_popover_support.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/mixins/main/service/configs/widget_popover_support.js b/ambari-web/app/mixins/main/service/configs/widget_popover_support.js index 98b6f50..c8dc1ed 100644 --- a/ambari-web/app/mixins/main/service/configs/widget_popover_support.js +++ b/ambari-web/app/mixins/main/service/configs/widget_popover_support.js @@ -48,6 +48,8 @@ App.WidgetPopoverSupport = Em.Mixin.create({ initPopover: function () { if (this.get('isPopoverEnabled') !== false) { + if (this.get('config.name') == 'keyserver_port') + console.error(this.get('popoverPlacement')); var leftPopoverTemplate = '<div class="popover config-widget-left-popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'; App.popover(this.$('.original-widget'), { template: this.get('popoverPlacement') == 'left'? leftPopoverTemplate : undefined, http://git-wip-us.apache.org/repos/asf/ambari/blob/79b269d8/ambari-web/app/styles/widgets.less ---------------------------------------------------------------------- diff --git a/ambari-web/app/styles/widgets.less b/ambari-web/app/styles/widgets.less index 9ff5a21..dd75d66 100644 --- a/ambari-web/app/styles/widgets.less +++ b/ambari-web/app/styles/widgets.less @@ -380,5 +380,11 @@ margin-left: -3px; } } +} +.text-field-widget { + .text-field-wrapper { + width: 70%; + float: left; + } } http://git-wip-us.apache.org/repos/asf/ambari/blob/79b269d8/ambari-web/app/templates/common/configs/widgets/textfield_config_widget.hbs ---------------------------------------------------------------------- diff --git a/ambari-web/app/templates/common/configs/widgets/textfield_config_widget.hbs b/ambari-web/app/templates/common/configs/widgets/textfield_config_widget.hbs index a1af7b1..7175902 100644 --- a/ambari-web/app/templates/common/configs/widgets/textfield_config_widget.hbs +++ b/ambari-web/app/templates/common/configs/widgets/textfield_config_widget.hbs @@ -19,8 +19,10 @@ <div> {{#if view.isOriginalSCP}} <div class="clearfix"></div> - <p class="widget-config-label">{{view.configLabel}}</p> + <p class="widget-config-label">{{formatWordBreak view.configLabel}}</p> {{/if}} - {{view view.configView}} + <div {{bindAttr class=":text-field-wrapper view.isOriginalSCP:original-widget"}}> + {{view view.configView}} + </div> + {{template "templates/common/configs/widgets/controls"}} </div> -{{template "templates/common/configs/widgets/controls"}} http://git-wip-us.apache.org/repos/asf/ambari/blob/79b269d8/ambari-web/app/views.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/views.js b/ambari-web/app/views.js index 8b0ce67..87862b4 100644 --- a/ambari-web/app/views.js +++ b/ambari-web/app/views.js @@ -63,6 +63,7 @@ require('views/common/configs/widgets/list_config_widget_view'); require('views/common/configs/widgets/radio_button_config_widget_view'); require('views/common/configs/widgets/slider_config_widget_view'); require('views/common/configs/widgets/string_config_widget_view'); +require('views/common/configs/widgets/textfield_config_widget_view'); require('views/common/configs/widgets/time_interval_spinner_view'); require('views/common/configs/widgets/toggle_config_widget_view'); require('views/common/configs/widgets/overrides/config_widget_override_view'); http://git-wip-us.apache.org/repos/asf/ambari/blob/79b269d8/ambari-web/app/views/common/configs/service_config_layout_tab_view.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/views/common/configs/service_config_layout_tab_view.js b/ambari-web/app/views/common/configs/service_config_layout_tab_view.js index f8b2263..5b45df9 100644 --- a/ambari-web/app/views/common/configs/service_config_layout_tab_view.js +++ b/ambari-web/app/views/common/configs/service_config_layout_tab_view.js @@ -54,9 +54,10 @@ App.ServiceConfigLayoutTabView = Em.View.extend(App.ConfigOverridable, { password: App.PasswordConfigWidgetView, 'radio-buttons': App.RadioButtonConfigWidgetView, slider: App.SliderConfigWidgetView, + 'text-field': App.TextFieldConfigWidgetView, 'time-interval-spinner': App.TimeIntervalSpinnerView, toggle: App.ToggleConfigWidgetView, - string: App.StringConfigWidgetView + 'text-area': App.StringConfigWidgetView }, /** http://git-wip-us.apache.org/repos/asf/ambari/blob/79b269d8/ambari-web/app/views/common/configs/widgets/textfield_config_widget_view.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/views/common/configs/widgets/textfield_config_widget_view.js b/ambari-web/app/views/common/configs/widgets/textfield_config_widget_view.js new file mode 100644 index 0000000..48a1321 --- /dev/null +++ b/ambari-web/app/views/common/configs/widgets/textfield_config_widget_view.js @@ -0,0 +1,47 @@ + +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +require('views/common/controls_view'); + +var App = require('app'); + +App.TextFieldConfigWidgetView = App.ConfigWidgetView.extend({ + templateName: require('templates/common/configs/widgets/textfield_config_widget'), + classNames: ['widget-config', 'text-field-widget'], + + /** + * Control to edit value. + * + * @type {App.ServiceConfigTextField} + * @property configView + */ + configView: App.ServiceConfigTextField.extend({ + isPopoverEnabled: 'false', + textFieldClassName: 'span12', + serviceConfigBinding: 'parentView.config', + focusIn: function() {} + }), + + didInsertElement: function() { + this._super(); + this.initPopover(); + this.get('config').set('displayType', this.get('config.stackConfigProperty.valueAttributes.type') || this.get('config.stackConfigProperty.widget.units.0.unit-name') || 'string'); + } + +});
