diff options
author | Jim Hahn <jrh3@att.com> | 2020-04-17 15:09:21 -0400 |
---|---|---|
committer | Jim Hahn <jrh3@att.com> | 2020-04-17 19:31:23 -0400 |
commit | e887a0c6c415a00888e17d1bbfe4acf548a2cfa5 (patch) | |
tree | 1cccd49d453eb1cf94b0f8f7fd7d14eae02404d9 /models-interactions/model-impl/cds/src | |
parent | bed21af59885a954e3facf7226c4678f4b69b153 (diff) |
Add PNF support to new CDS actor
Made the following updates:
- added new A&AI get-PNF Operation by refactoring AaiGetOperation,
separating out Tenant and PNF operations
- added PNF support to the CDS actor
- added logging to the CDS Handler
- added get-pnf to the A&AI simulator
Issue-ID: POLICY-2505
Change-Id: Iff140e7c864f762790d8e2ecaba62c161c859e6e
Signed-off-by: Jim Hahn <jrh3@att.com>
Diffstat (limited to 'models-interactions/model-impl/cds/src')
3 files changed, 29 insertions, 3 deletions
diff --git a/models-interactions/model-impl/cds/src/main/java/org/onap/policy/cds/client/CdsProcessorGrpcClient.java b/models-interactions/model-impl/cds/src/main/java/org/onap/policy/cds/client/CdsProcessorGrpcClient.java index b8ec7acf5..efa8369bc 100644 --- a/models-interactions/model-impl/cds/src/main/java/org/onap/policy/cds/client/CdsProcessorGrpcClient.java +++ b/models-interactions/model-impl/cds/src/main/java/org/onap/policy/cds/client/CdsProcessorGrpcClient.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2019 Bell Canada. + * Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,11 +56,19 @@ public class CdsProcessorGrpcClient implements AutoCloseable { Preconditions.checkState(validationResult.getStatus().isValid(), "Error validating CDS server " + "properties: " + validationResult.getResult()); + StringBuilder bldr = new StringBuilder("gRPC://"); + bldr.append(props.getHost()); + bldr.append(":"); + bldr.append(props.getPort()); + bldr.append('/'); + + String url = bldr.toString(); + this.channel = NettyChannelBuilder.forAddress(props.getHost(), props.getPort()) .nameResolverFactory(new DnsNameResolverProvider()) .loadBalancerFactory(new PickFirstLoadBalancerProvider()) .intercept(new BasicAuthClientHeaderInterceptor(props)).usePlaintext().build(); - this.handler = new CdsProcessorHandler(listener); + this.handler = new CdsProcessorHandler(listener, url); LOGGER.info("CdsProcessorListener started"); } diff --git a/models-interactions/model-impl/cds/src/main/java/org/onap/policy/cds/client/CdsProcessorHandler.java b/models-interactions/model-impl/cds/src/main/java/org/onap/policy/cds/client/CdsProcessorHandler.java index 5c011d83b..84baecdf1 100644 --- a/models-interactions/model-impl/cds/src/main/java/org/onap/policy/cds/client/CdsProcessorHandler.java +++ b/models-interactions/model-impl/cds/src/main/java/org/onap/policy/cds/client/CdsProcessorHandler.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2019 Bell Canada. + * Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,6 +28,9 @@ import org.onap.ccsdk.cds.controllerblueprints.processing.api.BluePrintProcessin import org.onap.ccsdk.cds.controllerblueprints.processing.api.ExecutionServiceInput; import org.onap.ccsdk.cds.controllerblueprints.processing.api.ExecutionServiceOutput; import org.onap.policy.cds.api.CdsProcessorListener; +import org.onap.policy.common.endpoints.event.comm.Topic.CommInfrastructure; +import org.onap.policy.common.endpoints.utils.NetLoggerUtil; +import org.onap.policy.common.endpoints.utils.NetLoggerUtil.EventType; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,9 +39,11 @@ public class CdsProcessorHandler { private static final Logger LOGGER = LoggerFactory.getLogger(CdsProcessorHandler.class); private CdsProcessorListener listener; + private String url; - CdsProcessorHandler(final CdsProcessorListener listener) { + CdsProcessorHandler(final CdsProcessorListener listener, String url) { this.listener = listener; + this.url = url; } CountDownLatch process(ExecutionServiceInput request, ManagedChannel channel) { @@ -50,11 +56,18 @@ public class CdsProcessorHandler { final StreamObserver<ExecutionServiceOutput> responseObserver = new StreamObserver<ExecutionServiceOutput>() { @Override public void onNext(ExecutionServiceOutput output) { + LOGGER.info("[{}|{}|{}|]{}{}", EventType.IN, CommInfrastructure.REST, url, NetLoggerUtil.SYSTEM_LS, + output.toString()); + NetLoggerUtil.log(EventType.IN, CommInfrastructure.REST, url, output.toString()); + listener.onMessage(output); } @Override public void onError(Throwable throwable) { + LOGGER.info("[{}|{}|{}|]{}{}", EventType.IN, CommInfrastructure.REST, url, NetLoggerUtil.SYSTEM_LS, + throwable.toString()); + NetLoggerUtil.log(EventType.IN, CommInfrastructure.REST, url, throwable.toString()); listener.onError(throwable); finishLatch.countDown(); } @@ -69,6 +82,10 @@ public class CdsProcessorHandler { final StreamObserver<ExecutionServiceInput> requestObserver = asyncStub.process(responseObserver); try { + LOGGER.info("[{}|{}|{}|]{}{}", EventType.OUT, CommInfrastructure.REST, url, NetLoggerUtil.SYSTEM_LS, + request.toString()); + NetLoggerUtil.log(EventType.OUT, CommInfrastructure.REST, url, request.toString()); + // Send the message to CDS backend for processing requestObserver.onNext(request); // Mark the end of requests diff --git a/models-interactions/model-impl/cds/src/test/java/org/onap/policy/cds/client/CdsProcessorGrpcClientTest.java b/models-interactions/model-impl/cds/src/test/java/org/onap/policy/cds/client/CdsProcessorGrpcClientTest.java index 9d01ec851..0922fc4cb 100644 --- a/models-interactions/model-impl/cds/src/test/java/org/onap/policy/cds/client/CdsProcessorGrpcClientTest.java +++ b/models-interactions/model-impl/cds/src/test/java/org/onap/policy/cds/client/CdsProcessorGrpcClientTest.java @@ -92,7 +92,7 @@ public class CdsProcessorGrpcClientTest { .register(InProcessChannelBuilder.forName(SERVER_NAME).directExecutor().build()); // Create an instance of the gRPC client - client = new CdsProcessorGrpcClient(channel, new CdsProcessorHandler(listener)); + client = new CdsProcessorGrpcClient(channel, new CdsProcessorHandler(listener, "gRPC://localhost:1234/")); // Implement the test gRPC server BluePrintProcessingServiceImplBase testCdsBlueprintServerImpl = new BluePrintProcessingServiceImplBase() { |