Update Telemetry Trigger and TriggerManager

For Trigger interface:
- Removed LogToJournal, LogToRedfish and UpdateReport properties.
- Added TriggerActions property which is an array of TriggerAction enum.
- Defined TriggerAction enum: LogToLogService, RedfishEvent,
  UpdateReport. Those values correspond to removed properties.
- Modified Thresholds property to reflect current telemetry
  implementation.

For TriggerManager interface:
- Removed 'discrete' param from AddTrigger method. This can be deduced
  by service.
- Removed 'logToJournal', 'logToRedfish' and 'updateReport' params from
  AddTrigger method.
- Added 'triggerActions' param to AddTrigger method, which contains
  values corresponding to removed params.
- Modified 'thresholds' param in AddTrigger method to reflect current
  telemetry implementation.

By replacing bool properties/params with single array, trigger interface
will be easier to implement in Redfish.

Signed-off-by: Szymon Dompke <szymon.dompke@intel.com>
Change-Id: I995ba8272c633054106c76fefaa38df87384f64d
diff --git a/yaml/xyz/openbmc_project/Telemetry/TriggerManager.interface.yaml b/yaml/xyz/openbmc_project/Telemetry/TriggerManager.interface.yaml
index e6b1e7e..a384ab0 100644
--- a/yaml/xyz/openbmc_project/Telemetry/TriggerManager.interface.yaml
+++ b/yaml/xyz/openbmc_project/Telemetry/TriggerManager.interface.yaml
@@ -14,26 +14,10 @@
         description: >
             Defines the name of report to be exposed over D-Bus. Service allows
             to use separator '/' in name to group reports in directory.
-      - name: discrete
-        type: boolean
+      - name: triggerActions
+        type: array[enum[xyz.openbmc_project.Telemetry.Trigger.TriggerAction]]
         description: >
-            Defines if thresholds parameter contains discrete thresholds.
-            Otherwise thresholds contain numeric thresholds.
-      - name: logToJournal
-        type: boolean
-        description: >
-            Defines if trigger logs to system journal when threshold conditions
-            are met.
-      - name: logToRedfish
-        type: boolean
-        description: >
-            Defines if trigger logs Redfish message when threshold conditions
-            are met.
-      - name: updateReport
-        type: boolean
-        description: >
-            Defines if trigger updates reports that are specified in reportNames
-            parameter when threshold conditions are met.
+            Defines which actions are taken when threshold conditions are met.
       - name: sensors
         type: array[struct[object_path,string]]
         description: >
@@ -44,10 +28,10 @@
         type: array[string]
         description: >
             Collection of report names that are updated when threshold
-            conditions are met. This parameter is ignored if updateReport
-            parameter is set to false.
+            conditions are met. This parameter is ignored if triggerActions
+            parameter does not contain 'UpdateReport' action.
       - name: thresholds
-        type: variant[array[struct[enum[xyz.openbmc_project.Telemetry.Trigger.Type],enum[xyz.openbmc_project.Telemetry.Trigger.Direction],uint64,double]],array[struct[string,enum[xyz.openbmc_project.Telemetry.Trigger.Severity],uint64,double]]]
+        type: variant[array[struct[enum[xyz.openbmc_project.Telemetry.Trigger.Type],uint64,enum[xyz.openbmc_project.Telemetry.Trigger.Direction],double]],array[struct[string,enum[xyz.openbmc_project.Telemetry.Trigger.Severity],uint64,string]]]
         description: >
             Contains array of numeric or discrete thresholds that are described
             in xyz.openbmc_project.Telemetry.Trigger interface.