diff options
author | saul.gill <saul.gill@est.tech> | 2023-02-13 17:53:26 +0000 |
---|---|---|
committer | saul.gill <saul.gill@est.tech> | 2023-02-13 17:53:29 +0000 |
commit | f716f67399eea26c45e700e710765ff6c06d4740 (patch) | |
tree | ccac0ff4fb07fc07af7d3153ba1d35cc08676501 /runtime-acm/src/main/java | |
parent | 1191f992ddf1f6bcc94e7fa246ee3efbc71a3a8f (diff) |
Add stubs and tests for ppnt controller
Added stubs
Added tests
Added node state and elements to all participant endpoint
Issue-ID: POLICY-4557
Change-Id: Ia76831ec02f9a308e39f138a3b24f3baced62095
Signed-off-by: saul.gill <saul.gill@est.tech>
Diffstat (limited to 'runtime-acm/src/main/java')
2 files changed, 74 insertions, 0 deletions
diff --git a/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/main/rest/stub/ParticipantControllerStub.java b/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/main/rest/stub/ParticipantControllerStub.java new file mode 100644 index 000000000..e87accf20 --- /dev/null +++ b/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/main/rest/stub/ParticipantControllerStub.java @@ -0,0 +1,70 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2023 Nordix Foundation. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.policy.clamp.acm.runtime.main.rest.stub; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; +import lombok.RequiredArgsConstructor; +import org.onap.policy.clamp.acm.runtime.main.rest.gen.ParticipantMonitoringApi; +import org.onap.policy.clamp.acm.runtime.main.web.AbstractRestController; +import org.onap.policy.clamp.models.acm.concepts.ParticipantInformation; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Profile; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@Profile("stub") +@RequiredArgsConstructor +public class ParticipantControllerStub extends AbstractRestController implements ParticipantMonitoringApi { + + private final StubUtils stubUtils; + @Value("${stub.getSingleParticipantResponse}") + private String pathToSingleParticipant; + + @Value("${stub.getMultipleParticipantResponse}") + private String pathToParticipantList; + + @Override + public ResponseEntity<ParticipantInformation> getParticipant(UUID participantId, UUID xonaprequestid) { + return stubUtils.getResponse(pathToSingleParticipant, ParticipantInformation.class); + } + + @Override + public ResponseEntity<Void> orderAllParticipantsReport(UUID xonaprequestid) { + return new ResponseEntity(HttpStatus.ACCEPTED); + } + + @Override + public ResponseEntity<Void> orderParticipantReport(UUID participantId, UUID xonaprequestid) { + return new ResponseEntity(HttpStatus.ACCEPTED); + } + + @Override + public ResponseEntity<List<ParticipantInformation>> queryParticipants(String name, String version, + UUID xonaprequestid) { + List<ParticipantInformation> participantInformationList = new ArrayList<>(); + return (ResponseEntity<List<ParticipantInformation>>) stubUtils + .getResponse(pathToParticipantList, participantInformationList.getClass()); + } +} diff --git a/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/participants/AcmParticipantProvider.java b/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/participants/AcmParticipantProvider.java index de3fc753b..d0fcdd936 100644 --- a/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/participants/AcmParticipantProvider.java +++ b/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/participants/AcmParticipantProvider.java @@ -59,6 +59,10 @@ public class AcmParticipantProvider { participants.forEach(participant -> { ParticipantInformation participantInformation = new ParticipantInformation(); participantInformation.setParticipant(participant); + participantInformation.setAcElementInstanceMap(getAutomationCompositionElementsForParticipant(participant + .getParticipantId())); + participantInformation.setAcNodeTemplateStateDefinitionMap(getNodeTemplateStatesForParticipant(participant + .getParticipantId())); participantInformationList.add(participantInformation); }); return participantInformationList; |