From 27be0ed197e6340e4e5161d1f9f68b79e9a02340 Mon Sep 17 00:00:00 2001 From: Simon Morris Date: Sat, 22 Oct 2016 07:53:56 -0700 Subject: [PATCH] fix NancyFX string parser (#4048) * fix NancyFX string parser parser needs to access the Value parameter to enable the direct cast at line 102 when handling string parameters * Updated nancyfx sample --- .../src/main/resources/nancyfx/parameters.mustache | 4 ++-- samples/server/petstore/nancyfx/IO.Swagger.sln | 10 +++++----- .../petstore/nancyfx/src/IO.Swagger/IO.Swagger.csproj | 2 +- .../nancyfx/src/IO.Swagger/Models/ApiResponse.cs | 2 +- .../petstore/nancyfx/src/IO.Swagger/Models/Category.cs | 2 +- .../petstore/nancyfx/src/IO.Swagger/Models/Order.cs | 2 +- .../petstore/nancyfx/src/IO.Swagger/Models/Pet.cs | 2 +- .../petstore/nancyfx/src/IO.Swagger/Models/Tag.cs | 2 +- .../petstore/nancyfx/src/IO.Swagger/Models/User.cs | 2 +- .../nancyfx/src/IO.Swagger/Utils/Parameters.cs | 4 ++-- 10 files changed, 16 insertions(+), 16 deletions(-) diff --git a/modules/swagger-codegen/src/main/resources/nancyfx/parameters.mustache b/modules/swagger-codegen/src/main/resources/nancyfx/parameters.mustache index f9a55ba2b77..e55a82416ec 100644 --- a/modules/swagger-codegen/src/main/resources/nancyfx/parameters.mustache +++ b/modules/swagger-codegen/src/main/resources/nancyfx/parameters.mustache @@ -134,7 +134,7 @@ namespace {{packageName}}.{{packageContext}}.Utils private static IDictionary> CreateParsers() { var parsers = ImmutableDictionary.CreateBuilder>(); - parsers.Put(typeof(string), value => value); + parsers.Put(typeof(string), value => value.Value); parsers.Put(typeof(bool), SafeParse(bool.Parse)); parsers.Put(typeof(bool?), SafeParse(bool.Parse)); parsers.Put(typeof(byte), SafeParse(byte.Parse)); @@ -411,4 +411,4 @@ namespace {{packageName}}.{{packageContext}}.Utils Path, Header } -} \ No newline at end of file +} diff --git a/samples/server/petstore/nancyfx/IO.Swagger.sln b/samples/server/petstore/nancyfx/IO.Swagger.sln index 0a38b2ea778..46c91d37d01 100644 --- a/samples/server/petstore/nancyfx/IO.Swagger.sln +++ b/samples/server/petstore/nancyfx/IO.Swagger.sln @@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2012 VisualStudioVersion = 12.0.0.0 MinimumVisualStudioVersion = 10.0.0.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IO.Swagger", "src\IO.Swagger\IO.Swagger.csproj", "{D198220E-91F6-402F-966F-8EF6105B1B75}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IO.Swagger", "src\IO.Swagger\IO.Swagger.csproj", "{1CE943E7-586D-4D9C-BE8B-3E005FDC39D1}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -10,10 +10,10 @@ Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution -{D198220E-91F6-402F-966F-8EF6105B1B75}.Debug|Any CPU.ActiveCfg = Debug|Any CPU -{D198220E-91F6-402F-966F-8EF6105B1B75}.Debug|Any CPU.Build.0 = Debug|Any CPU -{D198220E-91F6-402F-966F-8EF6105B1B75}.Release|Any CPU.ActiveCfg = Release|Any CPU -{D198220E-91F6-402F-966F-8EF6105B1B75}.Release|Any CPU.Build.0 = Release|Any CPU +{1CE943E7-586D-4D9C-BE8B-3E005FDC39D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU +{1CE943E7-586D-4D9C-BE8B-3E005FDC39D1}.Debug|Any CPU.Build.0 = Debug|Any CPU +{1CE943E7-586D-4D9C-BE8B-3E005FDC39D1}.Release|Any CPU.ActiveCfg = Release|Any CPU +{1CE943E7-586D-4D9C-BE8B-3E005FDC39D1}.Release|Any CPU.Build.0 = Release|Any CPU {19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.Build.0 = Debug|Any CPU {19F1DEBC-DE5E-4517-8062-F000CD499087}.Release|Any CPU.ActiveCfg = Release|Any CPU diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/IO.Swagger.csproj b/samples/server/petstore/nancyfx/src/IO.Swagger/IO.Swagger.csproj index 1d18142a14a..4c1283eae38 100644 --- a/samples/server/petstore/nancyfx/src/IO.Swagger/IO.Swagger.csproj +++ b/samples/server/petstore/nancyfx/src/IO.Swagger/IO.Swagger.csproj @@ -3,7 +3,7 @@ Debug AnyCPU - {D198220E-91F6-402F-966F-8EF6105B1B75} + {1CE943E7-586D-4D9C-BE8B-3E005FDC39D1} Library Properties IO.Swagger.v2 diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/ApiResponse.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/ApiResponse.cs index 8eb40938412..3b8ad566af8 100644 --- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/ApiResponse.cs +++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/ApiResponse.cs @@ -8,7 +8,7 @@ using NodaTime; namespace IO.Swagger.v2.Models { /// - /// ApiResponse + /// Describes the result of uploading an image resource /// public sealed class ApiResponse: IEquatable { diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Category.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Category.cs index 759bedd74a9..c6089446e51 100644 --- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Category.cs +++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Category.cs @@ -8,7 +8,7 @@ using NodaTime; namespace IO.Swagger.v2.Models { /// - /// Category + /// A category for a pet /// public sealed class Category: IEquatable { diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Order.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Order.cs index 7404b483830..f1f94f39d77 100644 --- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Order.cs +++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Order.cs @@ -8,7 +8,7 @@ using NodaTime; namespace IO.Swagger.v2.Models { /// - /// Order + /// An order for a pets from the pet store /// public sealed class Order: IEquatable { diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Pet.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Pet.cs index aef03f6ba97..b092feb9e85 100644 --- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Pet.cs +++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Pet.cs @@ -8,7 +8,7 @@ using NodaTime; namespace IO.Swagger.v2.Models { /// - /// Pet + /// A pet for sale in the pet store /// public sealed class Pet: IEquatable { diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Tag.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Tag.cs index 36fd8204a8a..94b15c123a1 100644 --- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Tag.cs +++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/Tag.cs @@ -8,7 +8,7 @@ using NodaTime; namespace IO.Swagger.v2.Models { /// - /// Tag + /// A tag for a pet /// public sealed class Tag: IEquatable { diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/User.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/User.cs index 69d079ff42d..bd720290ad4 100644 --- a/samples/server/petstore/nancyfx/src/IO.Swagger/Models/User.cs +++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Models/User.cs @@ -8,7 +8,7 @@ using NodaTime; namespace IO.Swagger.v2.Models { /// - /// User + /// A User who is purchasing from the pet store /// public sealed class User: IEquatable { diff --git a/samples/server/petstore/nancyfx/src/IO.Swagger/Utils/Parameters.cs b/samples/server/petstore/nancyfx/src/IO.Swagger/Utils/Parameters.cs index 954683f095f..7f0e848f98a 100644 --- a/samples/server/petstore/nancyfx/src/IO.Swagger/Utils/Parameters.cs +++ b/samples/server/petstore/nancyfx/src/IO.Swagger/Utils/Parameters.cs @@ -134,7 +134,7 @@ namespace IO.Swagger.v2.Utils private static IDictionary> CreateParsers() { var parsers = ImmutableDictionary.CreateBuilder>(); - parsers.Put(typeof(string), value => value); + parsers.Put(typeof(string), value => value.Value); parsers.Put(typeof(bool), SafeParse(bool.Parse)); parsers.Put(typeof(bool?), SafeParse(bool.Parse)); parsers.Put(typeof(byte), SafeParse(byte.Parse)); @@ -411,4 +411,4 @@ namespace IO.Swagger.v2.Utils Path, Header } -} \ No newline at end of file +}