From aa52e632b866b51d455787a96bcd2f5a63b7ac89 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Mon, 19 Aug 2019 00:19:38 -0400 Subject: move ynab-api to its own repository --- src/apis/client.rs | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 src/apis/client.rs (limited to 'src/apis/client.rs') diff --git a/src/apis/client.rs b/src/apis/client.rs new file mode 100644 index 0000000..2776f11 --- /dev/null +++ b/src/apis/client.rs @@ -0,0 +1,78 @@ +use std::rc::Rc; + +use super::configuration::Configuration; + +pub struct APIClient { + configuration: Rc, + accounts_api: Box<::apis::AccountsApi>, + budgets_api: Box<::apis::BudgetsApi>, + categories_api: Box<::apis::CategoriesApi>, + deprecated_api: Box<::apis::DeprecatedApi>, + months_api: Box<::apis::MonthsApi>, + payee_locations_api: Box<::apis::PayeeLocationsApi>, + payees_api: Box<::apis::PayeesApi>, + scheduled_transactions_api: Box<::apis::ScheduledTransactionsApi>, + transactions_api: Box<::apis::TransactionsApi>, + user_api: Box<::apis::UserApi>, +} + +impl APIClient { + pub fn new(configuration: Configuration) -> APIClient { + let rc = Rc::new(configuration); + + APIClient { + configuration: rc.clone(), + accounts_api: Box::new(::apis::AccountsApiClient::new(rc.clone())), + budgets_api: Box::new(::apis::BudgetsApiClient::new(rc.clone())), + categories_api: Box::new(::apis::CategoriesApiClient::new(rc.clone())), + deprecated_api: Box::new(::apis::DeprecatedApiClient::new(rc.clone())), + months_api: Box::new(::apis::MonthsApiClient::new(rc.clone())), + payee_locations_api: Box::new(::apis::PayeeLocationsApiClient::new(rc.clone())), + payees_api: Box::new(::apis::PayeesApiClient::new(rc.clone())), + scheduled_transactions_api: Box::new(::apis::ScheduledTransactionsApiClient::new(rc.clone())), + transactions_api: Box::new(::apis::TransactionsApiClient::new(rc.clone())), + user_api: Box::new(::apis::UserApiClient::new(rc.clone())), + } + } + + pub fn accounts_api(&self) -> &::apis::AccountsApi{ + self.accounts_api.as_ref() + } + + pub fn budgets_api(&self) -> &::apis::BudgetsApi{ + self.budgets_api.as_ref() + } + + pub fn categories_api(&self) -> &::apis::CategoriesApi{ + self.categories_api.as_ref() + } + + pub fn deprecated_api(&self) -> &::apis::DeprecatedApi{ + self.deprecated_api.as_ref() + } + + pub fn months_api(&self) -> &::apis::MonthsApi{ + self.months_api.as_ref() + } + + pub fn payee_locations_api(&self) -> &::apis::PayeeLocationsApi{ + self.payee_locations_api.as_ref() + } + + pub fn payees_api(&self) -> &::apis::PayeesApi{ + self.payees_api.as_ref() + } + + pub fn scheduled_transactions_api(&self) -> &::apis::ScheduledTransactionsApi{ + self.scheduled_transactions_api.as_ref() + } + + pub fn transactions_api(&self) -> &::apis::TransactionsApi{ + self.transactions_api.as_ref() + } + + pub fn user_api(&self) -> &::apis::UserApi{ + self.user_api.as_ref() + } + +} -- cgit v1.2.3-54-g00ecf