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, 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_maintenance(
42 &self,
43 req: GetPlayerMaintenanceRequest,
44 ) -> Result<Maintenance> {
45 http::json_put("get-player-maintenance")
46 .body(req)
47 .server(self.server)
48 .maybe_authorization(self.authorization.as_ref())
49 .circuit_breaker(self.circuit_breaker())
50 .retry(&self.retry)
51 .user_agent(&self.user_agent)
52 .send()
53 .await
54 }
55
56 pub async fn get_player_military(&self, req: GetPlayerMilitaryRequest) -> Result<Military> {
57 http::json_put("get-player-military")
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_reports(&self, req: GetPlayerReportsRequest) -> Result<Vec<ReportId>> {
69 http::json_put("get-player-reports")
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(&self, req: GetPlayerStatusRequest) -> Result<PlayerStatus> {
81 http::json_put("get-player-status")
82 .body(req)
83 .server(self.server)
84 .circuit_breaker(self.circuit_breaker())
85 .retry(&self.retry)
86 .user_agent(&self.user_agent)
87 .send()
88 .await
89 }
90
91 pub async fn get_player_storage_capacity(
92 &self,
93 req: GetPlayerStorageCapacityRequest,
94 ) -> Result<OverallStorageCapacity> {
95 http::json_put("get-player-storage-capacity")
96 .body(req)
97 .server(self.server)
98 .maybe_authorization(self.authorization.as_ref())
99 .circuit_breaker(self.circuit_breaker())
100 .retry(&self.retry)
101 .user_agent(&self.user_agent)
102 .send()
103 .await
104 }
105
106 pub async fn get_player_worlds(&self, req: GetPlayerWorldsRequest) -> Result<Vec<WorldId>> {
107 http::json_put("get-player-worlds")
108 .body(req)
109 .server(self.server)
110 .circuit_breaker(self.circuit_breaker())
111 .retry(&self.retry)
112 .user_agent(&self.user_agent)
113 .send()
114 .await
115 }
116
117 pub async fn get_public_player(&self, req: GetPublicPlayerRequest) -> Result<PublicPlayer> {
118 http::json_put("get-public-player")
119 .body(req)
120 .server(self.server)
121 .circuit_breaker(self.circuit_breaker())
122 .retry(&self.retry)
123 .user_agent(&self.user_agent)
124 .send()
125 .await
126 }
127
128 pub async fn get_public_players(
129 &self,
130 req: GetPublicPlayersRequest,
131 ) -> Result<Vec<PublicPlayer>> {
132 http::json_put("get-public-players")
133 .body(req)
134 .server(self.server)
135 .circuit_breaker(self.circuit_breaker())
136 .retry(&self.retry)
137 .user_agent(&self.user_agent)
138 .send()
139 .await
140 }
141
142 pub async fn player_exists(&self, req: PlayerExistsRequest) -> Result<bool> {
143 http::json_put("player-exists")
144 .body(req)
145 .server(self.server)
146 .circuit_breaker(self.circuit_breaker())
147 .retry(&self.retry)
148 .user_agent(&self.user_agent)
149 .send()
150 .await
151 }
152
153 pub async fn set_player_status(&self, req: SetPlayerStatusRequest) -> Result<()> {
154 http::post("set-player-status")
155 .body(req)
156 .server(self.server)
157 .maybe_authorization(self.authorization.as_ref())
158 .circuit_breaker(self.circuit_breaker())
159 .user_agent(&self.user_agent)
160 .send()
161 .await
162 }
163
164 pub async fn spawn_player(&self, req: SpawnPlayerRequest) -> Result<()> {
165 http::post("spawn-player")
166 .body(req)
167 .server(self.server)
168 .maybe_authorization(self.authorization.as_ref())
169 .circuit_breaker(self.circuit_breaker())
170 .user_agent(&self.user_agent)
171 .send()
172 .await
173 }
174}