@@ -823,8 +823,7 @@ pub struct QueryConfig {
823
823
pub async_insert_stale_timeout : u64 ,
824
824
825
825
#[ clap( skip) ]
826
- #[ serde( flatten) ]
827
- pub idm : IDMConfig ,
826
+ users : Vec < UserConfig > ,
828
827
}
829
828
830
829
impl Default for QueryConfig {
@@ -877,7 +876,9 @@ impl TryInto<InnerQueryConfig> for QueryConfig {
877
876
async_insert_max_data_size : self . async_insert_max_data_size ,
878
877
async_insert_busy_timeout : self . async_insert_busy_timeout ,
879
878
async_insert_stale_timeout : self . async_insert_stale_timeout ,
880
- idm : self . idm . try_into ( ) ?,
879
+ idm : InnerIDMConfig {
880
+ users : users_to_inner ( self . users ) ?,
881
+ } ,
881
882
} )
882
883
}
883
884
}
@@ -931,7 +932,7 @@ impl From<InnerQueryConfig> for QueryConfig {
931
932
async_insert_max_data_size : inner. async_insert_max_data_size ,
932
933
async_insert_busy_timeout : inner. async_insert_busy_timeout ,
933
934
async_insert_stale_timeout : inner. async_insert_stale_timeout ,
934
- idm : inner. idm . into ( ) ,
935
+ users : users_from_inner ( inner. idm . users ) ,
935
936
}
936
937
}
937
938
}
@@ -1230,36 +1231,22 @@ impl Debug for MetaConfig {
1230
1231
}
1231
1232
}
1232
1233
1233
- #[ derive( Clone , Debug , Default , PartialEq , Eq , Serialize , Deserialize ) ]
1234
- pub struct IDMConfig {
1235
- users : Vec < UserConfig > ,
1236
- }
1237
-
1238
- impl TryInto < InnerIDMConfig > for IDMConfig {
1239
- type Error = ErrorCode ;
1240
-
1241
- fn try_into ( self ) -> Result < InnerIDMConfig > {
1242
- let mut users = HashMap :: new ( ) ;
1243
- for c in self . users . into_iter ( ) {
1244
- users. insert ( c. name . clone ( ) , c. auth . try_into ( ) ?) ;
1245
- }
1246
- Ok ( InnerIDMConfig { users } )
1247
- }
1234
+ fn users_from_inner ( inner : HashMap < String , AuthInfo > ) -> Vec < UserConfig > {
1235
+ inner
1236
+ . into_iter ( )
1237
+ . map ( |( name, auth) | UserConfig {
1238
+ name,
1239
+ auth : auth. into ( ) ,
1240
+ } )
1241
+ . collect ( )
1248
1242
}
1249
1243
1250
- impl From < InnerIDMConfig > for IDMConfig {
1251
- fn from ( inner : InnerIDMConfig ) -> Self {
1252
- Self {
1253
- users : inner
1254
- . users
1255
- . into_iter ( )
1256
- . map ( |( name, auth) | UserConfig {
1257
- name,
1258
- auth : auth. into ( ) ,
1259
- } )
1260
- . collect ( ) ,
1261
- }
1244
+ fn users_to_inner ( outer : Vec < UserConfig > ) -> Result < HashMap < String , AuthInfo > > {
1245
+ let mut inner = HashMap :: new ( ) ;
1246
+ for c in outer. into_iter ( ) {
1247
+ inner. insert ( c. name . clone ( ) , c. auth . try_into ( ) ?) ;
1262
1248
}
1249
+ Ok ( inner)
1263
1250
}
1264
1251
1265
1252
#[ derive( Clone , Debug , PartialEq , Eq , Serialize , Deserialize ) ]
0 commit comments