From d0a1bcee60c43a736a0526d49c07c564632c4f02 Mon Sep 17 00:00:00 2001
From: Sirisha_Manchikanti <sirisha.manchikanti@est.tech>
Date: Tue, 10 Aug 2021 21:51:48 +0100
Subject: Updated ControlLoop component messages

Updated controlloop messages (ParticipantUpdate, ControlLoopUpdate,
ParticipantStatus) according to the following Wiki and added
implementation for the corresponding updates in runtime-controlloop and
participant components
https://wiki.onap.org/display/DW/The+CLAMP+Control+Loop+Participant+Protocol

Issue-ID: POLICY-3417
Signed-off-by: Sirisha_Manchikanti <sirisha.manchikanti@est.tech>
Change-Id: I80d96a7553a89ca47de2aa35e09df5a5c792acfa
---
 .../servicetemplates/pm_control_loop_tosca.yaml    | 545 +++++----------------
 1 file changed, 123 insertions(+), 422 deletions(-)

(limited to 'participant/participant-impl/participant-impl-simulator/src/test/resources')

diff --git a/participant/participant-impl/participant-impl-simulator/src/test/resources/rest/servicetemplates/pm_control_loop_tosca.yaml b/participant/participant-impl/participant-impl-simulator/src/test/resources/rest/servicetemplates/pm_control_loop_tosca.yaml
index 99dd0ed68..c2a68d7a2 100644
--- a/participant/participant-impl/participant-impl-simulator/src/test/resources/rest/servicetemplates/pm_control_loop_tosca.yaml
+++ b/participant/participant-impl/participant-impl-simulator/src/test/resources/rest/servicetemplates/pm_control_loop_tosca.yaml
@@ -1,452 +1,153 @@
 tosca_definitions_version: tosca_simple_yaml_1_3
-capability_types:
-  org.onap.EventProducer:
+data_types:
+  onap.datatypes.ToscaConceptIdentifier:
+    derived_from: tosca.datatypes.Root
     properties:
-      carrier_protocol_type:
+      name:
         type: string
         required: true
-        constraints:
-        - valid_values:
-          - DMAAP_message_router
-          - SOMETHING_ELSE
-          - REST
-      data_format:
+      version:
         type: string
         required: true
-        constraints:
-        - valid_values:
-          - JSON
-          - YAML
-          - JMS
-      event_format:
-        type: string
-        required: true
-      event_format_version:
-        type: string
-        required: false
-      config_keys:
-        type: list
-        required: false
-        entry_schema:
-          type: string
-          constraints:
-          - valid_values:
-            - all valid values should be added here
-            - if not specified, events of any config key may be generated
-            - 'examples for config_key: ves-measurement, ves-syslog, tca_handle_out,
-              etc.'
-    version: 0.0.1
-    derived_from: tosca.capabilities.Root
-  org.onap.EventConsumer:
-    properties:
-      responding_capability:
-        type: string
-        required: false
-      carrier_protocol_type:
-        type: string
-        required: true
-        constraints:
-        - valid_values:
-          - DMAAP_message_router
-          - SOMETHING_ELSE
-          - REST
-      data_format:
-        type: string
-        required: true
-        constraints:
-        - valid_values:
-          - JSON
-          - YAML
-          - JMS
-          - all valid values should be added here
-      event_format:
-        type: string
-        description: 'examples for event_format: Ves_specification, LinkUp, VnfConfigured,
-          etc.'
-        required: true
-      event_format_version:
-        type: string
-        description: 'examples for event_format_version: 5.28.4, 7.30.1, etc.'
-        required: false
-      config_keys:
-        type: list
-        required: false
-        entry_schema:
-          type: string
-          constraints:
-          - valid_values:
-            - all valid values should be added here
-            - if not specified, events of any config key may be generated
-            - 'examples for config_key: ves-measurement, ves-syslog, tca_handle_out,
-              etc.'
-    version: 0.0.1
-    derived_from: tosca.capabilities.Root
 node_types:
-  org.onap.DynamicConfig:
+  org.onap.policy.clamp.controlloop.Participant:
+    version: 1.0.1
+    derived_from: tosca.nodetypes.Root
     properties:
-      application_name:
-        type: string
-        description: Value used to tie the config to an application ? should we be
-          using a relationship here instead?
-        required: true
-      application_version:
-        type: string
-        required: true
-      application_provider:
+      provider:
         type: string
-        required: false
-      data_types:
-        type: object
-        required: false
-      schema:
-        type: object
-        required: false
-    version: 0.0.1
-    derived_from: tosca.nodes.Root
-  org.onap.APP:
+        requred: false
+  org.onap.policy.clamp.controlloop.ControlLoopElement:
+    version: 1.0.1
+    derived_from: tosca.nodetypes.Root
     properties:
-      application_name:
-        type: string
-        description: Human readable name for the application Product
-        required: false
       provider:
         type: string
-        description: Provider of the application and of the descriptor
-        required: true
-      application_version:
-        type: string
-        description: Software version of the application
-        required: true
-      blueprint_id:
-        type: string
-        description: A reference to the app blueprint
-        required: false
-      monitoring_policy:
-        type: string
-        description: A reference to the monitoring policy
-        required: false
-    requirements:
-    - receive:
-        capability: org.onap.EventProducer
-        relationship: org.onap.PropagateEvent
-        occurrences:
-        - 0.0
-        - UNBOUNDED
-        version: 0.0.0
-    - send:
-        capability: org.onap.EventConsumer
-        relationship: org.onap.PropagateEvent
-        occurrences:
-        - 0.0
-        - UNBOUNDED
-        version: 0.0.0
-    version: 0.0.1
-    derived_from: tosca.nodes.Root
-  org.onap.EventRelay:
+        requred: false
+      participant_id:
+        type: onap.datatypes.ToscaConceptIdentifier
+        requred: true
+  org.onap.policy.clamp.controlloop.ControlLoop:
+    version: 1.0.1
+    derived_from: tosca.nodetypes.Root
     properties:
-      event_format:
-        type: string
-        description: 'examples for event_format: Ves_specification, etc.'
-        required: true
-      event_format_version:
+      provider:
         type: string
-        description: 'examples for event_format_version: 5.28.4, 7.30.1, etc.'
-        required: true
-      config_keys:
+        requred: false
+      elements:
         type: list
-        required: false
-        entry_schema:
-          type: string
-          constraints:
-          - valid_values:
-            - all valid values should be added here
-            - if not specified, events of any config key is relayed
-            - 'examples for config_key: ves-measurement, ves-syslog, tca_handle_out,
-              etc.'
-      supported_carrier_protocols:
-        type: map
-        description: 'A map describing supported carrier protocols and translations.
-          The tuples define what protocol combinations are supported on the producer
-          and consumer side: e.g. { REST: REST, DMAAP: REST, DMAAP: DMAAP}'
-        required: true
-        key_schema:
-          type: string
-          constraints:
-          - valid_values:
-            - DMAAP_message_router
-            - SOMETHING_ELSE
-            - REST
-            - all valid values should be added here
-        entry_schema:
-          type: string
-          constraints:
-          - valid_values:
-            - DMAAP_message_router
-            - SOMETHING_ELSE
-            - REST
-            - all valid values should be added here
-      supported_data_formats:
-        type: map
-        description: 'Is a map describing supported data formats and translation.
-          The tuples define what protocol combinations are supported on the producer
-          and consumer side: e.g. { JSON: JSON, JMS: JSON, YAML:YAML }'
         required: true
-        key_schema:
-          type: string
-          constraints:
-          - valid_values:
-            - JSON
-            - JMS
-            - YAML
-            - etc
-            - all valid values should be added here
         entry_schema:
-          type: string
-          constraints:
-          - valid_values:
-            - JSON
-            - JMS
-            - YAML
-            - etc
-            - all valid values should be added here
-    requirements:
-    - receive:
-        capability: org.onap.EventProducer
-        relationship: org.onap.PropagateEvent
-        occurrences:
-        - 0.0
-        - UNBOUNDED
-        version: 0.0.0
-    - send:
-        capability: org.onap.EventConsumer
-        relationship: org.onap.PropagateEvent
-        occurrences:
-        - 0.0
-        - UNBOUNDED
-        version: 0.0.0
-    version: 0.0.1
-    derived_from: tosca.nodes.Root
-relationship_types:
-  org.onap.PropagateEvent:
+          type: onap.datatypes.ToscaConceptIdentifier
+  org.onap.policy.clamp.controlloop.DCAEMicroserviceControlLoopElement:
+    version: 1.0.1
+    derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
     properties:
-      config_keys:
-        type: list
-        description: The relationship type used on requirements to org.onap.EventProducer
-          and org.onap.EventConsumer capabilities. Filters events by specific config_keys
-          to be transferred by this relationship. That is, any event with a specific
-          config_key found in the list is transferred. If list is not defined or is
-          empty, events with all config_keys are transferred.
-        required: false
-        entry_schema:
-          type: string
-    version: 0.0.1
-    derived_from: tosca.relationships.Root
+      dcae_blueprint_id:
+        type: onap.datatypes.ToscaConceptIdentifier
+        requred: true
+  org.onap.policy.clamp.controlloop.PolicyTypeControlLoopElement:
+    version: 1.0.1
+    derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
+    properties:
+      policy_type_id:
+        type: onap.datatypes.ToscaConceptIdentifier
+        requred: true
+  org.onap.policy.clamp.controlloop.CDSControlLoopElement:
+    version: 1.0.1
+    derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
+    properties:
+      cds_blueprint_id:
+        type: onap.datatypes.ToscaConceptIdentifier
+        requred: true
 topology_template:
-  inputs:
-    pm_subscription_topic:
-      type: string
-    pm_subscription_response_topic:
-      type: string
-    pm_subscription_handler_blueprint_id:
-      type: string
-    pm_subscription_operational_policy_id:
-      type: string
-    pm_subscription_cds_blueprint_id:
-      type: string
-    enable_tls:
-      type: string
   node_templates:
-    org.onap.PM_Subscription_Handler:
-      type: org.onap.APP
+    org.onap.dcae.controlloop.DCAEMicroserviceControlLoopParticipant:
+      version: 2.3.4
+      type: org.onap.policy.clamp.controlloop.Participant
+      type_version: 1.0.1
+      description: Participant for DCAE microservices
+      properties:
+        provider: ONAP
+    org.onap.policy.controlloop.PolicyControlLoopParticipant:
+      version: 2.3.1
+      type: org.onap.policy.clamp.controlloop.Participant
+      type_version: 1.0.1
+      description: Participant for DCAE microservices
+      properties:
+        provider: ONAP
+    org.onap.ccsdk.cds.controlloop.CdsControlLoopParticipant:
+      version: 2.2.1
+      type: org.onap.policy.clamp.controlloop.Participant
+      type_version: 1.0.1
+      description: Participant for DCAE microservices
+      properties:
+        provider: ONAP
+    org.onap.domain.pmsh.PMSH_DCAEMicroservice:
+      version: 1.2.3
+      type: org.onap.policy.clamp.controlloop.DCAEMicroserviceControlLoopElement
+      type_version: 1.0.0
+      description: Control loop element for the DCAE microservice for Performance Management Subscription Handling
       properties:
-        application_name: PM Subscription Handler
         provider: Ericsson
-        application_version: 1.0.0
-        artifact_id:
-          get_input: pm_subscription_handler_blueprint_id
-          description: Is this a reference to the DCAE Cloudify Blueprint that is
-            already stored(or will be stored before CL configuration & instatiation)
-            in DCAE Inventory?
-        artifact_config:
-          enable_tls:
-            get_input: enable_tls
-          pmsh_publish_topic_name:
-            get_input: pm_subscription_topic
-      capabilities:
-        pm-subscription-event-publisher:
-          properties:
-            carrier_protocol_type: DMAAP_message_router
-            data_format: JSON
-            event_format: pm-subscription-event-format
-            event_format_version: 1.0.0
-          attributes:
-            type: org.onap.EventProducer
-          occurrences:
-          - 0.0
-          - UNBOUNDED
-          version: 0.0.0
-        pm-subscription-event-receiver:
-          properties:
-            carrier_protocol_type: DMAAP_message_router
-            data_format: JSON
-            event_format: pm-subscription-event-response-format
-            event_format_version: 1.0.0
-            relationships:
-            - type: tosca.relationships.DependsOn
-            - description: any ideas on a better realtionship ? or is it better to
-                just use the root realtionship ?
-            - target: org.onap.PM_Monitoring_Policy
-          attributes:
-            type: org.onap.EventConsumer
-          occurrences:
-          - 0.0
-          - UNBOUNDED
-          version: 0.0.0
-      version: 0.0.0
-    org.onap.PM_Monitoring_Policy:
-      type: org.onap.DynamicConfig
+        participant_id:
+          name: org.onap.dcae.controlloop.DCAEMicroserviceControlLoopParticipant
+          version: 2.3.4
+        dcae_blueprint_id:
+          name: org.onap.dcae.blueprints.PMSHBlueprint
+          version: 1.0.0
+    org.onap.domain.pmsh.PMSH_MonitoringPolicyControlLoopElement:
+      version: 1.2.3
+      type: org.onap.policy.clamp.controlloop.PolicyTypeControlLoopElement
+      type_version: 1.0.0
+      description: Control loop element for the monitoring policy for Performance Management Subscription Handling
       properties:
-        application_name: PM Subscription Handler
-        application_version: 1.0.0
         provider: Ericsson
-        data_types:
-          measurementType:
-            type: string
-          DN:
-            type: string
-          nfFilter:
-            properties:
-              nfNames:
-                type: list
-                entry_schema: string
-              modelInvariantIDs:
-                type: list
-                entry_schema:
-                  type: string
-              modelVersionIDs:
-                type: list
-                entry_schema:
-                  type: string
-          measurementGroup:
-            properties:
-              masurementTypes:
-                type: list
-                entry_schema:
-                  type: measurementType
-              managedObjectDNsBasic:
-                type: list
-                entry_schema:
-                  type: DN
-        schema:
-          subscription:
-            subscriptionName:
-              type: string
-              required: true
-            administrativeState:
-              type: string
-              required: true
-            filebasedGP:
-              type: integer
-              required: true
-            fileLocation:
-              type: string
-              required: true
-            nfFilter:
-              type: nfFilter
-            measurementGroups:
-              type: list
-              entry_schema:
-                type: measurementGroup
-      version: 0.0.0
-      description: Should I be showing a dependency between PM Subscription Handler
-        and the PM Monitoring Policy
-    org.onap.PM_Policy:
-      type: org.onap.APP
+        participant_id:
+          name: org.onap.policy.controlloop.PolicyControlLoopParticipant
+          version: 2.3.1
+        policy_type_id:
+          name: onap.policies.monitoring.pm-subscription-handler
+          version: 1.0.0
+    org.onap.domain.pmsh.PMSH_OperationalPolicyControlLoopElement:
+      version: 1.2.3
+      type: org.onap.policy.clamp.controlloop.PolicyTypeControlLoopElement
+      type_version: 1.0.0
+      description: Control loop element for the operational policy for Performance Management Subscription Handling
       properties:
-        application_name: PM Subscription Operational Policy
         provider: Ericsson
-        application_version: 1.0.0
-        artifact_id:
-          get_input: pm_subscription_operational_policy_id
-        artifact_config: NOT_DEFINED
-      requirements:
-      - receive_0:
-          capability: pm-subscription-event-publisher
-          node: org.onap.PM_Subscription_Handler
-          relationship: NOT_DEFINED
-          properties:
-            config_keys:
-            - topic_name:
-                get_input: pm_subscription_topic
-          version: 0.0.0
-      - send_0:
-          capability: cds-rest-receive
-          node: org.onap.CDS
-          version: 0.0.0
-      - receive_1:
-          capability: cds-rest-response
-          node: org.onap.CDS
-          version: 0.0.0
-      - send_1:
-          capability: pm-subscription-event-receiver
-          node: org.onap.PM_Subscription_Handler
-          relationship: NOT_DEFINED
-          properties:
-            config_keys:
-            - topic_name:
-                get_input: pm_subscription_response_topic
-          version: 0.0.0
-      capabilities:
-        pm-subscription-response-event-publisher:
-          properties:
-            type: org.onap.EventProducer
-            carrier_protocol_type: DMAAP_message_router
-            data_format: JSON
-            event_format: pm-subscription-event-response-format
-            event_format_version: 1.0.0
-          occurrences:
-          - 0.0
-          - UNBOUNDED
-          version: 0.0.0
-      version: 0.0.0
-    org.onap.PM_CDS_Blueprint:
-      type: org.onap.APP
+        participant_id:
+          name: org.onap.policy.controlloop.PolicyControlLoopParticipant
+          version: 2.3.1
+        policy_type_id:
+          name: onap.policies.operational.pm-subscription-handler
+          version: 1.0.0
+    org.onap.domain.pmsh.PMSH_CDS_ControlLoopElement:
+      version: 1.2.3
+      type: org.onap.policy.clamp.controlloop.ControlLoopElement
+      type_version: 1.0.0
+      description: Control loop element for CDS for Performance Management Subscription Handling
       properties:
-        application_name: PM Subscription CDS Blueprint
         provider: Ericsson
-        application_version: 1.0.0
-        artifact_id:
-          get_input: pm_subscription_cds_blueprint_id
-      capabilities:
-        cds-rest-receive:
-          properties:
-            type: org.onap.EventConsumer
-            protocol_type: REST
-            data_format: JSON
-            event_format: cds_action_format
-            event_format_version: 1.0.0
-            responding_capability: cds-rest-response
-          occurrences:
-          - 0.0
-          - UNBOUNDED
-          version: 0.0.0
-        cds-rest-response:
-          properties:
-            type: org.onap.EventProducer
-            protocol_type: REST
-            data_format: JSON
-            event_format: cds_action_response_format
-            event_format_version: 1.0.0
-          occurrences:
-          - 0.0
-          version: 0.0.0
-      version: 1.0.0
-    org.onap.controlloop0:
-      type: org.onap.APP
+        participant_id:
+          name: org.onap.PM_CDS_Blueprint
+          version: 1.0.0
+        cds_blueprint_id:
+          name: org.onap.ccsdk.cds.PMSHCdsBlueprint
+          version: 1.0.0
+    org.onap.domain.pmsh.PMSHControlLoopDefinition:
+      version: 1.2.3
+      type: org.onap.policy.clamp.controlloop.ControlLoop
+      type_version: 1.0.0
+      description: Control loop for Performance Management Subscription Handling
       properties:
-        application_name: Test Control Loop
         provider: Ericsson
-        application_version: 1.0.0
-        status: NOT_DEPLOYED
-      version: 0.0.0
-version: 0.0.0
+        elements:
+          - name: org.onap.domain.pmsh.PMSH_DCAEMicroservice
+            version: 1.2.3
+          - name: org.onap.domain.pmsh.PMSH_MonitoringPolicyControlLoopElement
+            version: 1.2.3
+          - name: org.onap.domain.pmsh.PMSH_OperationalPolicyControlLoopElement
+            version: 1.2.3
+          - name: org.onap.domain.pmsh.PMSH_CDS_ControlLoopElement
+            version: 1.2.3
-- 
cgit