Sync Integ to Master
[sdc.git] / catalog-be / src / main / java / org / openecomp / sdc / be / components / impl / InterfaceLifecycleTypeImportManager.java
index e7d0512..cfc2505 100644 (file)
 
 package org.openecomp.sdc.be.components.impl;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import javax.annotation.Resource;
-
+import fj.data.Either;
 import org.openecomp.sdc.be.dao.api.ActionStatus;
 import org.openecomp.sdc.be.impl.ComponentsUtils;
 import org.openecomp.sdc.be.model.InterfaceDefinition;
@@ -39,86 +32,86 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Component;
 
-import fj.data.Either;
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
 
 @Component("interfaceLifecycleTypeImportManager")
 public class InterfaceLifecycleTypeImportManager {
 
-       @Resource
-       private IInterfaceLifecycleOperation interfaceLifecycleOperation;
-
-       @Resource
-       private ComponentsUtils componentsUtils;
-       @Resource
-       private CommonImportManager commonImportManager;
-
-       private static Logger log = LoggerFactory.getLogger(InterfaceLifecycleTypeImportManager.class.getName());
-
-       public Either<List<InterfaceDefinition>, ResponseFormat> createLifecycleTypes(String interfaceLifecycleTypesYml) {
-
-               Either<List<InterfaceDefinition>, ActionStatus> interfaces = createLifecyclyTypeFromYml(interfaceLifecycleTypesYml);
-               if (interfaces.isRight()) {
-                       ActionStatus status = interfaces.right().value();
-                       ResponseFormat responseFormat = componentsUtils.getResponseFormatByGroupType(status, null);
-                       return Either.right(responseFormat);
-               }
-               return createInterfacesByDao(interfaces.left().value());
-
-       }
-
-       private Either<List<InterfaceDefinition>, ActionStatus> createLifecyclyTypeFromYml(String interfaceLifecycleTypesYml) {
-               return commonImportManager.createElementTypesFromYml(interfaceLifecycleTypesYml, (lifecycleTypeName, lifecycleTypeJsonData) -> createLifecycleType(lifecycleTypeName, lifecycleTypeJsonData));
-
-       }
-
-       private Either<List<InterfaceDefinition>, ResponseFormat> createInterfacesByDao(List<InterfaceDefinition> interfacesToCreate) {
-               List<InterfaceDefinition> createdInterfaces = new ArrayList<>();
-               Either<List<InterfaceDefinition>, ResponseFormat> eitherResult = Either.left(createdInterfaces);
-               Iterator<InterfaceDefinition> interfaceItr = interfacesToCreate.iterator();
-               boolean stopDao = false;
-               while (interfaceItr.hasNext() && !stopDao) {
-                       InterfaceDefinition interfaceDef = interfaceItr.next();
-
-                       log.info("send interfaceDefinition {} to dao for create", interfaceDef.getType());
-
-                       Either<InterfaceDefinition, StorageOperationStatus> dataModelResponse = interfaceLifecycleOperation.createInterfaceType(interfaceDef);
-                       if (dataModelResponse.isRight()) {
-                               log.info("failed to create interface : {}  error: {}", interfaceDef.getType(), dataModelResponse.right().value().name());
-                               if (dataModelResponse.right().value() != StorageOperationStatus.SCHEMA_VIOLATION) {
-                                       ResponseFormat responseFormat = componentsUtils.getResponseFormat(componentsUtils.convertFromStorageResponseForLifecycleType(dataModelResponse.right().value()), interfaceDef.getType());
-                                       eitherResult = Either.right(responseFormat);
-                                       stopDao = true;
-                               }
-
-                       } else {
-                               createdInterfaces.add(dataModelResponse.left().value());
-                       }
-                       if (!interfaceItr.hasNext()) {
-                               log.info("lifecycle types were created successfully!!!");
-                       }
-               }
-               return eitherResult;
-       }
-
-       private InterfaceDefinition createLifecycleType(String interfaceDefinition, Map<String, Object> toscaJson) {
-               InterfaceDefinition interfaceDef = new InterfaceDefinition();
-               interfaceDef.setType(interfaceDefinition);
-
-               Map<String, Operation> operations = new HashMap<String, Operation>();
-
-               for (Map.Entry<String, Object> entry : toscaJson.entrySet()) {
-                       Operation operation = new Operation();
-                       Map<String, Object> opProp = (Map<String, Object>) entry.getValue();
-
-                       operation.setDescription((String) opProp.get("description"));
-                       operations.put(entry.getKey(), operation);
-               }
-               interfaceDef.setOperationsMap(operations);
-               return interfaceDef;
-       }
-
-       public static void setLog(Logger log) {
-               InterfaceLifecycleTypeImportManager.log = log;
-       }
-
+    @Resource
+    private IInterfaceLifecycleOperation interfaceLifecycleOperation;
+
+    @Resource
+    private ComponentsUtils componentsUtils;
+    @Resource
+    private CommonImportManager commonImportManager;
+
+    private static final Logger log = LoggerFactory.getLogger(InterfaceLifecycleTypeImportManager.class);
+
+    public Either<List<InterfaceDefinition>, ResponseFormat> createLifecycleTypes(String interfaceLifecycleTypesYml) {
+
+        Either<List<InterfaceDefinition>, ActionStatus> interfaces = createLifecyclyTypeFromYml(interfaceLifecycleTypesYml);
+        if (interfaces.isRight()) {
+            ActionStatus status = interfaces.right().value();
+            ResponseFormat responseFormat = componentsUtils.getResponseFormatByGroupType(status, null);
+            return Either.right(responseFormat);
+        }
+        return createInterfacesByDao(interfaces.left().value());
+
+    }
+
+    private Either<List<InterfaceDefinition>, ActionStatus> createLifecyclyTypeFromYml(String interfaceLifecycleTypesYml) {
+        return commonImportManager.createElementTypesFromYml(interfaceLifecycleTypesYml, (lifecycleTypeName, lifecycleTypeJsonData) -> createLifecycleType(lifecycleTypeName, lifecycleTypeJsonData));
+
+    }
+
+    private Either<List<InterfaceDefinition>, ResponseFormat> createInterfacesByDao(List<InterfaceDefinition> interfacesToCreate) {
+        List<InterfaceDefinition> createdInterfaces = new ArrayList<>();
+        Either<List<InterfaceDefinition>, ResponseFormat> eitherResult = Either.left(createdInterfaces);
+        Iterator<InterfaceDefinition> interfaceItr = interfacesToCreate.iterator();
+        boolean stopDao = false;
+        while (interfaceItr.hasNext() && !stopDao) {
+            InterfaceDefinition interfaceDef = interfaceItr.next();
+
+            log.info("send interfaceDefinition {} to dao for create", interfaceDef.getType());
+
+            Either<InterfaceDefinition, StorageOperationStatus> dataModelResponse = interfaceLifecycleOperation.createInterfaceType(interfaceDef);
+            if (dataModelResponse.isRight()) {
+                log.info("failed to create interface : {}  error: {}", interfaceDef.getType(), dataModelResponse.right().value().name());
+                if (dataModelResponse.right().value() != StorageOperationStatus.SCHEMA_VIOLATION) {
+                    ResponseFormat responseFormat = componentsUtils.getResponseFormat(componentsUtils.convertFromStorageResponseForLifecycleType(dataModelResponse.right().value()), interfaceDef.getType());
+                    eitherResult = Either.right(responseFormat);
+                    stopDao = true;
+                }
+
+            } else {
+                createdInterfaces.add(dataModelResponse.left().value());
+            }
+            if (!interfaceItr.hasNext()) {
+                log.info("lifecycle types were created successfully!!!");
+            }
+        }
+        return eitherResult;
+    }
+
+    private InterfaceDefinition createLifecycleType(String interfaceDefinition, Map<String, Object> toscaJson) {
+        InterfaceDefinition interfaceDef = new InterfaceDefinition();
+        interfaceDef.setType(interfaceDefinition);
+
+        Map<String, Operation> operations = new HashMap<String, Operation>();
+
+        for (Map.Entry<String, Object> entry : toscaJson.entrySet()) {
+            Operation operation = new Operation();
+            Map<String, Object> opProp = (Map<String, Object>) entry.getValue();
+
+            operation.setDescription((String) opProp.get("description"));
+            operations.put(entry.getKey(), operation);
+        }
+        interfaceDef.setOperationsMap(operations);
+        return interfaceDef;
+    }
 }