1 package org.openecomp.sdc.be.components.impl;
3 import org.openecomp.sdc.be.components.impl.exceptions.ComponentException;
4 import org.openecomp.sdc.be.config.BeEcompErrorManager;
5 import org.openecomp.sdc.be.dao.api.ActionStatus;
6 import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
7 import org.springframework.stereotype.Component;
10 public class ComponentBusinessLogicProvider {
12 private final ResourceBusinessLogic resourceBusinessLogic;
13 private final ServiceBusinessLogic serviceBusinessLogic;
14 private final ProductBusinessLogic productBusinessLogic;
16 public ComponentBusinessLogicProvider(ResourceBusinessLogic resourceBusinessLogic, ServiceBusinessLogic serviceBusinessLogic, ProductBusinessLogic productBusinessLogic) {
17 this.resourceBusinessLogic = resourceBusinessLogic;
18 this.serviceBusinessLogic = serviceBusinessLogic;
19 this.productBusinessLogic = productBusinessLogic;
22 public ComponentBusinessLogic getInstance(ComponentTypeEnum componentTypeEnum) {
23 switch (componentTypeEnum) {
25 return serviceBusinessLogic;
27 return productBusinessLogic;
29 case RESOURCE_INSTANCE:
30 return resourceBusinessLogic;
32 BeEcompErrorManager.getInstance().logBeSystemError("getComponentBL");
33 throw new ComponentException(ActionStatus.INVALID_CONTENT_PARAM, componentTypeEnum.getValue());