jinxapi_github/v1_1_4/request/
migrations_get_commit_authors.rs1fn url_string(
11 base_url: &str,
12 p_owner: &str,
13 p_repo: &str,
14 q_since: ::std::option::Option<i64>,
15) -> Result<String, crate::v1_1_4::ApiError> {
16 let trimmed = if base_url.is_empty() {
17 "https://api.github.com"
18 } else {
19 base_url.trim_end_matches('/')
20 };
21 let mut url = String::with_capacity(trimmed.len() + 41);
22 url.push_str(trimmed);
23 url.push_str("/repos/");
24 ::querylizer::Simple::extend(&mut url, &p_owner, false, &::querylizer::encode_path)?;
25 url.push('/');
26 ::querylizer::Simple::extend(&mut url, &p_repo, false, &::querylizer::encode_path)?;
27 url.push_str("/import/authors");
28 if let Some(value) = &q_since {
29 url.push('?');
30 ::querylizer::Form::extend(&mut url, "since", value, false, &::querylizer::encode_query)?;
31 }
32 Ok(url)
33}
34
35#[cfg(feature = "hyper")]
36pub fn http_builder(
37 base_url: &str,
38 p_owner: &str,
39 p_repo: &str,
40 q_since: ::std::option::Option<i64>,
41 h_user_agent: &str,
42 h_accept: ::std::option::Option<&str>,
43) -> Result<::http::request::Builder, crate::v1_1_4::ApiError> {
44 let url = url_string(
45 base_url,
46 p_owner,
47 p_repo,
48 q_since,
49 )?;
50 let mut builder = ::http::request::Request::get(url);
51 builder = builder.header(
52 "User-Agent",
53 &::querylizer::Simple::to_string(&h_user_agent, false, &::querylizer::passthrough)?
54 );
55 if let Some(value) = &h_accept {
56 builder = builder.header(
57 "Accept",
58 &::querylizer::Simple::to_string(value, false, &::querylizer::passthrough)?
59 );
60 }
61 Ok(builder)
62}
63
64#[cfg(feature = "hyper")]
65#[inline]
66pub fn hyper_request(
67 builder: ::http::request::Builder,
68) -> Result<::http::request::Request<::hyper::Body>, crate::v1_1_4::ApiError> {
69 Ok(builder.body(::hyper::Body::empty())?)
70}
71
72#[cfg(feature = "reqwest")]
73pub fn reqwest_builder(
74 base_url: &str,
75 p_owner: &str,
76 p_repo: &str,
77 q_since: ::std::option::Option<i64>,
78 h_user_agent: &str,
79 h_accept: ::std::option::Option<&str>,
80) -> Result<::reqwest::Request, crate::v1_1_4::ApiError> {
81 let url = url_string(
82 base_url,
83 p_owner,
84 p_repo,
85 q_since,
86 )?;
87 let reqwest_url = ::reqwest::Url::parse(&url)?;
88 let mut request = ::reqwest::Request::new(::reqwest::Method::GET, reqwest_url);
89 let headers = request.headers_mut();
90 headers.append(
91 "User-Agent",
92 ::querylizer::Simple::to_string(&h_user_agent, false, &::querylizer::passthrough)?.try_into()?
93 );
94 if let Some(value) = &h_accept {
95 headers.append(
96 "Accept",
97 ::querylizer::Simple::to_string(value, false, &::querylizer::passthrough)?.try_into()?
98 );
99 }
100 Ok(request)
101}
102
103#[cfg(feature = "reqwest")]
104#[inline(always)]
105pub fn reqwest_request(
106 builder: ::reqwest::Request,
107) -> Result<::reqwest::Request, crate::v1_1_4::ApiError>
108{
109 Ok(builder)
110}
111
112#[cfg(feature = "reqwest-blocking")]
113pub fn reqwest_blocking_builder(
114 base_url: &str,
115 p_owner: &str,
116 p_repo: &str,
117 q_since: ::std::option::Option<i64>,
118 h_user_agent: &str,
119 h_accept: ::std::option::Option<&str>,
120) -> Result<::reqwest::blocking::Request, crate::v1_1_4::ApiError> {
121 let url = url_string(
122 base_url,
123 p_owner,
124 p_repo,
125 q_since,
126 )?;
127 let reqwest_url = ::reqwest::Url::parse(&url)?;
128 let mut request = ::reqwest::blocking::Request::new(::reqwest::Method::GET, reqwest_url);
129 let headers = request.headers_mut();
130 headers.append(
131 "User-Agent",
132 ::querylizer::Simple::to_string(&h_user_agent, false, &::querylizer::passthrough)?.try_into()?
133 );
134 if let Some(value) = &h_accept {
135 headers.append(
136 "Accept",
137 ::querylizer::Simple::to_string(value, false, &::querylizer::passthrough)?.try_into()?
138 );
139 }
140 Ok(request)
141}
142
143#[cfg(feature = "reqwest-blocking")]
144#[inline(always)]
145pub fn reqwest_blocking_request(
146 builder: ::reqwest::blocking::Request,
147) -> Result<::reqwest::blocking::Request, crate::v1_1_4::ApiError>
148{
149 Ok(builder)
150}