From cb1b144e48ee357a76f551433d4886f092d259c8 Mon Sep 17 00:00:00 2001 From: David Blajda Date: Thu, 27 Dec 2018 04:46:10 +0000 Subject: Use a generic client for both helix and kraken --- src/helix/namespaces/auth.rs | 9 ++++----- src/helix/namespaces/clips.rs | 6 +++--- src/helix/namespaces/videos.rs | 8 +++++--- 3 files changed, 12 insertions(+), 11 deletions(-) (limited to 'src/helix/namespaces') diff --git a/src/helix/namespaces/auth.rs b/src/helix/namespaces/auth.rs index 478c1af..1ad5c57 100644 --- a/src/helix/namespaces/auth.rs +++ b/src/helix/namespaces/auth.rs @@ -1,9 +1,10 @@ use std::collections::BTreeMap; -use super::super::models::Credentials; +use crate::helix::models::Credentials; use super::super::Client; const ID_DOMAIN: &'static str = "id.twitch.tv"; use super::Namespace; -use super::super::ClientTrait; +use crate::client::{ClientTrait, ApiRequest}; +use reqwest::Method; pub struct Auth {} type AuthNamespace = Namespace; @@ -22,13 +23,11 @@ impl Client { } } -use super::super::ApiRequest; -use reqwest::Method; - //TODO: Implement scopes pub fn client_credentials(client: Client, secret: &str) -> ApiRequest { + let client = client.inner; let url = String::from("https://") + ID_DOMAIN + "/oauth2/token"; diff --git a/src/helix/namespaces/clips.rs b/src/helix/namespaces/clips.rs index a73d2e9..28b66f7 100644 --- a/src/helix/namespaces/clips.rs +++ b/src/helix/namespaces/clips.rs @@ -1,10 +1,10 @@ use std::collections::BTreeMap; use super::super::models::{DataContainer, Clip}; use super::super::Client; -use super::super::ClientTrait; -use super::super::RatelimitKey; use super::Namespace; +use crate::client::{RatelimitKey, ClientTrait, ApiRequest}; + pub struct Clips {} type ClipsNamespace = Namespace; @@ -22,12 +22,12 @@ impl Client { } } -use super::super::ApiRequest; use reqwest::Method; pub fn clip(client: Client, id: &str) -> ApiRequest> { + let client = client.inner; let url = String::from("https://") + client.domain() + "/helix/clips" + "?id=" + id; diff --git a/src/helix/namespaces/videos.rs b/src/helix/namespaces/videos.rs index 382c9ea..a8021f3 100644 --- a/src/helix/namespaces/videos.rs +++ b/src/helix/namespaces/videos.rs @@ -1,13 +1,12 @@ use super::super::models::{PaginationContainer, Video}; use super::super::Client; -use super::super::ClientTrait; -use super::super::RatelimitKey; -use super::super::IterableApiRequest; use super::Namespace; +use crate::client::{ClientTrait, RatelimitKey, IterableApiRequest}; use std::collections::BTreeMap; use reqwest::Method; + pub struct Videos {} type VideosNamespace = Namespace; @@ -40,6 +39,7 @@ impl Client { pub fn by_id(client: Client, ids: Vec<&str>) -> IterableApiRequest> { + let client = client.inner; let url = String::from("https://") + client.domain() + &String::from("/helix/videos"); @@ -54,6 +54,7 @@ pub fn by_id(client: Client, ids: Vec<&str>) pub fn by_user(client: Client, user_id: &str) -> IterableApiRequest> { + let client = client.inner; let url = String::from("https://") + client.domain() + &String::from("/helix/videos"); @@ -66,6 +67,7 @@ pub fn by_user(client: Client, user_id: &str) pub fn for_game(client: Client, game_id: &str) -> IterableApiRequest> { + let client = client.inner; let url = String::from("https://") + client.domain() + &String::from("/helix/videos"); -- cgit v1.2.3