TOSCA Compliant Guard Policies
[policy/models.git] / models-examples / src / main / resources / policytypes / onap.policies.native.Drools.yaml
1 tosca_definitions_version: tosca_simple_yaml_1_1_0
2 policy_types:
3     onap.policies.Native:
4         derived_from: tosca.policies.Root
5         description: a base policy type for all native PDP policies
6         version: 1.0.0
7     onap.policies.native.Drools:
8         derived_from: onap.policies.Native
9         description: a base policy type for all native PDP policies
10         version: 1.0.0
11     onap.policies.native.drools.Controller:
12         derived_from: onap.policies.native.Drools
13         description: a policy type for a drools controller configuration
14         version: 1.0.0
15         properties:
16             controllerName:
17                 type: string
18                 required: true
19                 description: the drools controller name
20             sourceTopics:
21                 type: list
22                 required: false
23                 description: source topics and applicable events
24                 entry_schema:
25                     type: onap.datatypes.dmaap.topic
26             sinkTopics:
27                 type: list
28                 required: false
29                 description: sink topics and applicable events
30                 entry_schema:
31                     type: onap.datatypes.dmaap.topic
32             customConfig:
33                 type: map
34                 required: false
35                 description: any use case specific configurations relevant to the drools controller
36                 entry_schema:
37                     type: string
38     onap.policies.native.drools.Artifact:
39         derived_from: onap.policies.native.Drools
40         description: a policy type for native drools artifact policies
41         version: 1.0.0
42         properties:
43             rulesArtifact:
44                 type: onap.datatypes.native.rules_artifact
45                 required: true
46                 description: the GAV information of the maven artifact
47             controller:
48                 type: onap.datatypes.drools.controller.relation
49                 required: true
50                 description: the drools controller to which the current native policy is assigned
51
52 data_types:
53     onap.datatypes.dmaap.topic:
54         derived_from: tosca.datatypes.Root
55         properties:
56             topicName:
57                 type: string
58                 required: true
59                 description: the dmaap topic name
60             events:
61                 type: list
62                 required: true
63                 description: events used by this topic
64                 entry_schema:
65                     type: onap.datatypes.dmaap.events
66     onap.datatypes.dmaap.events:
67         derived_from: tosca.datatypes.Root
68         properties:
69             eventClass:
70                 type: string
71                 required: true
72                 description: the event canonical class for serialization
73             eventFilter:
74                 type: string
75                 required: false
76                 description: the JSONPath based condition to filter out the events to serialize
77             customSerialization:
78                 type: onap.datatypes.dmaap.custom_serialization
79                 required: false
80                 description:  overrides the default serialization/deserialization mechanisms with custom ones
81     onap.datatypes.dmaap.custom_serialization:
82         derived_from: tosca.datatypes.Root
83         properties:
84             customSerializerClass:
85                 type: string
86                 required: true
87                 description: the class that contains the JSON parser serializer/deserializer.
88             jsonParser:
89                 type: string
90                 required: true
91                 description: static field in customSerialized class with the json parser (currently only gson supported)
92     onap.datatypes.native.rules_artifact:
93         derived_from: tosca.datatypes.Root
94         properties:
95             groupId:
96                 type: string
97                 required: true
98                 description: the groupId of the maven artifact
99             artifactId:
100                 type: string
101                 required: true
102                 description: the artifactId of the maven artifact
103             version:
104                 type: string
105                 required: true
106                 description: the version of the maven artifact
107     onap.datatypes.drools.controller.relation:
108         derived_from: tosca.datatypes.Root
109         properties:
110             controllerName:
111                 type: string
112                 required: true
113                 description: the name of drools controller policy