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.mso.client.aai;
23 import org.openecomp.mso.client.aai.entities.Configuration;
24 import org.openecomp.mso.client.aai.entities.uri.AAIResourceUri;
25 import org.openecomp.mso.client.aai.entities.uri.AAIUriFactory;
26 import org.openecomp.mso.serviceinstancebeans.RequestDetails;
28 public class AAIConfigurationClient {
30 private AAIResourcesClient aaiClient;
32 private static final String ORCHESTRATION_STATUS = "PendingCreate";
34 public AAIConfigurationClient() {
35 aaiClient = new AAIResourcesClient();
38 public void createConfiguration(RequestDetails requestDetails, String configurationId, String configurationType,
39 String configurationSubType) {
40 Configuration payload = new Configuration();
41 payload.setConfigurationId(configurationId);
42 payload.setConfigurationType(configurationType);
43 payload.setConfigurationSubType(configurationSubType);
44 payload.setModelInvariantId(requestDetails.getModelInfo().getModelInvariantId());
45 payload.setModelVersionId(requestDetails.getModelInfo().getModelVersionId());
46 payload.setOrchestrationStatus(ORCHESTRATION_STATUS);
47 payload.setOperationalStatus("");
48 AAIResourceUri uri = getConfigurationURI(payload.getConfigurationId());
49 payload.setConfigurationSelflink(uri.build().getPath());
50 payload.setModelCustomizationId(requestDetails.getModelInfo().getModelCustomizationId());
52 aaiClient.create(uri, payload);
55 public void deleteConfiguration(String uuid) {
56 aaiClient.delete(getConfigurationURI(uuid));
59 public void updateOrchestrationStatus(String uuid, String payload) {
60 aaiClient.update(getConfigurationURI(uuid), payload);
63 public Configuration getConfiguration(String uuid) {
64 return aaiClient.get(Configuration.class, getConfigurationURI(uuid));
67 public boolean configurationExists(String uuid) {
68 return aaiClient.exists(getConfigurationURI(uuid));
71 public AAIResourceUri getConfigurationURI(String uuid) {
72 return AAIUriFactory.createResourceUri(AAIObjectType.CONFIGURATION, uuid);