Skip to main content

nil_client/client/
market.rs

1// Copyright (C) Call of Nil contributors
2// SPDX-License-Identifier: AGPL-3.0-only
3
4use super::Client;
5use crate::error::Result;
6use crate::http;
7use nil_payload::request::market::*;
8use nil_payload::response::market::*;
9
10impl Client {
11  /// Endpoint: `PUT /get-market`
12  pub async fn get_market(&self, req: GetMarketRequest) -> Result<GetMarketResponse> {
13    http::json_put("get-market")
14      .body(req)
15      .server(self.server)
16      .circuit_breaker(self.circuit_breaker())
17      .retry(&self.retry)
18      .user_agent(&self.user_agent)
19      .send()
20      .await
21  }
22
23  /// Endpoint: `PUT /get-market-fee`
24  pub async fn get_market_fee(&self, req: GetMarketFeeRequest) -> Result<GetMarketFeeResponse> {
25    http::json_put("get-market-fee")
26      .body(req)
27      .server(self.server)
28      .circuit_breaker(self.circuit_breaker())
29      .retry(&self.retry)
30      .user_agent(&self.user_agent)
31      .send()
32      .await
33  }
34
35  /// Endpoint: `POST /send-resources`
36  pub async fn send_resources(&self, req: SendResourcesRequest) -> Result<()> {
37    http::post("send-resources")
38      .body(req)
39      .server(self.server)
40      .maybe_authorization(self.authorization.as_ref())
41      .circuit_breaker(self.circuit_breaker())
42      .user_agent(&self.user_agent)
43      .send()
44      .await
45  }
46}