@@ -11,15 +11,14 @@ use axum::{
1111use common:: { ed25519, env:: DeployEnv } ;
1212use lexe_api:: {
1313 def:: AppNodeRunApi ,
14- error:: NodeErrorKind ,
14+ error:: { SdkApiError , SdkErrorKind } ,
1515 models:: command:: { CreateInvoiceResponse , LxPaymentIdStruct } ,
1616 server:: { LxJson , extract:: LxQuery } ,
1717 types:: payments:: PaymentCreatedIndex ,
1818} ;
1919use node_client:: client:: NodeClient ;
2020use quick_cache:: unsync;
2121use sdk_core:: {
22- SdkApiError ,
2322 models:: {
2423 SdkCreateInvoiceRequest , SdkCreateInvoiceResponse ,
2524 SdkGetPaymentRequest , SdkGetPaymentResponse , SdkNodeInfoResponse ,
@@ -121,11 +120,11 @@ mod node {
121120 State ( _) : State < Arc < RouterState > > ,
122121 NodeClientExtractor ( node_client) : NodeClientExtractor ,
123122 ) -> Result < LxJson < SdkNodeInfoResponse > , SdkApiError > {
124- node_client
123+ let info = node_client
125124 . node_info ( )
126125 . await
127- . map ( SdkNodeInfoResponse :: from )
128- . map ( LxJson )
126+ . map_err ( SdkApiError :: command ) ? ;
127+ Ok ( LxJson ( SdkNodeInfoResponse :: from ( info ) ) )
129128 }
130129
131130 #[ instrument( skip_all, name = "(create-invoice)" ) ]
@@ -137,7 +136,10 @@ mod node {
137136 let CreateInvoiceResponse {
138137 invoice,
139138 created_index : maybe_index,
140- } = node_client. create_invoice ( req. into ( ) ) . await ?;
139+ } = node_client
140+ . create_invoice ( req. into ( ) )
141+ . await
142+ . map_err ( SdkApiError :: command) ?;
141143
142144 let index = maybe_index
143145 . ok_or ( "Node out-of-date. Upgrade to node-v0.8.10 or later." )
@@ -153,7 +155,11 @@ mod node {
153155 LxJson ( req) : LxJson < SdkPayInvoiceRequest > ,
154156 ) -> Result < LxJson < SdkPayInvoiceResponse > , SdkApiError > {
155157 let id = req. invoice . payment_id ( ) ;
156- let created_at = node_client. pay_invoice ( req. into ( ) ) . await ?. created_at ;
158+ let created_at = node_client
159+ . pay_invoice ( req. into ( ) )
160+ . await
161+ . map_err ( SdkApiError :: command) ?
162+ . created_at ;
157163 let resp = SdkPayInvoiceResponse {
158164 index : PaymentCreatedIndex { id, created_at } ,
159165 created_at,
@@ -174,7 +180,7 @@ mod node {
174180 Ok ( LxJson ( payment) ) => Ok ( LxJson ( SdkGetPaymentResponse {
175181 payment : Some ( payment) ,
176182 } ) ) ,
177- Err ( e) if e. kind == NodeErrorKind :: NotFound =>
183+ Err ( e) if e. kind == SdkErrorKind :: NotFound =>
178184 Ok ( LxJson ( SdkGetPaymentResponse { payment : None } ) ) ,
179185 Err ( e) => Err ( e) ,
180186 }
@@ -200,7 +206,8 @@ mod node {
200206
201207 let maybe_basic_payment = node_client
202208 . get_payment_by_id ( LxPaymentIdStruct { id } )
203- . await ?
209+ . await
210+ . map_err ( SdkApiError :: command) ?
204211 . maybe_payment ;
205212
206213 let basic_payment = match maybe_basic_payment {
0 commit comments