Skip to main content

nil_client/client/
player.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::player::*;
8use nil_payload::response::player::*;
9
10impl Client {
11  pub async fn get_player(&self, req: GetPlayerRequest) -> Result<GetPlayerResponse> {
12    http::json_put("get-player")
13      .body(req)
14      .server(self.server)
15      .maybe_authorization(self.authorization.as_ref())
16      .circuit_breaker(self.circuit_breaker())
17      .retry(&self.retry)
18      .user_agent(&self.user_agent)
19      .send()
20      .await
21  }
22
23  pub async fn get_player_coords(
24    &self,
25    req: GetPlayerCoordsRequest,
26  ) -> Result<GetPlayerCoordsResponse> {
27    http::json_put("get-player-coords")
28      .body(req)
29      .server(self.server)
30      .maybe_authorization(self.authorization.as_ref())
31      .circuit_breaker(self.circuit_breaker())
32      .retry(&self.retry)
33      .user_agent(&self.user_agent)
34      .send()
35      .await
36  }
37
38  pub async fn get_player_ids(&self, req: GetPlayerIdsRequest) -> Result<GetPlayerIdsResponse> {
39    http::json_put("get-player-ids")
40      .body(req)
41      .server(self.server)
42      .maybe_authorization(self.authorization.as_ref())
43      .circuit_breaker(self.circuit_breaker())
44      .retry(&self.retry)
45      .user_agent(&self.user_agent)
46      .send()
47      .await
48  }
49
50  pub async fn get_player_maintenance(
51    &self,
52    req: GetPlayerMaintenanceRequest,
53  ) -> Result<GetPlayerMaintenanceResponse> {
54    http::json_put("get-player-maintenance")
55      .body(req)
56      .server(self.server)
57      .maybe_authorization(self.authorization.as_ref())
58      .circuit_breaker(self.circuit_breaker())
59      .retry(&self.retry)
60      .user_agent(&self.user_agent)
61      .send()
62      .await
63  }
64
65  pub async fn get_player_military(
66    &self,
67    req: GetPlayerMilitaryRequest,
68  ) -> Result<GetPlayerMilitaryResponse> {
69    http::json_put("get-player-military")
70      .body(req)
71      .server(self.server)
72      .maybe_authorization(self.authorization.as_ref())
73      .circuit_breaker(self.circuit_breaker())
74      .retry(&self.retry)
75      .user_agent(&self.user_agent)
76      .send()
77      .await
78  }
79
80  pub async fn get_player_status(
81    &self,
82    req: GetPlayerStatusRequest,
83  ) -> Result<GetPlayerStatusResponse> {
84    http::json_put("get-player-status")
85      .body(req)
86      .server(self.server)
87      .circuit_breaker(self.circuit_breaker())
88      .retry(&self.retry)
89      .user_agent(&self.user_agent)
90      .send()
91      .await
92  }
93
94  pub async fn get_player_storage_capacity(
95    &self,
96    req: GetPlayerStorageCapacityRequest,
97  ) -> Result<GetPlayerStorageCapacityResponse> {
98    http::json_put("get-player-storage-capacity")
99      .body(req)
100      .server(self.server)
101      .maybe_authorization(self.authorization.as_ref())
102      .circuit_breaker(self.circuit_breaker())
103      .retry(&self.retry)
104      .user_agent(&self.user_agent)
105      .send()
106      .await
107  }
108
109  pub async fn get_player_worlds(
110    &self,
111    req: GetPlayerWorldsRequest,
112  ) -> Result<GetPlayerWorldsResponse> {
113    http::json_put("get-player-worlds")
114      .body(req)
115      .server(self.server)
116      .circuit_breaker(self.circuit_breaker())
117      .retry(&self.retry)
118      .user_agent(&self.user_agent)
119      .send()
120      .await
121  }
122
123  pub async fn get_public_player(
124    &self,
125    req: GetPublicPlayerRequest,
126  ) -> Result<GetPublicPlayerResponse> {
127    http::json_put("get-public-player")
128      .body(req)
129      .server(self.server)
130      .circuit_breaker(self.circuit_breaker())
131      .retry(&self.retry)
132      .user_agent(&self.user_agent)
133      .send()
134      .await
135  }
136
137  pub async fn get_public_players(
138    &self,
139    req: GetPublicPlayersRequest,
140  ) -> Result<GetPublicPlayersResponse> {
141    http::json_put("get-public-players")
142      .body(req)
143      .server(self.server)
144      .circuit_breaker(self.circuit_breaker())
145      .retry(&self.retry)
146      .user_agent(&self.user_agent)
147      .send()
148      .await
149  }
150
151  pub async fn player_exists(&self, req: PlayerExistsRequest) -> Result<PlayerExistsResponse> {
152    http::json_put("player-exists")
153      .body(req)
154      .server(self.server)
155      .circuit_breaker(self.circuit_breaker())
156      .retry(&self.retry)
157      .user_agent(&self.user_agent)
158      .send()
159      .await
160  }
161
162  pub async fn set_player_status(&self, req: SetPlayerStatusRequest) -> Result<()> {
163    http::post("set-player-status")
164      .body(req)
165      .server(self.server)
166      .maybe_authorization(self.authorization.as_ref())
167      .circuit_breaker(self.circuit_breaker())
168      .user_agent(&self.user_agent)
169      .send()
170      .await
171  }
172
173  pub async fn spawn_player(&self, req: SpawnPlayerRequest) -> Result<()> {
174    http::post("spawn-player")
175      .body(req)
176      .server(self.server)
177      .maybe_authorization(self.authorization.as_ref())
178      .circuit_breaker(self.circuit_breaker())
179      .user_agent(&self.user_agent)
180      .send()
181      .await
182  }
183}