2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.openecomp.sdc.asdctool.impl.migration.v1707.jsonmodel;
23 import fj.data.Either;
24 import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
25 import org.openecomp.sdc.be.model.operations.impl.ConsumerOperation;
26 import org.openecomp.sdc.be.resources.data.ConsumerData;
28 import javax.annotation.Resource;
29 import java.util.List;
31 import static org.openecomp.sdc.asdctool.impl.migration.v1707.MigrationUtils.handleError;
33 public class ConsumersMigration extends JsonModelMigration<ConsumerData> {
35 @Resource(name = "consumer-operation")
36 private ConsumerOperation consumerOperation;
38 @Resource(name = "consumer-operation-mig")
39 private ConsumerOperation consumerOperationMigration;
42 Either<List<ConsumerData>, ?> getElementsToMigrate() {
43 return consumerOperation.getAll();
47 Either<ConsumerData, ?> getElementFromNewGraph(ConsumerData element) {
48 return consumerOperationMigration.getCredentials(element.getConsumerDataDefinition().getConsumerName());
52 boolean save(ConsumerData element) {
53 return consumerOperationMigration.createCredentials(element)
54 .either(savedConsumer -> true,
55 err -> handleError(String.format("failed to save consumer %s. reason: %s", element.getConsumerDataDefinition().getConsumerName(), err.name())));
59 StorageOperationStatus getNotFoundErrorStatus() {
60 return StorageOperationStatus.NOT_FOUND;
64 public String description() {
65 return "consumers migration";