@@ -2,93 +2,74 @@ use datafeed_cache_shared::datafeed::{
22 DatafeedAtis , DatafeedController , DatafeedMilitaryRating , DatafeedPilot , DatafeedPilotRating ,
33 DatafeedServer ,
44} ;
5- use datafeed_cache_shared:: response:: {
6- DatafeedGeneralResponse , DatafeedListResponse , DatafeedResponse ,
7- } ;
8- use log:: info;
9- use reqwest:: Client ;
5+ use datafeed_cache_shared:: response:: { DatafeedGeneralResponse , DatafeedGerStatsResponse , DatafeedListResponse , DatafeedResponse } ;
106use serde:: de:: DeserializeOwned ;
11-
12- pub struct DatafeedClient {
13- client : Client ,
14- base_url : String ,
15- }
16-
17- const BASE_DEFAULT : & ' static str = "https://df.vatsim-germany.org" ;
7+ use crate :: DatafeedClient ;
188
199type Error = reqwest:: Error ;
2010
21- #[ allow( dead_code) ]
2211impl DatafeedClient {
23- pub fn new ( ) -> Self {
24- let _ = env_logger:: try_init ( ) ;
25- let _ = dotenv:: dotenv ( ) ;
26-
27- let base_url: String = dotenv:: var ( "BASE_URL" ) . unwrap_or ( BASE_DEFAULT . to_string ( ) ) ;
28- info ! ( "Selected BASE_URL: {}" , base_url) ;
2912
30- DatafeedClient {
31- client : Client :: default ( ) ,
32- base_url,
33- }
34- }
35-
36- async fn make_request < T > ( & self , path : & str ) -> Result < T , Error >
13+ fn make_request < T > ( & self , path : & str ) -> Result < T , Error >
3714 where
3815 T : DeserializeOwned ,
3916 {
4017 let req = self . client . get ( self . base_url . to_owned ( ) + path) . build ( ) ?;
41- let response = self . client . execute ( req) . await ?;
42- response. json :: < T > ( ) . await
18+ let response = self . client . execute ( req) ?;
19+ response. json :: < T > ( )
4320 }
4421
45- pub async fn get ( & self ) -> Result < DatafeedResponse , Error > {
46- self . make_request ( "/datafeed" ) . await
22+ pub fn get ( & self ) -> Result < DatafeedResponse < ' _ > , Error > {
23+ self . make_request ( "/datafeed" )
4724 }
4825
49- pub async fn get_general ( & self ) -> Result < DatafeedGeneralResponse , Error > {
50- self . make_request ( "/datafeed/general" ) . await
26+ pub fn get_general ( & self ) -> Result < DatafeedGeneralResponse < ' _ > , Error > {
27+ self . make_request ( "/datafeed/general" )
5128 }
5229
53- pub async fn get_controllers ( & self ) -> Result < DatafeedListResponse < DatafeedController > , Error > {
54- self . make_request ( "/datafeed/controllers" ) . await
30+ pub fn get_controllers ( & self ) -> Result < DatafeedListResponse < ' _ , DatafeedController > , Error > {
31+ self . make_request ( "/datafeed/controllers" )
5532 }
5633
57- pub async fn get_pilots ( & self ) -> Result < DatafeedListResponse < DatafeedPilot > , Error > {
58- self . make_request ( "/datafeed/pilots" ) . await
34+ pub fn get_pilots ( & self ) -> Result < DatafeedListResponse < ' _ , DatafeedPilot > , Error > {
35+ self . make_request ( "/datafeed/pilots" )
5936 }
6037
61- pub async fn get_atis ( & self ) -> Result < DatafeedListResponse < DatafeedAtis > , Error > {
62- self . make_request ( "/datafeed/atis" ) . await
38+ pub fn get_atis ( & self ) -> Result < DatafeedListResponse < ' _ , DatafeedAtis > , Error > {
39+ self . make_request ( "/datafeed/atis" )
6340 }
6441
65- pub async fn get_servers ( & self ) -> Result < DatafeedListResponse < DatafeedServer > , Error > {
66- self . make_request ( "/datafeed/servers" ) . await
42+ pub fn get_servers ( & self ) -> Result < DatafeedListResponse < ' _ , DatafeedServer > , Error > {
43+ self . make_request ( "/datafeed/servers" )
6744 }
6845
69- pub async fn get_pilot_ratings (
46+ pub fn get_pilot_ratings (
7047 & self ,
71- ) -> Result < DatafeedListResponse < DatafeedPilotRating > , Error > {
72- self . make_request ( "/datafeed/pilot_ratings" ) . await
48+ ) -> Result < DatafeedListResponse < ' _ , DatafeedPilotRating > , Error > {
49+ self . make_request ( "/datafeed/pilot_ratings" )
7350 }
7451
75- pub async fn get_military_ratings (
52+ pub fn get_military_ratings (
7653 & self ,
77- ) -> Result < DatafeedListResponse < DatafeedMilitaryRating > , Error > {
78- self . make_request ( "/datafeed/military_ratings" ) . await
54+ ) -> Result < DatafeedListResponse < ' _ , DatafeedMilitaryRating > , Error > {
55+ self . make_request ( "/datafeed/military_ratings" )
7956 }
8057
81- pub async fn get_ger_controllers (
58+ pub fn get_ger_controllers (
8259 & self ,
83- ) -> Result < DatafeedListResponse < DatafeedController > , Error > {
84- self . make_request ( "/datafeed/controllers/ger" ) . await
60+ ) -> Result < DatafeedListResponse < ' _ , DatafeedController > , Error > {
61+ self . make_request ( "/datafeed/controllers/ger" )
62+ }
63+
64+ pub fn get_ger_pilots ( & self ) -> Result < DatafeedListResponse < ' _ , DatafeedPilot > , Error > {
65+ self . make_request ( "/datafeed/pilots/ger" )
8566 }
8667
87- pub async fn get_ger_pilots ( & self ) -> Result < DatafeedListResponse < DatafeedPilot > , Error > {
88- self . make_request ( "/datafeed/pilots /ger" ) . await
68+ pub fn get_ger_atis ( & self ) -> Result < DatafeedListResponse < ' _ , DatafeedAtis > , Error > {
69+ self . make_request ( "/datafeed/atis /ger" )
8970 }
9071
91- pub async fn get_ger_atis ( & self ) -> Result < DatafeedListResponse < DatafeedAtis > , Error > {
92- self . make_request ( "/datafeed/atis/ger" ) . await
72+ pub fn get_ger_stats ( & self ) -> Result < DatafeedGerStatsResponse , Error > {
73+ self . make_request ( "/datafeed/stats" )
9374 }
9475}
0 commit comments