Update CDS grpc request generation in CDS Actor service provider 28/96428/3
authorRashmi Pujar <rashmi.pujar@bell.ca>
Mon, 30 Sep 2019 16:12:07 +0000 (12:12 -0400)
committerRashmi Pujar <rashmi.pujar@bell.ca>
Tue, 1 Oct 2019 12:01:14 +0000 (12:01 +0000)
commit5af913104ec412086deab4d599359751246e4ba3
tree436e10c0bb6e02aa354ffaf93714069309e2e611
parentf70ddacbd97e34ad0d1373466367115982a251db
Update CDS grpc request generation in CDS Actor service provider

- CDS payload requires resolution-key (random UUID)
- Update the CDS request object to rename the payload child node key name from config-deploy-properties to policy-payload.
- Generate dynamic childnode key name from the policy recipe-name aka CDS action-name. action-name itself is never included in serialization as is.

Below is a sample:
{
    "commonHeader": {
        "subRequestId": "$subReqId",
        "requestId": "$reqId",
        "originatorId": "POLICY"
    },
    "actionIdentifiers": {
        "mode": "sync",
        "blueprintName": "$bpName",
        "blueprintVersion": "$bpVer",
        "actionName": "$recipeName"
    },
    "payload": {
        "$recipeName-request": {
            "resolution-key": "{{$guid}}",
            "aai-properties": {
                "$key": "$value",
                ...
            },
            "policy-payload": {
               "$clamp-payload"
            }
        }
    }
}

Issue-ID: POLICY-2120
Signed-off-by: Rashmi Pujar <rashmi.pujar@bell.ca>
Change-Id: Ia7f0551f94755bbe73b48ae387b4c53842729a81
models-interactions/model-actors/actor.cds/src/main/java/org/onap/policy/controlloop/actor/cds/CdsActorServiceProvider.java
models-interactions/model-actors/actor.cds/src/main/java/org/onap/policy/controlloop/actor/cds/beans/CdsActionRequest.java [moved from models-interactions/model-actors/actor.cds/src/main/java/org/onap/policy/controlloop/actor/cds/beans/ConfigDeployRequest.java with 60% similarity]
models-interactions/model-actors/actor.cds/src/test/java/org/onap/policy/controlloop/actor/cds/CdsActorServiceProviderTest.java