@@ -4,7 +4,7 @@ use crate::cli::{CloudAclCommands, OutputFormat};
44use crate :: connection:: ConnectionManager ;
55use crate :: error:: Result as CliResult ;
66
7- use super :: acl_impl;
7+ use super :: acl_impl:: { self , AclOperationParams } ;
88
99pub async fn handle_acl_command (
1010 conn_mgr : & ConnectionManager ,
@@ -18,60 +18,96 @@ pub async fn handle_acl_command(
1818 CloudAclCommands :: ListRedisRules => {
1919 acl_impl:: list_redis_rules ( conn_mgr, profile_name, output_format, query) . await
2020 }
21- CloudAclCommands :: CreateRedisRule { name, rule } => {
22- acl_impl:: create_redis_rule ( conn_mgr, profile_name, name, rule, output_format, query)
23- . await
21+ CloudAclCommands :: CreateRedisRule {
22+ name,
23+ rule,
24+ async_ops,
25+ } => {
26+ let params = AclOperationParams {
27+ conn_mgr,
28+ profile_name,
29+ async_ops,
30+ output_format,
31+ query,
32+ } ;
33+ acl_impl:: create_redis_rule ( & params, name, rule) . await
2434 }
25- CloudAclCommands :: UpdateRedisRule { id, name, rule } => {
26- acl_impl:: update_redis_rule (
35+ CloudAclCommands :: UpdateRedisRule {
36+ id,
37+ name,
38+ rule,
39+ async_ops,
40+ } => {
41+ let params = AclOperationParams {
2742 conn_mgr,
2843 profile_name,
29- * id,
30- name. as_deref ( ) ,
31- rule. as_deref ( ) ,
44+ async_ops,
3245 output_format,
3346 query,
34- )
35- . await
47+ } ;
48+ acl_impl :: update_redis_rule ( & params , * id , name . as_deref ( ) , rule . as_deref ( ) ) . await
3649 }
37- CloudAclCommands :: DeleteRedisRule { id, force } => {
38- acl_impl:: delete_redis_rule ( conn_mgr, profile_name, * id, * force, output_format, query)
39- . await
50+ CloudAclCommands :: DeleteRedisRule {
51+ id,
52+ force,
53+ async_ops,
54+ } => {
55+ let params = AclOperationParams {
56+ conn_mgr,
57+ profile_name,
58+ async_ops,
59+ output_format,
60+ query,
61+ } ;
62+ acl_impl:: delete_redis_rule ( & params, * id, * force) . await
4063 }
4164
4265 // ACL Roles
4366 CloudAclCommands :: ListRoles => {
4467 acl_impl:: list_roles ( conn_mgr, profile_name, output_format, query) . await
4568 }
46- CloudAclCommands :: CreateRole { name, redis_rules } => {
47- acl_impl:: create_role (
69+ CloudAclCommands :: CreateRole {
70+ name,
71+ redis_rules,
72+ async_ops,
73+ } => {
74+ let params = AclOperationParams {
4875 conn_mgr,
4976 profile_name,
50- name,
51- redis_rules,
77+ async_ops,
5278 output_format,
5379 query,
54- )
55- . await
80+ } ;
81+ acl_impl :: create_role ( & params , name , redis_rules ) . await
5682 }
5783 CloudAclCommands :: UpdateRole {
5884 id,
5985 name,
6086 redis_rules,
87+ async_ops,
6188 } => {
62- acl_impl :: update_role (
89+ let params = AclOperationParams {
6390 conn_mgr,
6491 profile_name,
65- * id,
66- name. as_deref ( ) ,
67- redis_rules. as_deref ( ) ,
92+ async_ops,
6893 output_format,
6994 query,
70- )
71- . await
95+ } ;
96+ acl_impl :: update_role ( & params , * id , name . as_deref ( ) , redis_rules . as_deref ( ) ) . await
7297 }
73- CloudAclCommands :: DeleteRole { id, force } => {
74- acl_impl:: delete_role ( conn_mgr, profile_name, * id, * force, output_format, query) . await
98+ CloudAclCommands :: DeleteRole {
99+ id,
100+ force,
101+ async_ops,
102+ } => {
103+ let params = AclOperationParams {
104+ conn_mgr,
105+ profile_name,
106+ async_ops,
107+ output_format,
108+ query,
109+ } ;
110+ acl_impl:: delete_role ( & params, * id, * force) . await
75111 }
76112
77113 // ACL Users
@@ -85,39 +121,53 @@ pub async fn handle_acl_command(
85121 name,
86122 role,
87123 password,
124+ async_ops,
88125 } => {
89- acl_impl :: create_acl_user (
126+ let params = AclOperationParams {
90127 conn_mgr,
91128 profile_name,
92- name,
93- role,
94- password,
129+ async_ops,
95130 output_format,
96131 query,
97- )
98- . await
132+ } ;
133+ acl_impl :: create_acl_user ( & params , name , role , password ) . await
99134 }
100135 CloudAclCommands :: UpdateAclUser {
101136 id,
102137 name,
103138 role,
104139 password,
140+ async_ops,
105141 } => {
106- acl_impl :: update_acl_user (
142+ let params = AclOperationParams {
107143 conn_mgr,
108144 profile_name,
145+ async_ops,
146+ output_format,
147+ query,
148+ } ;
149+ acl_impl:: update_acl_user (
150+ & params,
109151 * id,
110152 name. as_deref ( ) ,
111153 role. as_deref ( ) ,
112154 password. as_deref ( ) ,
113- output_format,
114- query,
115155 )
116156 . await
117157 }
118- CloudAclCommands :: DeleteAclUser { id, force } => {
119- acl_impl:: delete_acl_user ( conn_mgr, profile_name, * id, * force, output_format, query)
120- . await
158+ CloudAclCommands :: DeleteAclUser {
159+ id,
160+ force,
161+ async_ops,
162+ } => {
163+ let params = AclOperationParams {
164+ conn_mgr,
165+ profile_name,
166+ async_ops,
167+ output_format,
168+ query,
169+ } ;
170+ acl_impl:: delete_acl_user ( & params, * id, * force) . await
121171 }
122172 }
123173}
0 commit comments