From a57fb0c7db860fddd81378fee246f9826cc2c1a7 Mon Sep 17 00:00:00 2001 From: Benjamin Gill Date: Thu, 7 Dec 2017 16:28:29 +0000 Subject: [PATCH] [rust-server] add license and description to Cargo.toml (#7080) * Move errant file to 'rust-server' Rust2 was the old name * Add license and description to Cargo.toml For rust-server, getting them from the swagger * Valid Java doesn't have uninitialised variables... * Default license to "Unlicense" * Set license to "Unlicense" for generated crates --- .../main/resources/rust-server/Cargo.mustache | 4 ++ ...er.java => RustServerOptionsProvider.java} | 4 +- .../server/petstore/rust-server/Cargo.toml | 2 + samples/server/petstore/rust-server/README.md | 2 +- .../petstore/rust-server/api/swagger.yaml | 62 +++++++++---------- .../petstore/rust-server/examples/client.rs | 2 +- .../rust-server/examples/server_lib/mod.rs | 2 +- .../server/petstore/rust-server/src/server.rs | 4 +- 8 files changed, 44 insertions(+), 38 deletions(-) rename modules/swagger-codegen/src/test/java/io/swagger/codegen/options/{Rust2OptionsProvider.java => RustServerOptionsProvider.java} (77%) diff --git a/modules/swagger-codegen/src/main/resources/rust-server/Cargo.mustache b/modules/swagger-codegen/src/main/resources/rust-server/Cargo.mustache index 8cab22ff513..344071baca7 100644 --- a/modules/swagger-codegen/src/main/resources/rust-server/Cargo.mustache +++ b/modules/swagger-codegen/src/main/resources/rust-server/Cargo.mustache @@ -2,6 +2,10 @@ name = "{{packageName}}" version = "{{appVersion}}" authors = [{{#infoEmail}}"{{infoEmail}}"{{/infoEmail}}] +{{#appDescription}} +description = "{{{appDescription}}}" +{{/appDescription}} +license = "Unlicense" [features] default = ["client", "server"] diff --git a/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/Rust2OptionsProvider.java b/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/RustServerOptionsProvider.java similarity index 77% rename from modules/swagger-codegen/src/test/java/io/swagger/codegen/options/Rust2OptionsProvider.java rename to modules/swagger-codegen/src/test/java/io/swagger/codegen/options/RustServerOptionsProvider.java index 68c0d94088d..a78cde26057 100644 --- a/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/Rust2OptionsProvider.java +++ b/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/RustServerOptionsProvider.java @@ -4,10 +4,10 @@ import com.google.common.collect.ImmutableMap; import java.util.Map; -public class Rust2OptionsProvider implements OptionsProvider { +public class RustServerOptionsProvider implements OptionsProvider { @Override public String getLanguage() { - return "rust2"; + return "rust-server"; } @Override diff --git a/samples/server/petstore/rust-server/Cargo.toml b/samples/server/petstore/rust-server/Cargo.toml index da42d20714b..6896d352e75 100644 --- a/samples/server/petstore/rust-server/Cargo.toml +++ b/samples/server/petstore/rust-server/Cargo.toml @@ -2,6 +2,8 @@ name = "petstore_api" version = "1.0.0" authors = ["apiteam@swagger.io"] +description = "This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\" +license = "Unlicense" [features] default = ["client", "server"] diff --git a/samples/server/petstore/rust-server/README.md b/samples/server/petstore/rust-server/README.md index 16cfa50d246..a660a9f9b38 100644 --- a/samples/server/petstore/rust-server/README.md +++ b/samples/server/petstore/rust-server/README.md @@ -13,7 +13,7 @@ To see how to make this your own, look here: [README](https://github.com/swagger-api/swagger-codegen/blob/master/README.md) - API version: 1.0.0 -- Build date: 2017-10-30T02:13:46.477Z +- Build date: 2017-11-30T15:18:45.444Z ## Examples diff --git a/samples/server/petstore/rust-server/api/swagger.yaml b/samples/server/petstore/rust-server/api/swagger.yaml index dd09ede7a54..d560546927d 100644 --- a/samples/server/petstore/rust-server/api/swagger.yaml +++ b/samples/server/petstore/rust-server/api/swagger.yaml @@ -139,11 +139,11 @@ paths: type: "array" items: type: "string" + default: "available" enum: - "available" - "pending" - "sold" - default: "available" collectionFormat: "csv" formatString: "{:?}" example: "&Vec::new()" @@ -893,10 +893,10 @@ paths: type: "array" items: type: "string" + default: "$" enum: - ">" - "$" - default: "$" formatString: "{:?}" example: "Some(&Vec::new())" - name: "enum_form_string" @@ -918,10 +918,10 @@ paths: type: "array" items: type: "string" + default: "$" enum: - ">" - "$" - default: "$" formatString: "{:?}" example: "Some(&Vec::new())" - name: "enum_header_string" @@ -943,10 +943,10 @@ paths: type: "array" items: type: "string" + default: "$" enum: - ">" - "$" - default: "$" formatString: "{:?}" example: "Some(&Vec::new())" - name: "enum_query_string" @@ -1047,7 +1047,7 @@ paths: maximum: 543.2 minimum: 32.1 formatString: "{}" - example: "3.4" + example: "8.14" - name: "float" in: "formData" description: "None" @@ -1089,8 +1089,8 @@ paths: required: true type: "string" format: "byte" - formatString: "\\\"{:?}\\\"" - example: "swagger::ByteArray(\"byte_example\".to_string().into_bytes())" + formatString: "{:?}" + example: "swagger::ByteArray(Vec::from(\"B\"))" - name: "binary" in: "formData" description: "None" @@ -1465,12 +1465,12 @@ definitions: type: "boolean" default: false example: - petId: 6 - quantity: 1 id: 0 - shipDate: "2000-01-23T04:56:07.000+00:00" + petId: 6 complete: false status: "placed" + quantity: 1 + shipDate: "2000-01-23T04:56:07.000+00:00" xml: name: "Order" upperCaseName: "ORDER" @@ -1483,8 +1483,8 @@ definitions: name: type: "string" example: - name: "name" id: 6 + name: "name" xml: name: "Category" upperCaseName: "CATEGORY" @@ -1512,14 +1512,14 @@ definitions: format: "int32" description: "User Status" example: - firstName: "firstName" - lastName: "lastName" - password: "password" - userStatus: 6 - phone: "phone" id: 0 - email: "email" + lastName: "lastName" + phone: "phone" username: "username" + email: "email" + userStatus: 6 + firstName: "firstName" + password: "password" xml: name: "User" upperCaseName: "USER" @@ -1532,8 +1532,8 @@ definitions: name: type: "string" example: - name: "name" id: 1 + name: "name" xml: name: "Tag" upperCaseName: "TAG" @@ -1574,20 +1574,20 @@ definitions: - "pending" - "sold" example: + tags: + - id: 1 + name: "name" + - id: 1 + name: "name" + id: 0 + category: + id: 6 + name: "name" + status: "available" + name: "doggie" photoUrls: - "photoUrls" - "photoUrls" - name: "doggie" - id: 0 - category: - name: "name" - id: 6 - tags: - - name: "name" - id: 1 - - name: "name" - id: 1 - status: "available" xml: name: "Pet" upperCaseName: "PET" @@ -1602,9 +1602,9 @@ definitions: message: type: "string" example: + message: "message" code: 0 type: "type" - message: "message" upperCaseName: "APIRESPONSE" $special[model.name]: properties: @@ -1957,8 +1957,8 @@ definitions: my_boolean: $ref: "#/definitions/OuterBoolean" example: - my_string: {} my_number: {} + my_string: {} my_boolean: {} upperCaseName: "OUTERCOMPOSITE" OuterNumber: diff --git a/samples/server/petstore/rust-server/examples/client.rs b/samples/server/petstore/rust-server/examples/client.rs index 42a24e44241..dde1265b213 100644 --- a/samples/server/petstore/rust-server/examples/client.rs +++ b/samples/server/petstore/rust-server/examples/client.rs @@ -129,7 +129,7 @@ fn main() { // }, Some("TestEndpointParameters") => { - let result = client.test_endpoint_parameters(3.4, 1.2, "pattern_without_delimiter_example".to_string(), swagger::ByteArray("byte_example".to_string().into_bytes()), Some(56), Some(56), Some(789), Some(3.4), Some("string_example".to_string()), Some(swagger::ByteArray(Vec::from("B"))), None, None, Some("password_example".to_string()), Some("callback_example".to_string())).wait(); + let result = client.test_endpoint_parameters(8.14, 1.2, "pattern_without_delimiter_example".to_string(), swagger::ByteArray(Vec::from("B")), Some(56), Some(56), Some(789), Some(3.4), Some("string_example".to_string()), Some(swagger::ByteArray(Vec::from("B"))), None, None, Some("password_example".to_string()), Some("callback_example".to_string())).wait(); println!("{:?} (X-Span-ID: {:?})", result, client.context().x_span_id.clone().unwrap_or(String::from(""))); }, diff --git a/samples/server/petstore/rust-server/examples/server_lib/mod.rs b/samples/server/petstore/rust-server/examples/server_lib/mod.rs index 6427d552390..bd4616950e5 100644 --- a/samples/server/petstore/rust-server/examples/server_lib/mod.rs +++ b/samples/server/petstore/rust-server/examples/server_lib/mod.rs @@ -95,7 +95,7 @@ impl Api for Server { /// Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 fn test_endpoint_parameters(&self, number: f64, double: f64, pattern_without_delimiter: String, byte: swagger::ByteArray, integer: Option, int32: Option, int64: Option, float: Option, string: Option, binary: Option, date: Option>, date_time: Option>, password: Option, callback: Option, context: &Context) -> Box + Send> { let context = context.clone(); - println!("test_endpoint_parameters({}, {}, \"{}\", \"{:?}\", {:?}, {:?}, {:?}, {:?}, {:?}, {:?}, {:?}, {:?}, {:?}, {:?}) - X-Span-ID: {:?}", number, double, pattern_without_delimiter, byte, integer, int32, int64, float, string, binary, date, date_time, password, callback, context.x_span_id.unwrap_or(String::from("")).clone()); + println!("test_endpoint_parameters({}, {}, \"{}\", {:?}, {:?}, {:?}, {:?}, {:?}, {:?}, {:?}, {:?}, {:?}, {:?}, {:?}) - X-Span-ID: {:?}", number, double, pattern_without_delimiter, byte, integer, int32, int64, float, string, binary, date, date_time, password, callback, context.x_span_id.unwrap_or(String::from("")).clone()); Box::new(futures::failed("Generic failure".into())) } diff --git a/samples/server/petstore/rust-server/src/server.rs b/samples/server/petstore/rust-server/src/server.rs index db24dfa2263..2adfcb01b22 100644 --- a/samples/server/petstore/rust-server/src/server.rs +++ b/samples/server/petstore/rust-server/src/server.rs @@ -535,10 +535,10 @@ fn add_routes(router: &mut Router, api: T) where T: Api + Send + Sync + Clone // Form parameters - let param_number = 3.4; + let param_number = 8.14; let param_double = 1.2; let param_pattern_without_delimiter = "pattern_without_delimiter_example".to_string(); - let param_byte = swagger::ByteArray("byte_example".to_string().into_bytes()); + let param_byte = swagger::ByteArray(Vec::from("B")); let param_integer = Some(56); let param_int32 = Some(56); let param_int64 = Some(789);