nil_client/client/
city.rs1use super::Client;
5use crate::error::Result;
6use crate::http;
7use nil_payload::request::city::*;
8use nil_payload::response::city::*;
9
10impl Client {
11 pub async fn get_city(&self, req: GetCityRequest) -> Result<GetCityResponse> {
12 http::json_put("get-city")
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_city_score(&self, req: GetCityScoreRequest) -> Result<GetCityScoreResponse> {
24 http::json_put("get-city-score")
25 .body(req)
26 .server(self.server)
27 .circuit_breaker(self.circuit_breaker())
28 .retry(&self.retry)
29 .user_agent(&self.user_agent)
30 .send()
31 .await
32 }
33
34 pub async fn get_public_cities(
35 &self,
36 req: GetPublicCitiesRequest,
37 ) -> Result<GetPublicCitiesResponse> {
38 http::json_put("get-public-cities")
39 .body(req)
40 .server(self.server)
41 .circuit_breaker(self.circuit_breaker())
42 .retry(&self.retry)
43 .user_agent(&self.user_agent)
44 .send()
45 .await
46 }
47
48 pub async fn get_public_city(&self, req: GetPublicCityRequest) -> Result<GetPublicCityResponse> {
49 http::json_put("get-public-city")
50 .body(req)
51 .server(self.server)
52 .circuit_breaker(self.circuit_breaker())
53 .retry(&self.retry)
54 .user_agent(&self.user_agent)
55 .send()
56 .await
57 }
58
59 pub async fn rename_city(&self, req: RenameCityRequest) -> Result<()> {
60 http::post("rename-city")
61 .body(req)
62 .server(self.server)
63 .maybe_authorization(self.authorization.as_ref())
64 .circuit_breaker(self.circuit_breaker())
65 .user_agent(&self.user_agent)
66 .send()
67 .await
68 }
69
70 pub async fn search_city(&self, req: SearchCityRequest) -> Result<SearchCityResponse> {
71 http::json_put("search-city")
72 .body(req)
73 .server(self.server)
74 .maybe_authorization(self.authorization.as_ref())
75 .circuit_breaker(self.circuit_breaker())
76 .retry(&self.retry)
77 .user_agent(&self.user_agent)
78 .send()
79 .await
80 }
81
82 pub async fn search_public_city(
83 &self,
84 req: SearchPublicCityRequest,
85 ) -> Result<SearchPublicCityResponse> {
86 http::json_put("search-public-city")
87 .body(req)
88 .server(self.server)
89 .circuit_breaker(self.circuit_breaker())
90 .retry(&self.retry)
91 .user_agent(&self.user_agent)
92 .send()
93 .await
94 }
95}