ic_http_gateway/client/
http_gateway_client.rs

1use crate::{
2    HttpGatewayClientBuilder, HttpGatewayRequestArgs, HttpGatewayRequestBuilder,
3    HttpGatewayRequestBuilderArgs,
4};
5use ic_agent::Agent;
6
7#[derive(Clone)]
8pub struct HttpGatewayClientArgs {
9    pub agent: Agent,
10}
11
12#[derive(Clone)]
13pub struct HttpGatewayClient {
14    agent: Agent,
15}
16
17impl HttpGatewayClient {
18    pub fn new(args: HttpGatewayClientArgs) -> Self {
19        Self { agent: args.agent }
20    }
21
22    pub fn builder() -> HttpGatewayClientBuilder {
23        Default::default()
24    }
25
26    pub fn request(&self, args: HttpGatewayRequestArgs) -> HttpGatewayRequestBuilder {
27        HttpGatewayRequestBuilder::new(HttpGatewayRequestBuilderArgs {
28            request_args: args,
29            agent: &self.agent,
30        })
31    }
32}