diff --git a/modules/swagger-codegen/src/main/resources/rust/api.mustache b/modules/swagger-codegen/src/main/resources/rust/api.mustache index 0c59f7b8f53..98c1b12551f 100644 --- a/modules/swagger-codegen/src/main/resources/rust/api.mustache +++ b/modules/swagger-codegen/src/main/resources/rust/api.mustache @@ -7,7 +7,7 @@ use serde_json; use futures; use futures::{Future, Stream}; -use super::{Error, configuration, models}; +use super::{Error, configuration}; pub struct {{{classname}}}Impl { configuration: Rc>, @@ -24,7 +24,7 @@ impl {{{classname}}}Impl { pub trait {{classname}} { {{#operations}} {{#operation}} - fn {{{operationId}}}(&self, {{#allParams}}{{paramName}}: {{{dataType}}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Box>; + fn {{{operationId}}}(&self, {{#allParams}}{{paramName}}: {{#isString}}&str{{/isString}}{{^isString}}{{{dataType}}}{{/isString}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Box>; {{/operation}} {{/operations}} } @@ -39,7 +39,7 @@ impl{{classname}} for {{classname}}Impl { let method = hyper::Method::{{httpMethod}}; {{^hasQueryParams}} - let uri = format!("{}{{{path}}}", configuration.base_path{{#allParams}}, "{{baseName}}"={{paramName}}{{/allParams}})); + let uri = format!("{}{{{path}}}", configuration.base_path{{#pathParams}}, {{baseName}}={{paramName}}{{/pathParams}}); {{/hasQueryParams}} {{#hasQueryParams}} let query = url::form_urlencoded::Serializer::new(String::new()) @@ -47,7 +47,7 @@ impl{{classname}} for {{classname}}Impl { .append_pair("{{baseName}}", {{paramName}}) {{/queryParams}} .finish(); - let uri = format!("{}{{{path}}}{}", configuration.base_path, query{{#allParams}}, "{{baseName}}"={{paramName}}{{/allParams}})); + let uri = format!("{}{{{path}}}{}", configuration.base_path, query{{#pathParams}}, {{baseName}}={{paramName}}{{/pathParams}}); {{/hasQueryParams}} let mut req = hyper::Request::new(method, uri); @@ -77,7 +77,7 @@ impl{{classname}} for {{classname}}Impl { {{/returnType}} {{#returnType}} .and_then(|body| { - let parsed: Result<{{returnType}}, _> = serde_json::from_slice(&body); + let parsed: Result<{{{returnType}}}, _> = serde_json::from_slice(&body); parsed.map_err(|e| Error::from(e)) }).map_err(|e| Error::from(e)) {{/returnType}} diff --git a/modules/swagger-codegen/src/main/resources/rust/api_mod.mustache b/modules/swagger-codegen/src/main/resources/rust/api_mod.mustache index 2516931e218..67ebae27b6d 100644 --- a/modules/swagger-codegen/src/main/resources/rust/api_mod.mustache +++ b/modules/swagger-codegen/src/main/resources/rust/api_mod.mustache @@ -19,7 +19,7 @@ impl From for Error { } } -use super::models; +use super::models::*; {{#apiInfo}} {{#apis}} diff --git a/modules/swagger-codegen/src/main/resources/rust/model.mustache b/modules/swagger-codegen/src/main/resources/rust/model.mustache index 2ccc54e9234..3fe6089cd63 100644 --- a/modules/swagger-codegen/src/main/resources/rust/model.mustache +++ b/modules/swagger-codegen/src/main/resources/rust/model.mustache @@ -22,7 +22,7 @@ impl {{classname}} { pub fn new({{#requiredVars}}{{name}}: {{{datatype}}}{{^-last}}, {{/-last}}{{/requiredVars}}) -> {{classname}} { {{classname}} { {{#vars}} - {{name}}: {{#required}}{{name}}{{/required}}{{^required}}{{#isListContainer}}None{{/isListContainer}}{{#isMapContainer}}Hash:new(){{/isMapContainer}}{{^isContainer}}None{{/isContainer}}{{/required}}{{#hasMore}},{{/hasMore}} + {{name}}: {{#required}}{{name}}{{/required}}{{^required}}{{#isListContainer}}None{{/isListContainer}}{{#isMapContainer}}HashMap::new(){{/isMapContainer}}{{^isContainer}}None{{/isContainer}}{{/required}}{{#hasMore}},{{/hasMore}} {{/vars}} } }