tosca_definitions_version: tosca_simple_yaml_1_1_0
policy_types:
    onap.policies.controlloop.guard.Common:
        derived_from: tosca.policies.Root
        version: 1.0.0
        description: |
            This is the base Policy Type for Guard policies that guard the execution of Operational
            Policies.
        properties:
            actor:
                type: string
                description: Specifies the Actor the guard applies to.
                required: true
            operation:
                type: string
                description: Specified the operation that the actor is performing
                    the guard applies to.
                required: true
            timeRange:
                type: tosca.datatypes.TimeInterval
                description: |
                    An optional range of time during the day the guard policy is valid for.
                required: false
            id:
                type: string
                description: The Control Loop id this applies to.
                required: false
    onap.policies.controlloop.guard.common.FrequencyLimiter:
        derived_from: onap.policies.controlloop.guard.Common
        type_version: 1.0.0
        version: 1.0.0
        description: Supports limiting the frequency of actions being taken by a Actor.
        properties:
            timeWindow:
                type: integer
                description: The time window to count the actions against.
                required: true
            timeUnits:
                type: string
                description: The units of time the window is counting.
                constraints:
                -   valid_values:
                    - second
                    - minute
                    - hour
                    - day
                    - week
                    - month
                    - year
            limit:
                type: integer
                description: The limit
                required: true
                constraints:
                -   greater_than: 0
