spacetraders_client/endpoints/agents/
factions.rs1use std::num::NonZeroU64;
2
3use crate::client::StClient;
4use crate::client::{ClientError, RequestPriority};
5use crate::types;
6
7impl StClient {
8 pub async fn get_factions(
9 &self,
10 limit: Option<NonZeroU64>,
11 page: Option<NonZeroU64>,
12 ) -> Result<types::GetFactionsResponse, ClientError> {
13 self.get_factions_with_priority(limit, page, RequestPriority::Normal)
14 .await
15 }
16
17 pub async fn get_factions_with_priority(
18 &self,
19 limit: Option<NonZeroU64>,
20 page: Option<NonZeroU64>,
21 priority: RequestPriority,
22 ) -> Result<types::GetFactionsResponse, ClientError> {
23 self.send("get_factions", priority, || {
24 self.inner.get_factions(limit, page)
25 })
26 .await
27 }
28
29 pub async fn get_faction(
30 &self,
31 faction_symbol: &str,
32 ) -> Result<types::GetFactionResponse, ClientError> {
33 self.get_faction_with_priority(faction_symbol, RequestPriority::Normal)
34 .await
35 }
36
37 pub async fn get_faction_with_priority(
38 &self,
39 faction_symbol: &str,
40 priority: RequestPriority,
41 ) -> Result<types::GetFactionResponse, ClientError> {
42 self.send("get_faction", priority, || {
43 self.inner.get_faction(faction_symbol)
44 })
45 .await
46 }
47
48 pub async fn get_my_factions(
49 &self,
50 limit: Option<NonZeroU64>,
51 page: Option<NonZeroU64>,
52 ) -> Result<types::GetMyFactionsResponse, ClientError> {
53 self.get_my_factions_with_priority(limit, page, RequestPriority::Normal)
54 .await
55 }
56
57 pub async fn get_my_factions_with_priority(
58 &self,
59 limit: Option<NonZeroU64>,
60 page: Option<NonZeroU64>,
61 priority: RequestPriority,
62 ) -> Result<types::GetMyFactionsResponse, ClientError> {
63 self.send("get_my_factions", priority, || {
64 self.inner.get_my_factions(limit, page)
65 })
66 .await
67 }
68}