|
@@ -65,81 +65,6 @@ App.MainHostServiceConfigsController = App.MainServiceInfoConfigsController.exte
|
|
|
});
|
|
|
},
|
|
|
|
|
|
- /**
|
|
|
- * This method will *not load* the overridden properties. However it will
|
|
|
- * replace the value shown for properties which this host has override for.
|
|
|
- * @param serviceConfigs
|
|
|
- * @param loadedGroupToOverrideSiteToTagMap
|
|
|
- * @param configGroups
|
|
|
- */
|
|
|
- loadServiceConfigHostsOverrides: function (serviceConfigs, loadedGroupToOverrideSiteToTagMap, configGroups) {
|
|
|
- var configKeyToConfigMap = {};
|
|
|
- serviceConfigs.forEach(function (item) {
|
|
|
- configKeyToConfigMap[item.name] = item;
|
|
|
- });
|
|
|
- this.set('configKeyToConfigMap', configKeyToConfigMap);
|
|
|
- var urlParams = this.constructUrlParams(loadedGroupToOverrideSiteToTagMap, configGroups);
|
|
|
- if (urlParams.length > 0) {
|
|
|
- App.ajax.send({
|
|
|
- name: 'host.service_config_hosts_overrides',
|
|
|
- sender: this,
|
|
|
- data: {
|
|
|
- urlParams: urlParams.join('|')
|
|
|
- },
|
|
|
- success: 'loadServiceConfigHostsOverridesSuccessCallback',
|
|
|
- error: 'loadServiceConfigHostsOverridesErrorCallback'
|
|
|
- });
|
|
|
- }
|
|
|
- },
|
|
|
- /**
|
|
|
- * construct URL parameters, based on groups
|
|
|
- * @param loadedGroupToOverrideSiteToTagMap
|
|
|
- * @param configGroups
|
|
|
- * @return {Array}
|
|
|
- */
|
|
|
- constructUrlParams: function (loadedGroupToOverrideSiteToTagMap, configGroups) {
|
|
|
- var typeTagToGroupMap = {};
|
|
|
- var urlParams = [];
|
|
|
- var thisHostName = this.get('host.hostName');
|
|
|
- for (var group in loadedGroupToOverrideSiteToTagMap) {
|
|
|
- var groupObj = configGroups.findProperty('name', group);
|
|
|
- if (groupObj.get('hosts').contains(thisHostName)) {
|
|
|
- var overrideTypeTags = loadedGroupToOverrideSiteToTagMap[group];
|
|
|
- for (var type in overrideTypeTags) {
|
|
|
- var tag = overrideTypeTags[type];
|
|
|
- typeTagToGroupMap[type + "///" + tag] = groupObj;
|
|
|
- urlParams.push('(type=' + type + '&tag=' + tag + ')');
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- this.set('typeTagToGroupMap', typeTagToGroupMap);
|
|
|
- return urlParams;
|
|
|
- },
|
|
|
- /**
|
|
|
- * handle configs, override their values
|
|
|
- * @param data
|
|
|
- */
|
|
|
- loadServiceConfigHostsOverridesSuccessCallback: function (data) {
|
|
|
- var typeTagToGroupMap = this.get('typeTagToGroupMap');
|
|
|
- var configKeyToConfigMap = this.get('configKeyToConfigMap');
|
|
|
- data.items.forEach(function (config) {
|
|
|
- var group = typeTagToGroupMap[config.type + "///" + config.tag];
|
|
|
- var properties = config.properties;
|
|
|
- for (var prop in properties) {
|
|
|
- var serviceConfig = configKeyToConfigMap[prop];
|
|
|
- var hostOverrideValue = properties[prop];
|
|
|
- if (serviceConfig) {
|
|
|
- serviceConfig.value = hostOverrideValue;
|
|
|
- serviceConfig.isOriginalSCP = false;
|
|
|
- serviceConfig.group = group;
|
|
|
- App.config.handleSpecialProperties(serviceConfig);
|
|
|
- }
|
|
|
- }
|
|
|
- });
|
|
|
- },
|
|
|
- loadServiceConfigHostsOverridesErrorCallback: function (request, ajaxOptions, error) {
|
|
|
- console.log("TRACE: error code status is: " + request.status);
|
|
|
- },
|
|
|
/**
|
|
|
* invoke dialog for switching group of host
|
|
|
*/
|