Add DCAE policy types
[policy/models.git] / models-examples / src / main / resources / policytypes / onap.policies.monitoring.dcae-pm-subscription-handler.yaml
diff --git a/models-examples/src/main/resources/policytypes/onap.policies.monitoring.dcae-pm-subscription-handler.yaml b/models-examples/src/main/resources/policytypes/onap.policies.monitoring.dcae-pm-subscription-handler.yaml
new file mode 100644 (file)
index 0000000..2db257d
--- /dev/null
@@ -0,0 +1,131 @@
+tosca_definitions_version: tosca_simple_yaml_1_1_0
+policy_types:
+   onap.policies.Monitoring:
+      derived_from: tosca.policies.Root
+      version: 1.0.0
+      name: onap.policies.Monitoring
+      description: a base policy type for all policies that govern monitoring provisioning
+   onap.policies.monitoring.dcae-pm-subscription-handler:
+      derived_from: onap.policies.Monitoring
+      version: 1.0.0
+      properties:
+         subscription:
+            type: map
+            description: PM Subscription Handler Subscription
+            entry_schema:
+               type: onap.datatypes.monitoring.subscription
+data_types:
+   onap.datatypes.monitoring.subscription:
+      derived_from: tosca.datatypes.Root
+      properties:
+         subscriptionName:
+            type: string
+            description: Name of the subscription
+            required: true
+         administrativeState:
+            type: string
+            description: State of the subscription
+            required: true
+            constraints:
+            -  valid_values:
+               - LOCKED
+               - UNLOCKED
+         fileBasedGP:
+            type: integer
+            description: File based granularity period
+            required: true
+         fileLocation:
+            type: string
+            description: ROP file location
+            required: true
+         nfTypeModelInvariantId:
+            type: string
+            description: Network function invariant ID
+            required: true
+         nfFilter:
+            type: map
+            description: Network function filter
+            required: true
+            entry_schema:
+               type: onap.datatypes.monitoring.nfFilter
+         measurementGroups:
+            type: list
+            description: Measurement Groups
+            required: true
+            entry_schema:
+               type: onap.datatypes.monitoring.measurementGroups
+   onap.datatypes.monitoring.nfFilter:
+      derived_from: tosca.datatypes.Root
+      properties:
+         nfNames:
+            type: list
+            description: List of network functions
+            required: true
+            #default: []
+            entry_schema:
+               type: string
+         swVersions:
+            type: list
+            description: List of software versions
+            required: true
+            #default: []
+            entry_schema:
+               type: string
+   onap.datatypes.monitoring.measurementGroups:
+      derived_from: tosca.datatypes.Root
+      properties:
+         measurementGroup:
+            type: map
+            description: Measurement Group
+            required: true
+            entry_schema:
+               type: onap.datatypes.monitoring.measurementGroup
+   onap.datatypes.monitoring.measurementGroup:
+      derived_from: tosca.datatypes.Root
+      properties:
+         measurementTypes:
+            type: list
+            description: List of measurement types
+            required: true
+            #default: []
+            entry_schema:
+               type: onap.datatypes.monitoring.measurementTypes
+         managedObjectDNsBasic:
+            type: list
+            description: List of managed object distinguished names
+            required: true
+            #default: []
+            entry_schema:
+               type: onap.datatypes.monitoring.managedObjectDNsBasics
+   onap.datatypes.monitoring.measurementTypes:
+      derived_from: tosca.datatypes.Root
+      properties:
+         measurementType:
+            type: map
+            description: Measurement type object
+            required: true
+            entry_schema:
+               type: onap.datatypes.monitoring.measurementType
+   onap.datatypes.monitoring.measurementType:
+      derived_from: tosca.datatypes.Root
+      properties:
+         measurementType:
+            type: string
+            description: Measurement type
+            required: true
+   onap.datatypes.monitoring.managedObjectDNsBasics:
+      derived_from: tosca.datatypes.Root
+      properties:
+         managedObjectDNsBasic:
+            type: map
+            description: Managed object distinguished name object
+            required: true
+            entry_schema:
+               type: onap.datatypes.monitoring.managedObjectDNsBasic
+   onap.datatypes.monitoring.managedObjectDNsBasic:
+      derived_from: tosca.datatypes.Root
+      properties:
+         DN:
+            type: string
+            description: Managed object distinguished name
+            required: true
\ No newline at end of file