From 3e426bef0c727ef65cdd11166d054356b5217a5b Mon Sep 17 00:00:00 2001 From: Alexis de Talhouët Date: Fri, 22 Feb 2019 17:24:22 -0500 Subject: Provide correct output to #process request MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I7e5ceb6fc46b8b8e6289db9b4efe2f27e3f9ce91 Issue-ID: CCSDK-947 Signed-off-by: Alexis de Talhouët --- .../selfservice/api/ExecutionServiceHandler.kt | 11 ++++++----- .../selfservice/api/utils/BluePrintMappings.kt | 8 ++++++-- .../services/execution/AbstractComponentFunction.kt | 5 ++++- 3 files changed, 16 insertions(+), 8 deletions(-) (limited to 'ms/blueprintsprocessor/modules') diff --git a/ms/blueprintsprocessor/modules/inbounds/selfservice-api/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/selfservice/api/ExecutionServiceHandler.kt b/ms/blueprintsprocessor/modules/inbounds/selfservice-api/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/selfservice/api/ExecutionServiceHandler.kt index 262c33f9..4447dd4b 100644 --- a/ms/blueprintsprocessor/modules/inbounds/selfservice-api/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/selfservice/api/ExecutionServiceHandler.kt +++ b/ms/blueprintsprocessor/modules/inbounds/selfservice-api/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/selfservice/api/ExecutionServiceHandler.kt @@ -16,6 +16,7 @@ package org.onap.ccsdk.apps.blueprintsprocessor.selfservice.api +import com.fasterxml.jackson.databind.node.JsonNodeFactory import com.google.protobuf.Struct import io.grpc.stub.StreamObserver import kotlinx.coroutines.Dispatchers @@ -66,19 +67,19 @@ class ExecutionServiceHandler(private val bluePrintCoreConfiguration: BluePrintC executionServiceInput.actionIdentifiers.mode == ACTION_MODE_ASYNC -> { GlobalScope.launch(Dispatchers.Default) { val executionServiceOutput = doProcess(executionServiceInput) - responseObserver.onNext(executionServiceOutput.toProto(inputPayload)) + responseObserver.onNext(executionServiceOutput.toProto()) responseObserver.onCompleted() } - responseObserver.onNext(response(executionServiceInput).toProto(inputPayload)) + responseObserver.onNext(response(executionServiceInput).toProto()) } executionServiceInput.actionIdentifiers.mode == ACTION_MODE_SYNC -> { val executionServiceOutput = doProcess(executionServiceInput) - responseObserver.onNext(executionServiceOutput.toProto(inputPayload)) + responseObserver.onNext(executionServiceOutput.toProto()) responseObserver.onCompleted() } else -> responseObserver.onNext(response(executionServiceInput, "Failed to process request, 'actionIdentifiers.mode' not specified. Valid value are: 'sync' or 'async'.", - true).toProto(inputPayload)); + true).toProto()); } } @@ -108,7 +109,7 @@ class ExecutionServiceHandler(private val bluePrintCoreConfiguration: BluePrintC val executionServiceOutput = ExecutionServiceOutput() executionServiceOutput.commonHeader = executionServiceInput.commonHeader executionServiceOutput.actionIdentifiers = executionServiceInput.actionIdentifiers - executionServiceOutput.payload = executionServiceInput.payload + executionServiceOutput.payload = JsonNodeFactory.instance.objectNode() val status = Status() status.errorMessage = errorMessage diff --git a/ms/blueprintsprocessor/modules/inbounds/selfservice-api/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/selfservice/api/utils/BluePrintMappings.kt b/ms/blueprintsprocessor/modules/inbounds/selfservice-api/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/selfservice/api/utils/BluePrintMappings.kt index c8ce1c30..b261c41b 100644 --- a/ms/blueprintsprocessor/modules/inbounds/selfservice-api/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/selfservice/api/utils/BluePrintMappings.kt +++ b/ms/blueprintsprocessor/modules/inbounds/selfservice-api/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/selfservice/api/utils/BluePrintMappings.kt @@ -20,10 +20,12 @@ import com.fasterxml.jackson.databind.node.ObjectNode import com.google.common.base.Strings import com.google.protobuf.Struct import com.google.protobuf.Value +import com.google.protobuf.util.JsonFormat import org.onap.ccsdk.apps.controllerblueprints.common.api.ActionIdentifiers import org.onap.ccsdk.apps.controllerblueprints.common.api.CommonHeader import org.onap.ccsdk.apps.controllerblueprints.common.api.Flag import org.onap.ccsdk.apps.controllerblueprints.common.api.Status +import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils import org.onap.ccsdk.apps.controllerblueprints.processing.api.ExecutionServiceInput import org.onap.ccsdk.apps.controllerblueprints.processing.api.ExecutionServiceOutput import java.text.SimpleDateFormat @@ -158,11 +160,13 @@ fun ExecutionServiceInput.toJava(): org.onap.ccsdk.apps.blueprintsprocessor.core // EXECUTION OUPUT -fun org.onap.ccsdk.apps.blueprintsprocessor.core.api.data.ExecutionServiceOutput.toProto(payload: Struct): ExecutionServiceOutput { +fun org.onap.ccsdk.apps.blueprintsprocessor.core.api.data.ExecutionServiceOutput.toProto(): ExecutionServiceOutput { val executionServiceOuput = ExecutionServiceOutput.newBuilder() executionServiceOuput.actionIdentifiers = this.actionIdentifiers.toProto() executionServiceOuput.commonHeader = this.commonHeader.toProto() executionServiceOuput.status = this.status.toProto() - executionServiceOuput.payload = payload + val struct = Struct.newBuilder() + JsonFormat.parser().merge(JacksonUtils.getJson(this.payload), struct) + executionServiceOuput.payload = struct.build() return executionServiceOuput.build() } \ No newline at end of file diff --git a/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/services/execution/AbstractComponentFunction.kt b/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/services/execution/AbstractComponentFunction.kt index 930dc074..7086ebbc 100644 --- a/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/services/execution/AbstractComponentFunction.kt +++ b/ms/blueprintsprocessor/modules/services/execution-service/src/main/kotlin/org/onap/ccsdk/apps/blueprintsprocessor/services/execution/AbstractComponentFunction.kt @@ -29,6 +29,7 @@ import org.onap.ccsdk.apps.controllerblueprints.core.asJsonNode import org.onap.ccsdk.apps.controllerblueprints.core.getAsString import org.onap.ccsdk.apps.controllerblueprints.core.interfaces.BlueprintFunctionNode import org.onap.ccsdk.apps.controllerblueprints.core.service.BluePrintRuntimeService +import org.onap.ccsdk.apps.controllerblueprints.core.utils.JacksonUtils import org.slf4j.LoggerFactory /** @@ -100,7 +101,7 @@ abstract class AbstractComponentFunction : BlueprintFunctionNode