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_cities(&self, req: GetCitiesRequest) -> Result<GetCitiesResponse> {
12 http::json_put("get-cities")
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(&self, req: GetCityRequest) -> Result<GetCityResponse> {
24 http::json_put("get-city")
25 .body(req)
26 .server(self.server)
27 .maybe_authorization(self.authorization.as_ref())
28 .circuit_breaker(self.circuit_breaker())
29 .retry(&self.retry)
30 .user_agent(&self.user_agent)
31 .send()
32 .await
33 }
34
35 pub async fn get_city_score(&self, req: GetCityScoreRequest) -> Result<GetCityScoreResponse> {
36 http::json_put("get-city-score")
37 .body(req)
38 .server(self.server)
39 .circuit_breaker(self.circuit_breaker())
40 .retry(&self.retry)
41 .user_agent(&self.user_agent)
42 .send()
43 .await
44 }
45
46 pub async fn get_public_cities(
47 &self,
48 req: GetPublicCitiesRequest,
49 ) -> Result<GetPublicCitiesResponse> {
50 http::json_put("get-public-cities")
51 .body(req)
52 .server(self.server)
53 .circuit_breaker(self.circuit_breaker())
54 .retry(&self.retry)
55 .user_agent(&self.user_agent)
56 .send()
57 .await
58 }
59
60 pub async fn get_public_city(&self, req: GetPublicCityRequest) -> Result<GetPublicCityResponse> {
61 http::json_put("get-public-city")
62 .body(req)
63 .server(self.server)
64 .circuit_breaker(self.circuit_breaker())
65 .retry(&self.retry)
66 .user_agent(&self.user_agent)
67 .send()
68 .await
69 }
70
71 pub async fn rename_city(&self, req: RenameCityRequest) -> Result<()> {
72 http::post("rename-city")
73 .body(req)
74 .server(self.server)
75 .maybe_authorization(self.authorization.as_ref())
76 .circuit_breaker(self.circuit_breaker())
77 .user_agent(&self.user_agent)
78 .send()
79 .await
80 }
81
82 pub async fn search_city(&self, req: SearchCityRequest) -> Result<SearchCityResponse> {
83 http::json_put("search-city")
84 .body(req)
85 .server(self.server)
86 .maybe_authorization(self.authorization.as_ref())
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 search_public_city(
95 &self,
96 req: SearchPublicCityRequest,
97 ) -> Result<SearchPublicCityResponse> {
98 http::json_put("search-public-city")
99 .body(req)
100 .server(self.server)
101 .circuit_breaker(self.circuit_breaker())
102 .retry(&self.retry)
103 .user_agent(&self.user_agent)
104 .send()
105 .await
106 }
107}