summary |
shortlog |
log |
commit | commitdiff |
review |
tree
raw |
patch |
inline | side by side (from parent 1:
0316038)
Change-Id: I74565f457b0d93be7d580f775a48c2589c5a0e25
Issue-ID: NONRTRIC-164
Signed-off-by: PatrikBuhr <patrik.buhr@est.tech>
.create(); //
private static final String GET_POLICY_RPC = "getA1Policy";
.create(); //
private static final String GET_POLICY_RPC = "getA1Policy";
- private static final String UNHANDELED_PROTOCOL = "Bug, unhandeled protocoltype: ";
private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
private final ControllerConfig controllerConfig;
private final AsyncRestClient restClient;
private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
private final ControllerConfig controllerConfig;
private final AsyncRestClient restClient;
return post(GET_POLICY_RPC, ricUrl, Optional.empty()) //
.flatMapMany(SdncJsonHelper::parseJsonArrayOfString) //
.collectList();
return post(GET_POLICY_RPC, ricUrl, Optional.empty()) //
.flatMapMany(SdncJsonHelper::parseJsonArrayOfString) //
.collectList();
+ } else {
+ return Mono.error(createIllegalProtocolException());
- throw new NullPointerException(UNHANDELED_PROTOCOL + this.protocolType);
+
+ }
+
+ private Exception createIllegalProtocolException() {
+ return new NullPointerException("Bug, unhandeled protocoltype: " + this.protocolType);
OscA1Client.UriBuilder uri = new OscA1Client.UriBuilder(ricConfig);
final String ricUrl = uri.createGetSchemaUri(policyTypeId);
return post(GET_POLICY_RPC, ricUrl, Optional.empty());
OscA1Client.UriBuilder uri = new OscA1Client.UriBuilder(ricConfig);
final String ricUrl = uri.createGetSchemaUri(policyTypeId);
return post(GET_POLICY_RPC, ricUrl, Optional.empty());
+ } else {
+ return Mono.error(createIllegalProtocolException());
- throw new NullPointerException(UNHANDELED_PROTOCOL + this.protocolType);
}
@Override
public Mono<String> putPolicy(Policy policy) {
}
@Override
public Mono<String> putPolicy(Policy policy) {
- final String ricUrl = getUriBuilder().createPutPolicyUri(policy.type().name(), policy.id());
- return post("putA1Policy", ricUrl, Optional.of(policy.json()));
+ return getUriBuilder() //
+ .flatMap(builder -> {
+ String ricUrl = builder.createPutPolicyUri(policy.type().name(), policy.id());
+ return post("putA1Policy", ricUrl, Optional.of(policy.json()));
+ });
.flatMapMany(Flux::fromIterable)
.flatMap(type -> post(GET_POLICY_RPC, uriBuilder.createGetPolicyIdsUri(type), Optional.empty())) //
.flatMap(SdncJsonHelper::parseJsonArrayOfString);
.flatMapMany(Flux::fromIterable)
.flatMap(type -> post(GET_POLICY_RPC, uriBuilder.createGetPolicyIdsUri(type), Optional.empty())) //
.flatMap(SdncJsonHelper::parseJsonArrayOfString);
+ } else {
+ return Flux.error(createIllegalProtocolException());
- throw new NullPointerException(UNHANDELED_PROTOCOL + this.protocolType);
@Override
public Mono<String> getPolicyStatus(Policy policy) {
@Override
public Mono<String> getPolicyStatus(Policy policy) {
- final String ricUrl = getUriBuilder().createGetPolicyStatusUri(policy.type().name(), policy.id());
- return post("getA1PolicyStatus", ricUrl, Optional.empty());
+ return getUriBuilder() //
+ .flatMap(builder -> {
+ String ricUrl = builder.createGetPolicyStatusUri(policy.type().name(), policy.id());
+ return post("getA1PolicyStatus", ricUrl, Optional.empty());
+ });
- private A1UriBuilder getUriBuilder() {
+ private Mono<A1UriBuilder> getUriBuilder() {
if (protocolType == A1ProtocolType.SDNC_OSC_STD_V1_1) {
if (protocolType == A1ProtocolType.SDNC_OSC_STD_V1_1) {
- return new StdA1ClientVersion1.UriBuilder(ricConfig);
+ return Mono.just(new StdA1ClientVersion1.UriBuilder(ricConfig));
} else if (this.protocolType == A1ProtocolType.SDNC_OSC_OSC_V1) {
} else if (this.protocolType == A1ProtocolType.SDNC_OSC_OSC_V1) {
- return new OscA1Client.UriBuilder(ricConfig);
+ return Mono.just(new OscA1Client.UriBuilder(ricConfig));
+ } else {
+ return Mono.error(createIllegalProtocolException());
- throw new NullPointerException(UNHANDELED_PROTOCOL + this.protocolType);
}
private Mono<A1ProtocolType> tryOscProtocolVersion() {
}
private Mono<A1ProtocolType> tryOscProtocolVersion() {
.flatMapMany(Flux::fromIterable)
.flatMap(type -> post(GET_POLICY_RPC, uri.createGetPolicyIdsUri(type), Optional.empty())) //
.flatMap(SdncJsonHelper::parseJsonArrayOfString);
.flatMapMany(Flux::fromIterable)
.flatMap(type -> post(GET_POLICY_RPC, uri.createGetPolicyIdsUri(type), Optional.empty())) //
.flatMap(SdncJsonHelper::parseJsonArrayOfString);
+ } else {
+ return Flux.error(createIllegalProtocolException());
- throw new NullPointerException(UNHANDELED_PROTOCOL + this.protocolType);
}
private Mono<String> deletePolicyById(String type, String policyId) {
}
private Mono<String> deletePolicyById(String type, String policyId) {
- final String ricUrl = getUriBuilder().createDeleteUri(type, policyId);
- return post("deleteA1Policy", ricUrl, Optional.empty());
+ return getUriBuilder() //
+ .flatMap(builder -> {
+ String ricUrl = builder.createDeleteUri(type, policyId);
+ return post("deleteA1Policy", ricUrl, Optional.empty());
+ });
}
private Mono<String> post(String rpcName, String ricUrl, Optional<String> body) {
}
private Mono<String> post(String rpcName, String ricUrl, Optional<String> body) {
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
+import java.lang.invoke.MethodHandles;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import org.oransc.policyagent.repository.Rics;
import org.oransc.policyagent.repository.Service;
import org.oransc.policyagent.repository.Services;
import org.oransc.policyagent.repository.Rics;
import org.oransc.policyagent.repository.Service;
import org.oransc.policyagent.repository.Services;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
@Autowired
private Services services;
@Autowired
private Services services;
+ private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
private static Gson gson = new GsonBuilder() //
.serializeNulls() //
.create(); //
private static Gson gson = new GsonBuilder() //
.serializeNulls() //
.create(); //
policyInfo.service = p.ownerServiceName();
policyInfo.lastModified = p.lastModified();
if (!policyInfo.validate()) {
policyInfo.service = p.ownerServiceName();
policyInfo.lastModified = p.lastModified();
if (!policyInfo.validate()) {
- throw new NullPointerException("BUG, all fields must be set");
+ logger.error("BUG, all fields must be set");
synchronized (this) {
if (lockCounter <= 0) {
lockCounter = -1; // Might as well stop, to make it easier to find the problem
synchronized (this) {
if (lockCounter <= 0) {
lockCounter = -1; // Might as well stop, to make it easier to find the problem
- throw new NullPointerException("Number of unlocks must match the number of locks");
+ logger.error("Number of unlocks must match the number of locks");
}
this.lockCounter--;
if (lockCounter == 0) {
}
this.lockCounter--;
if (lockCounter == 0) {
import org.mockito.stubbing.OngoingStubbing;
import org.oransc.policyagent.clients.A1Client.A1ProtocolType;
import org.oransc.policyagent.clients.SdncOscA1Client.AdapterOutput;
import org.mockito.stubbing.OngoingStubbing;
import org.oransc.policyagent.clients.A1Client.A1ProtocolType;
import org.oransc.policyagent.clients.SdncOscA1Client.AdapterOutput;
+import org.oransc.policyagent.clients.SdncOscA1Client.AdapterRequest;
import org.oransc.policyagent.configuration.ControllerConfig;
import org.oransc.policyagent.configuration.ImmutableControllerConfig;
import org.oransc.policyagent.repository.Policy;
import org.oransc.policyagent.configuration.ControllerConfig;
import org.oransc.policyagent.configuration.ImmutableControllerConfig;
import org.oransc.policyagent.repository.Policy;
.block();
assertEquals("OK", returned, "");
final String expUrl = policiesUrl() + "/" + POLICY_1_ID;
.block();
assertEquals("OK", returned, "");
final String expUrl = policiesUrl() + "/" + POLICY_1_ID;
- ImmutableAdapterRequest expectedInputParams = ImmutableAdapterRequest.builder() //
+ AdapterRequest expectedInputParams = ImmutableAdapterRequest.builder() //
.nearRtRicUrl(expUrl) //
.body(POLICY_JSON_VALID) //
.build();
.nearRtRicUrl(expUrl) //
.body(POLICY_JSON_VALID) //
.build();
Mono<String> returnedMono = clientUnderTest
.putPolicy(A1ClientHelper.createPolicy(RIC_1_URL, POLICY_1_ID, policyJson, POLICY_TYPE_1_ID));
Mono<String> returnedMono = clientUnderTest
.putPolicy(A1ClientHelper.createPolicy(RIC_1_URL, POLICY_1_ID, policyJson, POLICY_TYPE_1_ID));
+ StepVerifier.create(returnedMono) //
+ .expectSubscription() //
+ .expectErrorMatches(t -> t instanceof WebClientResponseException) //
+ .verify();
final String expUrl = policiesUrl() + "/" + POLICY_1_ID;
final String expUrl = policiesUrl() + "/" + POLICY_1_ID;
- ImmutableAdapterRequest expRequestParams = ImmutableAdapterRequest.builder() //
+ AdapterRequest expRequestParams = ImmutableAdapterRequest.builder() //
.nearRtRicUrl(expUrl) //
.body(policyJson) //
.build();
.nearRtRicUrl(expUrl) //
.body(policyJson) //
.build();
.block();
assertEquals("OK", returned, "");
final String expUrl = policiesUrl() + "/" + POLICY_1_ID;
.block();
assertEquals("OK", returned, "");
final String expUrl = policiesUrl() + "/" + POLICY_1_ID;
- ImmutableAdapterRequest expectedInputParams = ImmutableAdapterRequest.builder() //
+ AdapterRequest expectedInputParams = ImmutableAdapterRequest.builder() //
.nearRtRicUrl(expUrl) //
.build();
String expInput = SdncJsonHelper.createInputJsonString(expectedInputParams);
.nearRtRicUrl(expUrl) //
.build();
String expInput = SdncJsonHelper.createInputJsonString(expectedInputParams);
assertEquals("OK", returnedStatus, "unexpected status");
final String expUrl = policiesUrl() + "/" + POLICY_1_ID + "/status";
assertEquals("OK", returnedStatus, "unexpected status");
final String expUrl = policiesUrl() + "/" + POLICY_1_ID + "/status";
- ImmutableAdapterRequest expectedInputParams = ImmutableAdapterRequest.builder() //
+ AdapterRequest expectedInputParams = ImmutableAdapterRequest.builder() //
.nearRtRicUrl(expUrl) //
.build();
String expInput = SdncJsonHelper.createInputJsonString(expectedInputParams);
.nearRtRicUrl(expUrl) //
.build();
String expInput = SdncJsonHelper.createInputJsonString(expectedInputParams);