* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
package org.openecomp.sdc.be.model.jsonjanusgraph.operations;
import fj.data.Either;
public class InterfaceOperation extends BaseOperation {
public Either<List<InterfaceDefinition>, StorageOperationStatus> addInterfaces(String componentId,
- List<InterfaceDefinition> interfaceDefinitions) {
+ List<InterfaceDefinition> interfaceDefinitions) {
return addOrUpdateInterfaces(false, componentId, interfaceDefinitions);
}
- private Either<List<InterfaceDefinition>, StorageOperationStatus> addOrUpdateInterfaces(boolean isUpdateAction,
- String componentId, List<InterfaceDefinition> interfaceDefinitions) {
-
- List<ToscaDataDefinition> interfaceDataDefinitions =
- interfaceDefinitions.stream().map(InterfaceDataDefinition::new).collect(Collectors.toList());
- StorageOperationStatus statusRes =
- performUpdateToscaAction(isUpdateAction, componentId, interfaceDataDefinitions, EdgeLabelEnum.INTERFACE,
- VertexTypeEnum.INTERFACE);
+ private Either<List<InterfaceDefinition>, StorageOperationStatus> addOrUpdateInterfaces(boolean isUpdateAction, String componentId,
+ List<InterfaceDefinition> interfaceDefinitions) {
+ List<ToscaDataDefinition> interfaceDataDefinitions = interfaceDefinitions.stream().map(InterfaceDataDefinition::new)
+ .collect(Collectors.toList());
+ StorageOperationStatus statusRes = performUpdateToscaAction(isUpdateAction, componentId, interfaceDataDefinitions, EdgeLabelEnum.INTERFACE,
+ VertexTypeEnum.INTERFACE);
if (!statusRes.equals(StorageOperationStatus.OK)) {
return Either.right(statusRes);
}
return Either.left(interfaceDefinitions);
}
- private StorageOperationStatus performUpdateToscaAction(boolean isUpdate, String componentId,
- List<ToscaDataDefinition> toscaDataList, EdgeLabelEnum edgeLabel, VertexTypeEnum vertexLabel) {
+ private StorageOperationStatus performUpdateToscaAction(boolean isUpdate, String componentId, List<ToscaDataDefinition> toscaDataList,
+ EdgeLabelEnum edgeLabel, VertexTypeEnum vertexLabel) {
if (isUpdate) {
- return updateToscaDataOfToscaElement(componentId, edgeLabel, vertexLabel, toscaDataList,
- JsonPresentationFields.UNIQUE_ID);
+ return updateToscaDataOfToscaElement(componentId, edgeLabel, vertexLabel, toscaDataList, JsonPresentationFields.UNIQUE_ID);
} else {
- return addToscaDataToToscaElement(componentId, edgeLabel, vertexLabel, toscaDataList,
- JsonPresentationFields.UNIQUE_ID);
+ return addToscaDataToToscaElement(componentId, edgeLabel, vertexLabel, toscaDataList, JsonPresentationFields.UNIQUE_ID);
}
}
public Either<List<InterfaceDefinition>, StorageOperationStatus> updateInterfaces(String componentId,
- List<InterfaceDefinition> interfaceDefinitions) {
+ List<InterfaceDefinition> interfaceDefinitions) {
return addOrUpdateInterfaces(true, componentId, interfaceDefinitions);
}
public Either<String, StorageOperationStatus> deleteInterface(String componentId, String interfacesToDelete) {
-
StorageOperationStatus statusRes = deleteToscaDataElements(componentId, EdgeLabelEnum.INTERFACE,
- Collections.singletonList(interfacesToDelete));
+ Collections.singletonList(interfacesToDelete));
if (!statusRes.equals(StorageOperationStatus.OK)) {
return Either.right(statusRes);
}
-
- Either<Map<String, InterfaceDataDefinition>, JanusGraphOperationStatus> componentEither =
- getDataFromGraph(componentId, EdgeLabelEnum.INTERFACE);
+ Either<Map<String, InterfaceDataDefinition>, JanusGraphOperationStatus> componentEither = getDataFromGraph(componentId,
+ EdgeLabelEnum.INTERFACE);
if (componentEither.isRight()) {
return Either.right(DaoStatusConverter.convertJanusGraphStatusToStorageStatus(componentEither.right().value()));
}
-
Map<String, InterfaceDataDefinition> interfaceDataDefinitionMap = componentEither.left().value();
if (MapUtils.isEmpty(interfaceDataDefinitionMap)) {
statusRes = removeToscaData(componentId, EdgeLabelEnum.INTERFACE, VertexTypeEnum.INTERFACE);
return Either.right(statusRes);
}
}
-
return Either.left(interfacesToDelete);
}
-
}