{ "tosca_definitions_version": "tosca_simple_yaml_1_0_0", "policy_types": [ { "onap.policies.controlloop.Guard": { "derived_from": "tosca.policies.Root", "version": "1.0.0", "description": "Guard Policies for Control Loop Operational Policies" } }, { "onap.policies.controlloop.guard.FrequencyLimiter": { "derived_from": "onap.policies.controlloop.Guard", "version": "1.0.0", "description": "Supports limiting the frequency of actions being taken by a Actor.", "properties": { "frequency_policy": { "type": "map", "description": null, "entry_schema": { "type": "onap.datatypes.guard.FrequencyLimiter" } } } } } ], "data_types": [ { "onap.datatypes.guard.FrequencyLimiter": { "derived_from": "tosca.datatypes.Root", "properties": { "actor": { "type": "string", "description": "Specifies the Actor", "required": true }, "recipe": { "type": "string", "description": "Specified the Recipe", "required": true }, "time_window": { "type": "scalar-unit.time", "description": "The time window to count the actions against.", "required": true }, "limit": { "type": "integer", "description": "The limit", "required": true, "constraints": [ { "greater_than": 0 } ] }, "time_range": { "type": "tosca.datatypes.TimeInterval", "description": "An optional range of time during the day the frequency is valid for.", "required": false }, "controlLoopName": { "type": "string", "description": "An optional specific control loop to apply this guard to.", "required": false }, "target": { "type": "string", "description": "An optional specific VNF to apply this guard to.", "required": false } } } } ] }