ic_http_gateway/client/
http_gateway_client.rs1use 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}