use std::collections::HashMap;
use reqwest::blocking::Response;
use crate::enumeration::HttpMethodType;
use crate::enumeration::HttpMethodType::HttpMethodGet;
#[derive(Debug, Clone, PartialEq)]
pub(crate) struct HttpRequest<'a, B> {
pub(crate) operation: &'a str,
pub(crate) method: HttpMethodType,
pub(crate) bucket: &'a str,
pub(crate) key: &'a str,
pub(crate) header: HashMap<&'a str, String>,
pub(crate) query: Option<HashMap<&'a str, String>>,
pub(crate) meta: Option<HashMap<String, String>>,
pub(crate) body: Option<B>,
pub(crate) retry_count: isize,
}
impl<'a, B> Default for HttpRequest<'a, B> {
fn default() -> Self {
HttpRequest {
operation: "Default",
method: HttpMethodGet,
bucket: "",
key: "",
header: HashMap::with_capacity(8),
query: None,
meta: None,
body: None,
retry_count: 0,
}
}
}
pub(crate) type HttpResponse = Response;