2828LOG = logging .getLogger (__name__ )
2929
3030
31+ def _format_service (service ):
32+ columns = (
33+ 'id' ,
34+ 'name' ,
35+ 'type' ,
36+ 'is_enabled' ,
37+ 'description' ,
38+ )
39+ column_headers = (
40+ 'ID' ,
41+ 'Name' ,
42+ 'Type' ,
43+ 'Enabled' ,
44+ 'Description' ,
45+ )
46+
47+ return (
48+ column_headers ,
49+ utils .get_item_properties (
50+ service ,
51+ columns ,
52+ ),
53+ )
54+
55+
3156class CreateService (command .ShowOne ):
3257 _description = _ ("Create new service" )
3358
@@ -66,17 +91,16 @@ def get_parser(self, prog_name):
6691 return parser
6792
6893 def take_action (self , parsed_args ):
69- identity_client = self .app .client_manager .identity
94+ identity_client = self .app .client_manager .sdk_connection . identity
7095
71- service = identity_client .services . create (
96+ service = identity_client .create_service (
7297 name = parsed_args .name ,
7398 type = parsed_args .type ,
7499 description = parsed_args .description ,
75- enabled = parsed_args .is_enabled ,
100+ is_enabled = parsed_args .is_enabled ,
76101 )
77102
78- service ._info .pop ('links' )
79- return zip (* sorted (service ._info .items ()))
103+ return _format_service (service )
80104
81105
82106class DeleteService (command .Command ):
@@ -93,12 +117,12 @@ def get_parser(self, prog_name):
93117 return parser
94118
95119 def take_action (self , parsed_args ):
96- identity_client = self .app .client_manager .identity
120+ identity_client = self .app .client_manager .sdk_connection . identity
97121 result = 0
98122 for i in parsed_args .service :
99123 try :
100- service = common .find_service (identity_client , i )
101- identity_client .services . delete (service .id )
124+ service = common .find_service_sdk (identity_client , i )
125+ identity_client .delete_service (service .id )
102126 except Exception as e :
103127 result += 1
104128 LOG .error (
@@ -131,13 +155,19 @@ def get_parser(self, prog_name):
131155 return parser
132156
133157 def take_action (self , parsed_args ):
158+ identity_client = self .app .client_manager .sdk_connection .identity
159+
134160 if parsed_args .long :
135- columns = ('ID' , 'Name' , 'Type' , 'Description' , 'Enabled' )
161+ columns = ('id' , 'name' , 'type' , 'description' , 'is_enabled' )
162+ column_headers = ('ID' , 'Name' , 'Type' , 'Description' , 'Enabled' )
136163 else :
137- columns = ('ID' , 'Name' , 'Type' )
138- data = self .app .client_manager .identity .services .list ()
164+ columns = ('id' , 'name' , 'type' )
165+ column_headers = ('ID' , 'Name' , 'Type' )
166+
167+ data = identity_client .services ()
168+
139169 return (
140- columns ,
170+ column_headers ,
141171 (utils .get_item_properties (s , columns ) for s in data ),
142172 )
143173
@@ -185,20 +215,19 @@ def get_parser(self, prog_name):
185215 return parser
186216
187217 def take_action (self , parsed_args ):
188- identity_client = self .app .client_manager .identity
218+ identity_client = self .app .client_manager .sdk_connection . identity
189219
190- service = common .find_service (identity_client , parsed_args .service )
220+ service = common .find_service_sdk (identity_client , parsed_args .service )
191221 kwargs = {}
192222 if parsed_args .type :
193223 kwargs ['type' ] = parsed_args .type
194224 if parsed_args .name :
195225 kwargs ['name' ] = parsed_args .name
196226 if parsed_args .description :
197227 kwargs ['description' ] = parsed_args .description
198- if parsed_args .is_enabled is not None :
199- kwargs ['enabled' ] = parsed_args .is_enabled
228+ kwargs ['is_enabled' ] = parsed_args .is_enabled
200229
201- identity_client .services . update (service .id , ** kwargs )
230+ identity_client .update_service (service .id , ** kwargs )
202231
203232
204233class ShowService (command .ShowOne ):
@@ -214,9 +243,8 @@ def get_parser(self, prog_name):
214243 return parser
215244
216245 def take_action (self , parsed_args ):
217- identity_client = self .app .client_manager .identity
246+ identity_client = self .app .client_manager .sdk_connection . identity
218247
219- service = common .find_service (identity_client , parsed_args .service )
248+ service = common .find_service_sdk (identity_client , parsed_args .service )
220249
221- service ._info .pop ('links' )
222- return zip (* sorted (service ._info .items ()))
250+ return _format_service (service )
0 commit comments