MCPcopy Create free account
hub / github.com/ElementsProject/lightning / get_info_handler

Function get_info_handler

plugins/lsps-plugin/src/core/lsps2/handler.rs:292–317  ·  view source on GitHub ↗
(
    api: Arc<A>,
    secret: &[u8; 32],
    request: &Lsps2GetInfoRequest,
)

Source from the content-addressed store, hash-verified

290}
291
292async fn get_info_handler<A: Lsps2OfferProvider + 'static>(
293 api: Arc<A>,
294 secret: &[u8; 32],
295 request: &Lsps2GetInfoRequest,
296) -> std::result::Result<Lsps2GetInfoResponse, RpcError> {
297 let res_data = api
298 .get_offer(&Lsps2PolicyGetInfoRequest {
299 token: request.token.clone(),
300 })
301 .await
302 .map_err(|_| RpcError::internal_error("internal error"))?;
303
304 if res_data.client_rejected {
305 return Err(RpcError::client_rejected("client was rejected"));
306 };
307
308 let opening_fee_params_menu = res_data
309 .policy_opening_fee_params_menu
310 .iter()
311 .map(|v| make_opening_fee_params(v, secret))
312 .collect::<Result<Vec<_>, _>>()?;
313
314 Ok(Lsps2GetInfoResponse {
315 opening_fee_params_menu,
316 })
317}
318
319fn make_opening_fee_params(
320 v: &PolicyOpeningFeeParams,

Callers 1

handle_get_infoMethod · 0.85

Calls 3

make_opening_fee_paramsFunction · 0.85
mapMethod · 0.80
get_offerMethod · 0.45

Tested by

no test coverage detected