@@ -10,7 +10,7 @@ pub struct AdapterStore {
1010 kv : async_nats:: jetstream:: kv:: Store ,
1111}
1212
13- pub enum FlowIdenfiyResult {
13+ pub enum FlowIdentifyResult {
1414 None ,
1515 Single ( ValidationFlow ) ,
1616 Multiple ( Vec < ValidationFlow > ) ,
@@ -20,19 +20,24 @@ impl AdapterStore {
2020 pub async fn from_url ( url : String , bucket : String ) -> Self {
2121 let client = match async_nats:: connect ( url) . await {
2222 Ok ( client) => client,
23- Err ( err) => panic ! ( "Failed to connect to NATS server: {}" , err) ,
23+ Err ( err) => panic ! ( "Failed to connect to NATS server: {:? }" , err) ,
2424 } ;
2525
26- let jetstream = async_nats:: jetstream:: new ( client. clone ( ) ) ;
26+ let stream = async_nats:: jetstream:: new ( client. clone ( ) ) ;
2727
28- let _ = jetstream
28+ match stream
2929 . create_key_value ( Config {
3030 bucket : bucket. clone ( ) ,
3131 ..Default :: default ( )
3232 } )
33- . await ;
33+ . await {
34+ Ok ( _) => {
35+ log:: info!( "Successfully created NATS bucket" ) ;
36+ } ,
37+ Err ( err) => panic ! ( "Failed to create NATS bucket: {:?}" , err) ,
38+ }
3439
35- let kv = match jetstream . get_key_value ( bucket) . await {
40+ let kv = match stream . get_key_value ( bucket) . await {
3641 Ok ( kv) => kv,
3742 Err ( err) => panic ! ( "Failed to get key-value store: {}" , err) ,
3843 } ;
@@ -63,21 +68,19 @@ impl AdapterStore {
6368 & self ,
6469 pattern : String ,
6570 id : I ,
66- ) -> FlowIdenfiyResult {
71+ ) -> FlowIdentifyResult {
6772 let mut collector = Vec :: new ( ) ;
6873 let mut keys = match self . kv . keys ( ) . await {
6974 Ok ( keys) => keys. boxed ( ) ,
7075 Err ( err) => {
71- eprintln ! ( "Failed to get keys: {}" , err) ;
72- return FlowIdenfiyResult :: None ;
76+ log :: error !( "Failed to get keys: {}" , err) ;
77+ return FlowIdentifyResult :: None ;
7378 }
7479 } ;
7580
7681 while let Ok ( Some ( key) ) = keys. try_next ( ) . await {
77- println ! ( "comparing: key: {} pattern {:?}" , key, pattern) ;
7882
7983 if !Self :: is_matching_key ( & pattern, & key) {
80- println ! ( "Key does not match pattern: {}" , key) ;
8184 continue ;
8285 }
8386
@@ -92,9 +95,9 @@ impl AdapterStore {
9295 }
9396
9497 match collector. len ( ) {
95- 0 => FlowIdenfiyResult :: None ,
96- 1 => FlowIdenfiyResult :: Single ( collector[ 0 ] . clone ( ) ) ,
97- _ => FlowIdenfiyResult :: Multiple ( collector) ,
98+ 0 => FlowIdentifyResult :: None ,
99+ 1 => FlowIdentifyResult :: Single ( collector[ 0 ] . clone ( ) ) ,
100+ _ => FlowIdentifyResult :: Multiple ( collector) ,
98101 }
99102 }
100103
@@ -130,16 +133,15 @@ impl AdapterStore {
130133 match result {
131134 Ok ( message) => match Value :: decode ( message. payload ) {
132135 Ok ( value) => {
133- println ! ( "Response: {:?}" , & value) ;
134136 Some ( value)
135137 }
136138 Err ( err) => {
137- eprintln ! ( "Failed to decode response from NATS server: {}" , err) ;
138- return None ;
139+ log :: error !( "Failed to decode response from NATS server: {:? }" , err) ;
140+ None
139141 }
140142 } ,
141143 Err ( err) => {
142- eprintln ! ( "Failed to send request to NATS server: {}" , err) ;
144+ log :: error !( "Failed to send request to NATS server: {:? }" , err) ;
143145 None
144146 }
145147 }
@@ -154,22 +156,19 @@ impl AdapterStore {
154156 }
155157
156158 fn is_matching_key ( pattern : & String , key : & String ) -> bool {
157- let splitted_pattern = pattern. split ( "." ) ;
158- let splitted_key = key. split ( "." ) . collect :: < Vec < & str > > ( ) ;
159-
160- let zip = splitted_pattern. into_iter ( ) . zip ( splitted_key) ;
159+ let split_pattern = pattern. split ( "." ) ;
160+ let split_key = key. split ( "." ) . collect :: < Vec < & str > > ( ) ;
161+ let zip = split_pattern. into_iter ( ) . zip ( split_key) ;
161162
162163 for ( pattern_part, key_part) in zip {
163164 if pattern_part == "*" {
164165 continue ;
165166 }
166167
167168 if pattern_part != key_part {
168- println ! ( "matching: pattern: {} key: {}" , pattern_part, key_part) ;
169169 return false ;
170170 }
171171 }
172- println ! ( "pattern was correct" ) ;
173172 true
174173 }
175174}
0 commit comments