service_config.hbs 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. {{!
  2. * Licensed to the Apache Software Foundation (ASF) under one
  3. * or more contributor license agreements. See the NOTICE file
  4. * distributed with this work for additional information
  5. * regarding copyright ownership. The ASF licenses this file
  6. * to you under the Apache License, Version 2.0 (the
  7. * "License"); you may not use this file except in compliance
  8. * with the License. You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. }}
  18. {{#if view.supportsHostOverrides}}
  19. {{#if selectedService.restartRequired}}
  20. <div class="alert">
  21. <div class="clearfix like_pointer collapsable" {{action toggleRestartMessageView target="view"}}>
  22. {{#if view.isRestartMessageCollapsed}}
  23. <i class="icon-caret-down pull-left"></i>
  24. {{else}}
  25. <i class="icon-caret-right pull-left"></i>
  26. {{/if}}
  27. <i class="icon-refresh"></i>
  28. <strong>{{t dashboard.services.configs.popup.restartService.header}}</strong> {{selectedService.restartRequiredMessage}}
  29. </div>
  30. <div class="service-body">
  31. <ul>
  32. {{#each host in selectedService.restartRequiredHostsAndComponents}}
  33. <li>
  34. <a href="#" {{action showDetails host.hostData}}>{{host.hostData.publicHostName}}</a>
  35. <ul>
  36. {{#each component in host.components}}
  37. <li>{{component.name}}</li>
  38. {{/each}}
  39. </ul>
  40. </li>
  41. {{/each}}
  42. </ul>
  43. </div>
  44. </div>
  45. {{/if}}
  46. {{/if}}
  47. {{#if view.supportsHostOverrides}}
  48. <div class="alert alert-info">
  49. {{t common.group}}&nbsp;
  50. <span class="btn-group">
  51. <button {{bindAttr disabled="controller.isHostsConfigsPage"}} class="btn">{{selectedConfigGroup.displayNameHosts}}</button>
  52. <button {{bindAttr disabled="controller.isHostsConfigsPage"}} class="btn dropdown-toggle" data-toggle="dropdown">
  53. <span class="caret"></span>
  54. </button>
  55. <ul class="dropdown-menu">
  56. <!-- available config group menu links -->
  57. {{#each configGroup in configGroups}}
  58. <li>
  59. <a href="#" {{action "selectConfigGroup" configGroup target="controller"}}>
  60. {{configGroup.displayNameHosts}}
  61. </a>
  62. </li>
  63. {{/each}}
  64. </ul>
  65. </span>
  66. {{#if controller.isHostsConfigsPage}}
  67. &nbsp;<a href="#" {{action "switchHostGroup" target="controller"}}>{{t common.change}}</a>
  68. {{/if}}
  69. <a href="#" class="link" {{action "manageConfigurationGroup" target="controller"}}>{{t services.service.actions.manage_configuration_groups.short}}</a>
  70. <div class="pull-right">
  71. {{view App.FilterComboboxView filterBinding="view.filter" columnsBinding="view.columns" }}
  72. </div>
  73. </div>
  74. {{/if}}
  75. <div class="accordion">
  76. {{#each category in selectedService.configCategories}}
  77. {{#if category.isCustomView}}
  78. {{#if App.supports.capacitySchedulerUi}}
  79. {{view category.customView categoryBinding="category" serviceBinding="selectedService" canEditBinding="view.canEdit" serviceConfigsBinding="selectedService.configs"}}
  80. {{/if}}
  81. {{else}}
  82. {{#view App.ServiceConfigsByCategoryView categoryBinding="category" canEditBinding="view.canEdit" serviceBinding="selectedService" serviceConfigsBinding="selectedService.configs" supportsHostOverridesBinding="view.supportsHostOverrides"}}
  83. <div class="accordion-heading" {{action "onToggleBlock" category target="view"}}>
  84. <i {{bindAttr class=":pull-left :accordion-toggle category.isCollapsed:icon-caret-right:icon-caret-down"}}></i>
  85. <a class="accordion-toggle">{{category.displayName}}</a>
  86. </div>
  87. <div class="accordion-body collapse in">
  88. <div class="accordion-inner service-config-section">
  89. <form class="form-horizontal" autocomplete="off">
  90. {{#each view.filteredCategoryConfigs}}
  91. <div {{bindAttr class=":entry-row isOverridden:overridden-property"}}>
  92. <span {{bindAttr class="errorMessage:error: :control-group :control-label-span"}}>
  93. <label class="control-label">
  94. {{displayName}}
  95. {{#if App.supports.secureCluster}}
  96. {{#if isSecureConfig}}
  97. <a href="javascript:void(null);"><i class="icon-lock" rel="tooltip" data-toggle="tooltip" title="security knob"></i></a>
  98. {{/if}}
  99. {{/if}}
  100. {{#if view.supportsHostOverrides}}
  101. {{#if isRestartRequired}}
  102. <i class="icon-refresh restart-required-property" rel="tooltip" {{bindAttr title="restartRequiredMessage"}}></i>
  103. {{/if}}
  104. {{/if}}
  105. </label>
  106. </span>
  107. <div class="controls">
  108. {{! Here serviceConfigBinding should ideally be serviceConfigPropertyBinding }}
  109. <div {{bindAttr class="errorMessage:error: warnMessage:warning: :control-group"}}>
  110. {{view viewClass serviceConfigBinding="this" categoryConfigsAllBinding="view.categoryConfigsAll" }}
  111. {{#if view.canEdit}}
  112. {{#if isPropertyOverridable}}
  113. {{#if view.supportsHostOverrides}}
  114. {{#if App.isAdmin}}
  115. <a class="action" {{action "createOverrideProperty" this target="view" }} ><i class="icon-plus-sign"></i>{{t common.override}}</a>
  116. {{/if}}
  117. {{/if}}
  118. {{/if}}
  119. {{#unless cantBeUndone}}
  120. {{#if isNotDefaultValue}}
  121. <a class="action" {{action "doRestoreDefaultValue" this target="view" }} ><i class="icon-undo"></i>{{t common.undo}}</a>
  122. {{/if}}
  123. {{/unless}}
  124. {{#if isRemovable}}
  125. {{#if App.isAdmin}}
  126. <a class="action" {{action "removeProperty" this target="view" }} ><i class="icon-minus-sign"></i>{{t common.remove}}</a>
  127. {{/if}}
  128. {{/if}}
  129. {{/if}}
  130. <span class="help-inline">{{errorMessage}}</span>
  131. <span class="help-inline">{{warnMessage}}</span>
  132. </div>
  133. {{#if this.isOverridden}}
  134. {{view App.ServiceConfigView.SCPOverriddenRowsView serviceConfigPropertyBinding="this" isDefaultGroupSelectedBinding="controller.selectedConfigGroup.isDefault"}}
  135. {{/if}}
  136. </div>
  137. </div>
  138. {{/each}}
  139. {{! For Advanced, Advanced Core Site, Advanced HDFS Site sections, show the 'Add Property' link.}}
  140. {{#if App.isAdmin}}
  141. {{#if view.canEdit}}
  142. {{#if category.canAddProperty }}
  143. <div>
  144. <a href="#" {{action "showAddPropertyWindow" this target="view" }} >{{t installer.step7.config.addProperty}}...</a>
  145. </div>
  146. {{/if}}
  147. {{/if}}
  148. {{/if}}
  149. </form>
  150. </div>
  151. </div>
  152. {{/view}}
  153. {{/if}}
  154. {{/each}}
  155. </div>