Mercurial > lbo > hg > async-google-apis
changeset 131:44f33160f884
generate: Update template to new Download API
author | Lewin Bormann <lbo@spheniscida.de> |
---|---|
date | Mon, 26 Oct 2020 10:44:52 +0100 |
parents | 3db9fcf07b0a |
children | f87d7be7c3d7 |
files | generate/generate.py generate/templates.py |
diffstat | 2 files changed, 11 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/generate/generate.py Mon Oct 26 10:44:34 2020 +0100 +++ b/generate/generate.py Mon Oct 26 10:44:52 2020 +0100 @@ -313,6 +313,7 @@ 'param_type': params_type_name, 'in_type': in_type, + 'download_in_type': in_type if in_type else 'EmptyRequest', 'out_type': out_type, 'base_path':
--- a/generate/templates.py Mon Oct 26 10:44:34 2020 +0100 +++ b/generate/templates.py Mon Oct 26 10:44:52 2020 +0100 @@ -146,7 +146,7 @@ let full_uri = path + &url_params; - let opt_request: Option<EmptyRequest> = None; + let opt_request: Option<&EmptyRequest> = None; {{#in_type}} let opt_request = Some(req); {{/in_type}} @@ -187,7 +187,7 @@ {{/global_params_name}} let full_uri = path + &url_params; - let opt_request: Option<EmptyRequest> = None; + let opt_request: Option<&EmptyRequest> = None; {{#in_type}} let opt_request = Some(req); {{/in_type}} @@ -232,7 +232,7 @@ let full_uri = path + &url_params; - let opt_request: Option<EmptyRequest> = None; + let opt_request: Option<&EmptyRequest> = None; {{#in_type}} let opt_request = Some(req); {{/in_type}} @@ -260,10 +260,9 @@ /// or a non-JSON type, the returned value indicates if a download took place or data was written to /// `dst`. If `dst` is `None` despite data being available for download, `ApiError::DataAvailableError` /// is returned. -pub async fn {{{name}}}( - &mut self, params: &{{{param_type}}}, {{#in_type}}req: &{{{in_type}}},{{/in_type}} - dst: Option<&mut (dyn tokio::io::AsyncWrite + std::marker::Unpin)>) - -> Result<DownloadResponse<{{out_type}}>> { +pub async fn {{{name}}}<'a>( + &'a mut self, params: &{{{param_type}}}, {{#in_type}}req: &'a {{{in_type}}}{{/in_type}}) + -> Result<Download<'a, {{{download_in_type}}}, {{{out_type}}}>> { let rel_path = {{{rel_path_expr}}}; let path = "{{{base_path}}}".to_string() + &rel_path; @@ -284,12 +283,13 @@ {{/global_params_name}} let full_uri = path + &url_params; - let opt_request: Option<EmptyRequest> = None; + let opt_request: Option<&EmptyRequest> = None; {{#in_type}} let opt_request = Some(req); {{/in_type}} - do_download(&self.client, &full_uri, &[(hyper::header::AUTHORIZATION, format!("Bearer {token}", token=tok.as_str()))], - "{{{http_method}}}", opt_request, dst).await + do_download(&self.client, &full_uri, + vec![(hyper::header::AUTHORIZATION, format!("Bearer {token}", token=tok.as_str()))], + "{{{http_method}}}".into(), opt_request).await } '''