1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 """
17 Resource class and its manager for services in Identity V2 API
18 """
19
20 from yakumo import base
21 from yakumo.constant import UNDEF
22 from yakumo import mapper
23
24
25 ATTRIBUTE_MAPPING = [
26 ('id', 'id', mapper.Noop),
27 ('name', 'name', mapper.Noop),
28 ('type', 'type', mapper.Noop),
29 ('description', 'description', mapper.Noop),
30 ('is_enabled', 'enabled', mapper.Noop),
31 ]
32
33
35 """resource class for services on Identity V2 API"""
36
37
39 """manager class for services on Identity V2 API"""
40
41 resource_class = Resource
42 service_type = 'identity'
43 _attr_mapping = ATTRIBUTE_MAPPING
44 _hidden_methods = ["update"]
45 _json_resource_key = 'OS-KSADM:service'
46 _json_resources_key = 'OS-KSADM:services'
47 _url_resource_path = '/OS-KSADM/services'
48
51 """
52 Register a service
53
54 @keyword name: Service name
55 @type name: str
56 @keyword type: Service type
57 @type type: str
58 @keyword description: Description
59 @type description: str
60 @keyword is_enabled: Whether the service is enabled or not
61 @type is_enabled: str
62 @return: Created service
63 @rtype: yakumo.keystone.v2.service.Resource
64 """
65 return super(Manager, self).create(
66 name=name,
67 type=type,
68 description=description,
69 is_enabled=is_enabled)
70