1# Licensed under the Apache License, Version 2.0 (the "License"); you may
2# not use this file except in compliance with the License. You may obtain
3# a copy of the License at
4#
5#      http://www.apache.org/licenses/LICENSE-2.0
6#
7# Unless required by applicable law or agreed to in writing, software
8# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
9# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
10# License for the specific language governing permissions and limitations
11# under the License.
12
13from openstack import resource
14
15
16class QoSRuleType(resource.Resource):
17    resource_key = 'rule_type'
18    resources_key = 'rule_types'
19    base_path = '/qos/rule-types'
20
21    _allow_unknown_attrs_in_body = True
22
23    # capabilities
24    allow_create = False
25    allow_fetch = True
26    allow_commit = False
27    allow_delete = False
28    allow_list = True
29
30    _query_mapping = resource.QueryParameters('type', 'drivers')
31
32    # Properties
33    #: QoS rule type name.
34    type = resource.Body('type', alternate_id=True)
35    #: List of QoS backend drivers supporting this QoS rule type
36    drivers = resource.Body('drivers')
37