1. participantId - A unique participant UUID that is used by the runtime to identify the participant.
2. ReportingTimeIntervalMs - Time inertval the participant should report the status/heartbeat to the runtime.
3. clampAutomationCompositionTopics - This property takes in the kafka topic names and servers for the intermediary module to use.
- These values should be provided for both source and sink configs. The following example shows the topic parameters set for using DMaap.
+ These values should be provided for both source and sink configs.
+ (**Note**: In order to avoid a connection to Kafka when Unit Tests are running, set topicCommInfrastructure: NOOP in properties file for tests).
+ The following example shows the topic parameters set for using Kafka.
.. code-block:: bash
-
topic: POLICY-ACRUNTIME-PARTICIPANT
servers:
- - ${topicServer:localhost}
- topicCommInfrastructure: dmaap
+ - ${topicServer:localhost}:9092
+ topicCommInfrastructure: kafka
fetchTimeout: 15000
topicSinks:
-
topic: POLICY-ACRUNTIME-PARTICIPANT
servers:
- - ${topicServer:localhost}
- topicCommInfrastructure: dmaap
+ - ${topicServer:localhost}:9092
+ topicCommInfrastructure: kafka
4. participantSupportedElementTypes - This property takes a list of typeName and typeVersion fields to define the types of AC elements the participant deals with.
These are user defined name and version and the same should be defined for the AC elements that are included in the TOSCA based AC definitions.
Default implementation are supported for the methods: lock, unlock, update, migrate, delete, prime, deprime, handleRestartComposition and handleRestartInstance.
+Methods: deploy, undeploy, lock, unlock and delete
+ compositionElement:
+ ====================== =======================================
+ **field** **description**
+ ====================== =======================================
+ compositionId composition definition Id
+ elementDefinitionId composition definition element Id
+ inProperties composition definition in-properties
+ outProperties composition definition out-properties
+ ====================== =======================================
+ instanceElement:
+ ============================== ===========================
+ **field** **description**
+ ============================== ===========================
+ instanceId instance id
+ elementId instance element id
+ toscaServiceTemplateFragment policies and policy types
+ inProperties instance in-properties
+ outProperties instance out-properties
+ ============================== ===========================
+
+Method: update
+ compositionElement:
+ ====================== =======================================
+ **field** **description**
+ ====================== =======================================
+ compositionId composition definition Id
+ elementDefinitionId composition definition element Id
+ inProperties composition definition in-properties
+ outProperties composition definition out-properties
+ ====================== =======================================
+ instanceElement:
+ ============================== ================================================
+ **field** **description**
+ ============================== ================================================
+ instanceId instance id
+ elementId instance element id
+ toscaServiceTemplateFragment
+ inProperties instance in-properties **(before the update)**
+ outProperties instance out-properties
+ ============================== ================================================
+ instanceElementUpdated:
+ ============================== ======================================
+ **field** **description**
+ ============================== ======================================
+ instanceId instance id
+ elementId instance element id
+ toscaServiceTemplateFragment
+ inProperties instance in-properties **(updated)**
+ outProperties instance out-properties
+ ============================== ======================================
+
+Methods: prime, deprime
+ composition:
+ ====================== ===================================================================
+ **field** **description**
+ ====================== ===================================================================
+ compositionId composition definition Id
+ inProperties composition definition in-properties for each definition element
+ outProperties composition definition out-properties for each definition element
+ ====================== ===================================================================
+
+Method: migrate
+ compositionElement:
+ ====================== =======================================
+ **field** **description**
+ ====================== =======================================
+ compositionId composition definition Id
+ elementDefinitionId composition definition element Id
+ inProperties composition definition in-properties
+ outProperties composition definition out-properties
+ ====================== =======================================
+ compositionElementTarget:
+ ====================== ==============================================
+ **field** **description**
+ ====================== ==============================================
+ compositionId composition definition target Id
+ elementDefinitionId composition definition target element Id
+ inProperties composition definition target in-properties
+ outProperties composition definition target out-properties
+ ====================== ==============================================
+ instanceElement:
+ ============================== ===================================================
+ **field** **description**
+ ============================== ===================================================
+ instanceId instance id
+ elementId instance element id
+ toscaServiceTemplateFragment
+ inProperties instance in-properties **(before the migration)**
+ outProperties instance out-properties
+ ============================== ===================================================
+ instanceElementMigrate:
+ ============================== ======================================
+ **field** **description**
+ ============================== ======================================
+ instanceId instance id
+ elementId instance element id
+ toscaServiceTemplateFragment
+ inProperties instance in-properties **(updated)**
+ outProperties instance out-properties
+ ============================== ======================================
+
APIs to invoke
--------------
ParticipantIntermediaryApi:
topicSources:
- topic: POLICY-ACRUNTIME-PARTICIPANT
servers:
- - ${topicServer:localhost}
- topicCommInfrastructure: dmaap
+ - ${topicServer:localhost}:9092
+ topicCommInfrastructure: kafka
fetchTimeout: 15000
topicSinks:
- topic: POLICY-ACRUNTIME-PARTICIPANT
servers:
- - ${topicServer:localhost}
- topicCommInfrastructure: dmaap
+ - ${topicServer:localhost}:9092
+ topicCommInfrastructure: kafka
participantSupportedElementTypes:
-
typeName: org.onap.policy.clamp.acm.MyFirstAutomationCompositionElement
Tips:
If the participant tries to undeploy an element which doesn’t exist in the system any more (due to various other external factors),
-it could update the element state to ‘undeployed’ using the Intermediary api.
\ No newline at end of file
+it could update the element state to ‘undeployed’ using the Intermediary api.