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