1 package org.openecomp.sdc.be.model.operations.api;
4 import org.openecomp.sdc.be.datatypes.tosca.ToscaDataDefinition;
6 import javax.validation.constraints.NotNull;
8 public interface TypeOperations<T extends ToscaDataDefinition> {
10 T addType(T newTypeDefinition);
12 T getType(String uniqueId);
14 T getLatestType(String uniqueId);
16 boolean isSameType(@NotNull T type1,@NotNull T type2);
18 T updateType(T currentTypeDefinition, T newTypeDefinition);
20 static <T> Either<T, StorageOperationStatus> mapOkStatus(StorageOperationStatus status, T obj) {
21 return status != StorageOperationStatus.OK? Either.right(status) : Either.left(obj);