diff options
author | Brinda Santh <bs2796@att.com> | 2019-11-25 17:19:02 -0500 |
---|---|---|
committer | Brinda Santh <bs2796@att.com> | 2019-11-27 10:07:51 -0500 |
commit | 71616cc0a6bee9c604b35754778ec5cae7477635 (patch) | |
tree | b7503722ef79befb3632c9092b025aeb1b03a001 /ms | |
parent | 341db21b2ac0a14a1ed2b8bf7930914dda054bfe (diff) |
Upgrade CDS GRPC implementations.
Dependent on : https://gerrit.onap.org/r/c/ccsdk/parent/+/98823
Issue-ID: CCSDK-1737
Signed-off-by: Brinda Santh <bs2796@att.com>
Change-Id: I0b5087f7e98490d7066f389af29424aed40a6520
Diffstat (limited to 'ms')
14 files changed, 126 insertions, 44 deletions
diff --git a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/interceptor/GrpcClientLoggingInterceptor.kt b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/interceptor/GrpcClientLoggingInterceptor.kt index 99ac74070..43e56606f 100644 --- a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/interceptor/GrpcClientLoggingInterceptor.kt +++ b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/interceptor/GrpcClientLoggingInterceptor.kt @@ -42,12 +42,13 @@ class GrpcClientLoggingInterceptor : ClientInterceptor { .SimpleForwardingClientCall<ReqT, RespT>(channel.newCall(method, callOptions)) { override fun start(responseListener: Listener<RespT>, headers: Metadata) { - val listener = object : ForwardingClientCallListener.SimpleForwardingClientCallListener<RespT>(responseListener) { - override fun onMessage(message: RespT) { - loggingService.grpcInvoking(headers) - super.onMessage(message) + val listener = + object : ForwardingClientCallListener.SimpleForwardingClientCallListener<RespT>(responseListener) { + override fun onMessage(message: RespT) { + loggingService.grpcInvoking(headers) + super.onMessage(message) + } } - } super.start(listener, headers) } } diff --git a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/interceptor/GrpcServerLoggingInterceptor.kt b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/interceptor/GrpcServerLoggingInterceptor.kt index ec0761af4..a49b96743 100644 --- a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/interceptor/GrpcServerLoggingInterceptor.kt +++ b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/interceptor/GrpcServerLoggingInterceptor.kt @@ -40,7 +40,7 @@ class GrpcServerLoggingInterceptor : ServerInterceptor { requestHeaders: Metadata, next: ServerCallHandler<ReqT, RespT> ): - ServerCall.Listener<ReqT> { + ServerCall.Listener<ReqT> { val forwardingServerCall = object : ForwardingServerCall.SimpleForwardingServerCall<ReqT, RespT>(call) { override fun sendHeaders(responseHeaders: Metadata) { diff --git a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BasicAuthGrpcClientService.kt b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BasicAuthGrpcClientService.kt index e3fd14c1e..f7be8c66d 100644 --- a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BasicAuthGrpcClientService.kt +++ b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BasicAuthGrpcClientService.kt @@ -18,7 +18,6 @@ package org.onap.ccsdk.cds.blueprintsprocessor.grpc.service import io.grpc.ManagedChannel import io.grpc.internal.DnsNameResolverProvider -import io.grpc.internal.PickFirstLoadBalancerProvider import io.grpc.netty.NettyChannelBuilder import org.onap.ccsdk.cds.blueprintsprocessor.grpc.BasicAuthGrpcClientProperties @@ -29,7 +28,6 @@ open class BasicAuthGrpcClientService(private val basicAuthGrpcClientProperties: val managedChannel = NettyChannelBuilder .forAddress(basicAuthGrpcClientProperties.host, basicAuthGrpcClientProperties.port) .nameResolverFactory(DnsNameResolverProvider()) - .loadBalancerFactory(PickFirstLoadBalancerProvider()) // .intercept(BasicAuthClientInterceptor(basicAuthGrpcClientProperties)).usePlaintext() .build() return managedChannel diff --git a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BluePrintGrpcLibPropertyService.kt b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BluePrintGrpcLibPropertyService.kt index 8a3c5a6a7..79da447a1 100644 --- a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BluePrintGrpcLibPropertyService.kt +++ b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BluePrintGrpcLibPropertyService.kt @@ -87,7 +87,7 @@ open class BluePrintGrpcLibPropertyService(private var bluePrintPropertiesServic } private fun blueprintGrpcServerService(grpcServerProperties: GrpcServerProperties): - BluePrintGrpcServerService { + BluePrintGrpcServerService { when (grpcServerProperties) { is TLSAuthGrpcServerProperties -> { return TLSAuthGrpcServerService(grpcServerProperties) @@ -151,7 +151,7 @@ open class BluePrintGrpcLibPropertyService(private var bluePrintPropertiesServic } fun blueprintGrpcClientService(grpcClientProperties: GrpcClientProperties): - BluePrintGrpcClientService { + BluePrintGrpcClientService { return when (grpcClientProperties) { is TokenAuthGrpcClientProperties -> { TokenAuthGrpcClientService(grpcClientProperties) diff --git a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/TLSAuthGrpcClientService.kt b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/TLSAuthGrpcClientService.kt index 68ca3c16b..44df5fbe5 100644 --- a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/TLSAuthGrpcClientService.kt +++ b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/TLSAuthGrpcClientService.kt @@ -18,7 +18,6 @@ package org.onap.ccsdk.cds.blueprintsprocessor.grpc.service import io.grpc.ManagedChannel import io.grpc.internal.DnsNameResolverProvider -import io.grpc.internal.PickFirstLoadBalancerProvider import io.grpc.netty.GrpcSslContexts import io.grpc.netty.NettyChannelBuilder import io.netty.handler.ssl.SslContext @@ -30,10 +29,14 @@ class TLSAuthGrpcClientService(private val tlsAuthGrpcClientProperties: TLSAuthG BluePrintGrpcClientService { override suspend fun channel(): ManagedChannel { + + val target = + if (tlsAuthGrpcClientProperties.port == -1) tlsAuthGrpcClientProperties.host + else "${tlsAuthGrpcClientProperties.host}:${tlsAuthGrpcClientProperties.port}" + return NettyChannelBuilder - .forAddress(tlsAuthGrpcClientProperties.host, tlsAuthGrpcClientProperties.port) + .forTarget(target) .nameResolverFactory(DnsNameResolverProvider()) - .loadBalancerFactory(PickFirstLoadBalancerProvider()) .intercept(GrpcClientLoggingInterceptor()) .sslContext(sslContext()) .build() diff --git a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/TokenAuthGrpcClientService.kt b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/TokenAuthGrpcClientService.kt index 371353db2..4c991df1f 100644 --- a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/TokenAuthGrpcClientService.kt +++ b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/TokenAuthGrpcClientService.kt @@ -25,7 +25,6 @@ import io.grpc.ManagedChannel import io.grpc.Metadata import io.grpc.MethodDescriptor import io.grpc.internal.DnsNameResolverProvider -import io.grpc.internal.PickFirstLoadBalancerProvider import io.grpc.netty.NettyChannelBuilder import org.onap.ccsdk.cds.blueprintsprocessor.grpc.TokenAuthGrpcClientProperties import org.onap.ccsdk.cds.blueprintsprocessor.grpc.interceptor.GrpcClientLoggingInterceptor @@ -34,17 +33,21 @@ class TokenAuthGrpcClientService(private val tokenAuthGrpcClientProperties: Toke BluePrintGrpcClientService { override suspend fun channel(): ManagedChannel { + val target = + if (tokenAuthGrpcClientProperties.port == -1) tokenAuthGrpcClientProperties.host + else "${tokenAuthGrpcClientProperties.host}:${tokenAuthGrpcClientProperties.port}" + val managedChannel = NettyChannelBuilder - .forAddress(tokenAuthGrpcClientProperties.host, tokenAuthGrpcClientProperties.port) + .forTarget(target) .nameResolverFactory(DnsNameResolverProvider()) - .loadBalancerFactory(PickFirstLoadBalancerProvider()) .intercept(GrpcClientLoggingInterceptor()) .intercept(TokenAuthClientInterceptor(tokenAuthGrpcClientProperties)).usePlaintext().build() return managedChannel } } -class TokenAuthClientInterceptor(private val tokenAuthGrpcClientProperties: TokenAuthGrpcClientProperties) : ClientInterceptor { +class TokenAuthClientInterceptor(private val tokenAuthGrpcClientProperties: TokenAuthGrpcClientProperties) : + ClientInterceptor { override fun <ReqT, RespT> interceptCall( method: MethodDescriptor<ReqT, RespT>, diff --git a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BluePrintGrpcLibPropertyServiceTest.kt b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BluePrintGrpcLibPropertyServiceTest.kt index ea17b94a1..d9a8082d4 100644 --- a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BluePrintGrpcLibPropertyServiceTest.kt +++ b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/BluePrintGrpcLibPropertyServiceTest.kt @@ -84,23 +84,19 @@ class BluePrintGrpcLibPropertyServiceTest { val properties = bluePrintGrpcLibPropertyService.grpcClientProperties( "blueprintsprocessor.grpcclient.sample" ) - as BasicAuthGrpcClientProperties + as BasicAuthGrpcClientProperties assertNotNull(properties, "failed to create property bean") assertNotNull( - properties.host, "failed to get host property" + - " in property bean" + properties.host, "failed to get host property in property bean" ) assertNotNull( - properties.port, "failed to get host property" + - " in property bean" + properties.port, "failed to get host property in property bean" ) assertNotNull( - properties.username, "failed to get host pro" + - "perty in property bean" + properties.username, "failed to get host property in property bean" ) assertNotNull( - properties.password, "failed to get host pr" + - "operty in property bean" + properties.password, "failed to get host property in property bean" ) } @@ -110,10 +106,10 @@ class BluePrintGrpcLibPropertyServiceTest { @Test fun testGrpcClientPropertiesWithJson() { val json: String = "{\n" + - " \"type\" : \"token-auth\",\n" + - " \"host\" : \"127.0.0.1\",\n" + - " \"port\" : \"50505\"\n" + - "}" + " \"type\" : \"token-auth\",\n" + + " \"host\" : \"127.0.0.1\",\n" + + " \"port\" : \"50505\"\n" + + "}" val mapper = ObjectMapper() val actualObj: JsonNode = mapper.readTree(json) val properties = bluePrintGrpcLibPropertyService.grpcClientProperties( @@ -152,12 +148,12 @@ class BluePrintGrpcLibPropertyServiceTest { @Test fun testGrpcClientServiceWithJson() { val json: String = "{\n" + - " \"type\" : \"basic-auth\",\n" + - " \"host\" : \"127.0.0.1\",\n" + - " \"port\" : \"50505\",\n" + - " \"username\" : \"sampleuser\",\n" + - " \"password\" : \"samplepwd\"\n" + - "}" + " \"type\" : \"basic-auth\",\n" + + " \"host\" : \"127.0.0.1\",\n" + + " \"port\" : \"50505\",\n" + + " \"username\" : \"sampleuser\",\n" + + " \"password\" : \"samplepwd\"\n" + + "}" val mapper = ObjectMapper() val actualObj: JsonNode = mapper.readTree(json) val svc = bluePrintGrpcLibPropertyService diff --git a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/MockTLSBluePrintProcessingServer.kt b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/MockTLSBluePrintProcessingServer.kt index 25828b15e..fb7282f75 100644 --- a/ms/blueprintsprocessor/modules/commons/grpc-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/MockTLSBluePrintProcessingServer.kt +++ b/ms/blueprintsprocessor/modules/commons/grpc-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/grpc/service/MockTLSBluePrintProcessingServer.kt @@ -57,7 +57,7 @@ class MockTLSBluePrintProcessingServer : BluePrintProcessingServiceGrpc.BluePrin override fun onNext(executionServiceInput: ExecutionServiceInput) { log.info( "Received requestId(${executionServiceInput.commonHeader.requestId}) " + - "subRequestId(${executionServiceInput.commonHeader.subRequestId})" + "subRequestId(${executionServiceInput.commonHeader.subRequestId})" ) responseObserver.onNext(buildResponse(executionServiceInput)) responseObserver.onCompleted() diff --git a/ms/blueprintsprocessor/modules/services/execution-service/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/StreamingRemoteExecutionServiceTest.kt b/ms/blueprintsprocessor/modules/services/execution-service/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/StreamingRemoteExecutionServiceTest.kt index dede885c1..28e2b11b2 100644 --- a/ms/blueprintsprocessor/modules/services/execution-service/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/StreamingRemoteExecutionServiceTest.kt +++ b/ms/blueprintsprocessor/modules/services/execution-service/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/services/execution/StreamingRemoteExecutionServiceTest.kt @@ -76,7 +76,7 @@ class StreamingRemoteExecutionServiceTest { val streamingRemoteExecutionService = StreamingRemoteExecutionServiceImpl(bluePrintGrpcLibPropertyService) val spyStreamingRemoteExecutionService = spyk(streamingRemoteExecutionService) - /** To test with real server, uncomment below line */ + /** To test with real server, comment below line */ coEvery() { spyStreamingRemoteExecutionService.createGrpcChannel(any()) } returns channel /** Test Send and Receive non interactive transaction */ diff --git a/ms/blueprintsprocessor/parent/pom.xml b/ms/blueprintsprocessor/parent/pom.xml index b8bf82093..3dbd26577 100755 --- a/ms/blueprintsprocessor/parent/pom.xml +++ b/ms/blueprintsprocessor/parent/pom.xml @@ -266,6 +266,21 @@ <version>${grpc.version}</version> </dependency> <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + <version>${grpc.version}</version> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-grpclb</artifactId> + <version>${grpc.version}</version> + </dependency> + <dependency> + <groupId>com.google.protobuf</groupId> + <artifactId>protobuf-java</artifactId> + <version>${protobuff.java.version}</version> + </dependency> + <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java-util</artifactId> <version>${protobuff.java.utils.version}</version> @@ -469,6 +484,11 @@ <artifactId>config-snapshots</artifactId> <version>${project.version}</version> </dependency> + <dependency> + <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId> + <artifactId>message-prioritizaion</artifactId> + <version>${project.version}</version> + </dependency> <!-- Diff capability providers for config-snapshots --> <dependency> @@ -667,6 +687,18 @@ <artifactId>grpc-stub</artifactId> </dependency> <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-grpclb</artifactId> + </dependency> + <dependency> + <groupId>com.google.protobuf</groupId> + <artifactId>protobuf-java</artifactId> + </dependency> + <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java-util</artifactId> </dependency> diff --git a/ms/controllerblueprints/modules/blueprint-proto/pom.xml b/ms/controllerblueprints/modules/blueprint-proto/pom.xml index fef6cb7ac..8c2c45dd4 100644 --- a/ms/controllerblueprints/modules/blueprint-proto/pom.xml +++ b/ms/controllerblueprints/modules/blueprint-proto/pom.xml @@ -43,7 +43,7 @@ <version>0.6.1</version> <configuration> <protocArtifact> - com.google.protobuf:protoc:3.6.1:exe:${os.detected.classifier} + com.google.protobuf:protoc:3.10.0:exe:${os.detected.classifier} </protocArtifact> <protoSourceRoot>${project.basedir}/../../../../components/model-catalog/proto-definition/proto </protoSourceRoot> diff --git a/ms/controllerblueprints/parent/pom.xml b/ms/controllerblueprints/parent/pom.xml index a0d083b2e..906854d78 100644 --- a/ms/controllerblueprints/parent/pom.xml +++ b/ms/controllerblueprints/parent/pom.xml @@ -211,6 +211,21 @@ <version>${grpc.version}</version> </dependency> <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + <version>${grpc.version}</version> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-grpclb</artifactId> + <version>${grpc.version}</version> + </dependency> + <dependency> + <groupId>com.google.protobuf</groupId> + <artifactId>protobuf-java</artifactId> + <version>${protobuff.java.version}</version> + </dependency> + <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java-util</artifactId> <version>${protobuff.java.utils.version}</version> @@ -361,6 +376,18 @@ <artifactId>grpc-stub</artifactId> </dependency> <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-grpclb</artifactId> + </dependency> + <dependency> + <groupId>com.google.protobuf</groupId> + <artifactId>protobuf-java</artifactId> + </dependency> + <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java-util</artifactId> </dependency> diff --git a/ms/sdclistener/application/pom.xml b/ms/sdclistener/application/pom.xml index f958ef924..7fc2da228 100644 --- a/ms/sdclistener/application/pom.xml +++ b/ms/sdclistener/application/pom.xml @@ -76,23 +76,32 @@ <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-netty</artifactId> - <version>${grpc.version}</version> </dependency> <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-protobuf</artifactId> - <version>${grpc.version}</version> </dependency> <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-stub</artifactId> - <version>${grpc.version}</version> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-grpclb</artifactId> </dependency> <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> </dependency> <dependency> + <groupId>com.google.protobuf</groupId> + <artifactId>protobuf-java-util</artifactId> + </dependency> + <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-testing</artifactId> <scope>test</scope> diff --git a/ms/sdclistener/parent/pom.xml b/ms/sdclistener/parent/pom.xml index 65ca25040..66685c97d 100755 --- a/ms/sdclistener/parent/pom.xml +++ b/ms/sdclistener/parent/pom.xml @@ -35,8 +35,6 @@ <properties> <spring.boot.version>2.1.3.RELEASE</spring.boot.version> <spring.version>5.1.5.RELEASE</spring.version> - <grpc.version>1.18.0</grpc.version> - <protobuff.java.utils.version>3.6.1</protobuff.java.utils.version> <eelf.version>1.0.0</eelf.version> <guava.version>27.0.1-jre</guava.version> <onap.logger.slf4j>1.2.2</onap.logger.slf4j> @@ -110,11 +108,26 @@ <version>${grpc.version}</version> </dependency> <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + <version>${grpc.version}</version> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-grpclb</artifactId> + <version>${grpc.version}</version> + </dependency> + <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> <version>${protobuff.java.utils.version}</version> </dependency> <dependency> + <groupId>com.google.protobuf</groupId> + <artifactId>protobuf-java-util</artifactId> + <version>${protobuff.java.utils.version}</version> + </dependency> + <dependency> <groupId>org.onap.ccsdk.cds.controllerblueprints</groupId> <artifactId>blueprint-proto</artifactId> <version>${project.version}</version> |