[SDC-29] Amdocs OnBoard 1707 initial commit.
[sdc.git] / openecomp-be / api / openecomp-sdc-rest-webapp / vendor-software-products-rest / vendor-software-products-rest-services / src / main / java / org / openecomp / sdcrests / vsp / rest / mapping / MapComponentDependencyModelRequestToEntity.java
1 package org.openecomp.sdcrests.vsp.rest.mapping;
2
3
4 import org.openecomp.sdc.common.errors.CoreException;
5 import org.openecomp.sdc.common.errors.ErrorCode;
6 import org.openecomp.sdc.datatypes.error.ErrorLevel;
7 import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
8 import org.openecomp.sdc.logging.types.LoggerConstants;
9 import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
10 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentDependencyModelEntity;
11 import org.openecomp.sdc.vendorsoftwareproduct.errors.ComponentDependencyModelErrorBuilder;
12 import org.openecomp.sdcrests.mapping.MappingBase;
13 import org.openecomp.sdcrests.vendorsoftwareproducts.types.ComponentDependencyModel;
14 import org.openecomp.sdcrests.vendorsoftwareproducts.types.ComponentRelationType;
15
16 public class MapComponentDependencyModelRequestToEntity extends
17     MappingBase<ComponentDependencyModel, ComponentDependencyModelEntity> {
18
19   @Override
20   public void doMapping(ComponentDependencyModel source,
21                         ComponentDependencyModelEntity target) {
22     target.setSourceComponentId(source.getSourceId());
23     target.setTargetComponentId(source.getTargetId());
24     try {
25       ComponentRelationType.valueOf(source.getRelationType());
26       target.setRelation(source.getRelationType());
27     } catch (IllegalArgumentException exception) {
28       ErrorCode errorCode =
29           ComponentDependencyModelErrorBuilder.getInvalidRelationTypeErrorBuilder();
30       MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
31           LoggerTragetServiceName.CREATE_COMPONENT_DEPENDENCY_MODEL, ErrorLevel.ERROR.name(),
32           errorCode.id(), errorCode.message() );
33       throw new CoreException(errorCode);
34     }
35   }
36 }