Micro code refactoring in component-descriptor.service.js

This commit is contained in:
deaflynx 2020-09-18 12:09:21 +03:00
parent 6d7c28c88f
commit 87601a4c63

View File

@ -28,31 +28,31 @@ function ComponentDescriptorService($http, $q) {
return service; return service;
function getComponentDescriptorsByTypes(componentTypes, ruleChainType) { function getComponentDescriptorsByTypes(componentTypes, type) {
var deferred = $q.defer(); var deferred = $q.defer();
var result = []; var result = [];
if (!componentsByType[ruleChainType]) { if (!componentsByType[type]) {
componentsByType[ruleChainType] = {}; componentsByType[type] = {};
} }
for (var i=componentTypes.length-1;i>=0;i--) { for (var i=componentTypes.length-1;i>=0;i--) {
var componentType = componentTypes[i]; var componentType = componentTypes[i];
if (componentsByType[ruleChainType][componentType]) { if (componentsByType[type][componentType]) {
result = result.concat(componentsByType[ruleChainType][componentType]); result = result.concat(componentsByType[type][componentType]);
componentTypes.splice(i, 1); componentTypes.splice(i, 1);
} }
} }
if (!componentTypes.length) { if (!componentTypes.length) {
deferred.resolve(result); deferred.resolve(result);
} else { } else {
var url = '/api/components?componentTypes=' + componentTypes.join(',') + '&ruleChainType=' + ruleChainType; var url = '/api/components?componentTypes=' + componentTypes.join(',') + '&ruleChainType=' + type;
$http.get(url, null).then(function success(response) { $http.get(url, null).then(function success(response) {
var components = response.data; var components = response.data;
for (var i = 0; i < components.length; i++) { for (var i = 0; i < components.length; i++) {
var component = components[i]; var component = components[i];
var componentsList = componentsByType[ruleChainType][component.type]; var componentsList = componentsByType[type][component.type];
if (!componentsList) { if (!componentsList) {
componentsList = []; componentsList = [];
componentsByType[ruleChainType][component.type] = componentsList; componentsByType[type][component.type] = componentsList;
} }
componentsList.push(component); componentsList.push(component);
componentsByClazz[component.clazz] = component; componentsByClazz[component.clazz] = component;