import java.lang.invoke.MethodHandles;
import java.util.List;
+
import org.oransc.policyagent.configuration.RicConfig;
import org.oransc.policyagent.repository.Policy;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;
@Override
public Mono<String> getPolicyStatus(Policy policy) {
- return Mono.error(new Exception("Status not implemented in the SDNC controller"));
+ SdncOscAdapterInput inputParams = ImmutableSdncOscAdapterInput.builder() //
+ .nearRtRicUrl(ricConfig.baseUrl()) //
+ .policyId(policy.id()) //
+ .build();
+ String inputJsonString = JsonHelper.createInputJsonString(inputParams);
+ logger.debug("POST getPolicyStatus inputJsonString = {}", inputJsonString);
+
+ return restClient
+ .postWithAuthHeader(URL_PREFIX + "getPolicyStatus", inputJsonString, a1ControllerUsername,
+ a1ControllerPassword) //
+ .flatMap(response -> JsonHelper.getValueFromResponse(response, "policy-status"));
}
private Flux<String> getPolicyIds() {
logger.debug("POST getPolicyIdentities inputJsonString = {}", inputJsonString);
return restClient
- .postWithAuthHeader("/A1-ADAPTER-API:getPolicyIdentities", inputJsonString, a1ControllerUsername,
+ .postWithAuthHeader(URL_PREFIX + "getPolicyIdentities", inputJsonString, a1ControllerUsername,
a1ControllerPassword) //
.flatMap(response -> JsonHelper.getValueFromResponse(response, "policy-id-list")) //
.flatMapMany(JsonHelper::parseJsonArrayOfString);