From ab39eff8a1e79f4c6c18e808491566e229a55fa4 Mon Sep 17 00:00:00 2001 From: Matan Goldman Date: Sun, 7 Feb 2016 13:11:28 +0200 Subject: [PATCH 1/3] Add additionalProperties handling in python code genrator by adding dictionary handling in model's to_dict() method --- .../src/main/resources/python/model.mustache | 9 +++++++-- .../petstore/python/swagger_client/models/category.py | 9 +++++++-- .../petstore/python/swagger_client/models/order.py | 9 +++++++-- .../client/petstore/python/swagger_client/models/pet.py | 9 +++++++-- .../client/petstore/python/swagger_client/models/tag.py | 9 +++++++-- .../client/petstore/python/swagger_client/models/user.py | 9 +++++++-- 6 files changed, 42 insertions(+), 12 deletions(-) diff --git a/modules/swagger-codegen/src/main/resources/python/model.mustache b/modules/swagger-codegen/src/main/resources/python/model.mustache index 105eefec095..3669a4750b9 100644 --- a/modules/swagger-codegen/src/main/resources/python/model.mustache +++ b/modules/swagger-codegen/src/main/resources/python/model.mustache @@ -95,6 +95,11 @@ class {{classname}}(object): lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value )) + elif isinstance(value, dict): + result[attr] = dict(map( + lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + value.iteritems() + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: @@ -114,14 +119,14 @@ class {{classname}}(object): """ return self.to_str() - def __eq__(self, other): + def __eq__(self, other): """ Returns true if both objects are equal """ return self.__dict__ == other.__dict__ def __ne__(self, other): - """ + """ Returns true if both objects are not equal """ return not self == other diff --git a/samples/client/petstore/python/swagger_client/models/category.py b/samples/client/petstore/python/swagger_client/models/category.py index d5156eee4ff..28257570fec 100644 --- a/samples/client/petstore/python/swagger_client/models/category.py +++ b/samples/client/petstore/python/swagger_client/models/category.py @@ -106,6 +106,11 @@ def to_dict(self): lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value )) + elif isinstance(value, dict): + result[attr] = dict(map( + lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + value.iteritems() + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: @@ -125,14 +130,14 @@ def __repr__(self): """ return self.to_str() - def __eq__(self, other): + def __eq__(self, other): """ Returns true if both objects are equal """ return self.__dict__ == other.__dict__ def __ne__(self, other): - """ + """ Returns true if both objects are not equal """ return not self == other diff --git a/samples/client/petstore/python/swagger_client/models/order.py b/samples/client/petstore/python/swagger_client/models/order.py index 93126d98a86..2b5ab1020fe 100644 --- a/samples/client/petstore/python/swagger_client/models/order.py +++ b/samples/client/petstore/python/swagger_client/models/order.py @@ -212,6 +212,11 @@ def to_dict(self): lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value )) + elif isinstance(value, dict): + result[attr] = dict(map( + lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + value.iteritems() + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: @@ -231,14 +236,14 @@ def __repr__(self): """ return self.to_str() - def __eq__(self, other): + def __eq__(self, other): """ Returns true if both objects are equal """ return self.__dict__ == other.__dict__ def __ne__(self, other): - """ + """ Returns true if both objects are not equal """ return not self == other diff --git a/samples/client/petstore/python/swagger_client/models/pet.py b/samples/client/petstore/python/swagger_client/models/pet.py index d7c425e3e0e..e18c803b98d 100644 --- a/samples/client/petstore/python/swagger_client/models/pet.py +++ b/samples/client/petstore/python/swagger_client/models/pet.py @@ -212,6 +212,11 @@ def to_dict(self): lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value )) + elif isinstance(value, dict): + result[attr] = dict(map( + lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + value.iteritems() + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: @@ -231,14 +236,14 @@ def __repr__(self): """ return self.to_str() - def __eq__(self, other): + def __eq__(self, other): """ Returns true if both objects are equal """ return self.__dict__ == other.__dict__ def __ne__(self, other): - """ + """ Returns true if both objects are not equal """ return not self == other diff --git a/samples/client/petstore/python/swagger_client/models/tag.py b/samples/client/petstore/python/swagger_client/models/tag.py index 81d27fa5e63..9de614f24b3 100644 --- a/samples/client/petstore/python/swagger_client/models/tag.py +++ b/samples/client/petstore/python/swagger_client/models/tag.py @@ -106,6 +106,11 @@ def to_dict(self): lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value )) + elif isinstance(value, dict): + result[attr] = dict(map( + lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + value.iteritems() + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: @@ -125,14 +130,14 @@ def __repr__(self): """ return self.to_str() - def __eq__(self, other): + def __eq__(self, other): """ Returns true if both objects are equal """ return self.__dict__ == other.__dict__ def __ne__(self, other): - """ + """ Returns true if both objects are not equal """ return not self == other diff --git a/samples/client/petstore/python/swagger_client/models/user.py b/samples/client/petstore/python/swagger_client/models/user.py index 6af36592c02..c862aa070b5 100644 --- a/samples/client/petstore/python/swagger_client/models/user.py +++ b/samples/client/petstore/python/swagger_client/models/user.py @@ -256,6 +256,11 @@ def to_dict(self): lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value )) + elif isinstance(value, dict): + result[attr] = dict(map( + lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + value.iteritems() + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: @@ -275,14 +280,14 @@ def __repr__(self): """ return self.to_str() - def __eq__(self, other): + def __eq__(self, other): """ Returns true if both objects are equal """ return self.__dict__ == other.__dict__ def __ne__(self, other): - """ + """ Returns true if both objects are not equal """ return not self == other From ec4c5502f147619a96d205d3397da1c94a25fca3 Mon Sep 17 00:00:00 2001 From: Matan Goldman Date: Sun, 7 Feb 2016 14:21:31 +0200 Subject: [PATCH 2/3] fix identation --- .../swagger-codegen/src/main/resources/python/model.mustache | 2 +- .../client/petstore/python/swagger_client/models/category.py | 2 +- samples/client/petstore/python/swagger_client/models/order.py | 2 +- samples/client/petstore/python/swagger_client/models/pet.py | 2 +- samples/client/petstore/python/swagger_client/models/tag.py | 2 +- samples/client/petstore/python/swagger_client/models/user.py | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/modules/swagger-codegen/src/main/resources/python/model.mustache b/modules/swagger-codegen/src/main/resources/python/model.mustache index 3669a4750b9..7807d300c9f 100644 --- a/modules/swagger-codegen/src/main/resources/python/model.mustache +++ b/modules/swagger-codegen/src/main/resources/python/model.mustache @@ -99,7 +99,7 @@ class {{classname}}(object): result[attr] = dict(map( lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() - )) + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: diff --git a/samples/client/petstore/python/swagger_client/models/category.py b/samples/client/petstore/python/swagger_client/models/category.py index 28257570fec..08fff86fbaa 100644 --- a/samples/client/petstore/python/swagger_client/models/category.py +++ b/samples/client/petstore/python/swagger_client/models/category.py @@ -110,7 +110,7 @@ def to_dict(self): result[attr] = dict(map( lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() - )) + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: diff --git a/samples/client/petstore/python/swagger_client/models/order.py b/samples/client/petstore/python/swagger_client/models/order.py index 2b5ab1020fe..ebf7c833a0b 100644 --- a/samples/client/petstore/python/swagger_client/models/order.py +++ b/samples/client/petstore/python/swagger_client/models/order.py @@ -216,7 +216,7 @@ def to_dict(self): result[attr] = dict(map( lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() - )) + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: diff --git a/samples/client/petstore/python/swagger_client/models/pet.py b/samples/client/petstore/python/swagger_client/models/pet.py index e18c803b98d..15eecdba32c 100644 --- a/samples/client/petstore/python/swagger_client/models/pet.py +++ b/samples/client/petstore/python/swagger_client/models/pet.py @@ -216,7 +216,7 @@ def to_dict(self): result[attr] = dict(map( lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() - )) + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: diff --git a/samples/client/petstore/python/swagger_client/models/tag.py b/samples/client/petstore/python/swagger_client/models/tag.py index 9de614f24b3..9f8953d042e 100644 --- a/samples/client/petstore/python/swagger_client/models/tag.py +++ b/samples/client/petstore/python/swagger_client/models/tag.py @@ -110,7 +110,7 @@ def to_dict(self): result[attr] = dict(map( lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() - )) + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: diff --git a/samples/client/petstore/python/swagger_client/models/user.py b/samples/client/petstore/python/swagger_client/models/user.py index c862aa070b5..e73c4a36eb9 100644 --- a/samples/client/petstore/python/swagger_client/models/user.py +++ b/samples/client/petstore/python/swagger_client/models/user.py @@ -260,7 +260,7 @@ def to_dict(self): result[attr] = dict(map( lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() - )) + )) elif hasattr(value, "to_dict"): result[attr] = value.to_dict() else: From 32d2a4d4cb9438d7d92b05f800653eb195066e73 Mon Sep 17 00:00:00 2001 From: Matan Goldman Date: Sun, 7 Feb 2016 16:23:12 +0200 Subject: [PATCH 3/3] fix python 3.4 compatabilty --- .../swagger-codegen/src/main/resources/python/model.mustache | 2 +- .../client/petstore/python/swagger_client/models/category.py | 2 +- samples/client/petstore/python/swagger_client/models/order.py | 2 +- samples/client/petstore/python/swagger_client/models/pet.py | 2 +- samples/client/petstore/python/swagger_client/models/tag.py | 2 +- samples/client/petstore/python/swagger_client/models/user.py | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/modules/swagger-codegen/src/main/resources/python/model.mustache b/modules/swagger-codegen/src/main/resources/python/model.mustache index 7807d300c9f..d7c3493d9da 100644 --- a/modules/swagger-codegen/src/main/resources/python/model.mustache +++ b/modules/swagger-codegen/src/main/resources/python/model.mustache @@ -97,7 +97,7 @@ class {{classname}}(object): )) elif isinstance(value, dict): result[attr] = dict(map( - lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + lambda k, v: (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() )) elif hasattr(value, "to_dict"): diff --git a/samples/client/petstore/python/swagger_client/models/category.py b/samples/client/petstore/python/swagger_client/models/category.py index 08fff86fbaa..59970e0bc3f 100644 --- a/samples/client/petstore/python/swagger_client/models/category.py +++ b/samples/client/petstore/python/swagger_client/models/category.py @@ -108,7 +108,7 @@ def to_dict(self): )) elif isinstance(value, dict): result[attr] = dict(map( - lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + lambda k, v: (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() )) elif hasattr(value, "to_dict"): diff --git a/samples/client/petstore/python/swagger_client/models/order.py b/samples/client/petstore/python/swagger_client/models/order.py index ebf7c833a0b..488f01f05ba 100644 --- a/samples/client/petstore/python/swagger_client/models/order.py +++ b/samples/client/petstore/python/swagger_client/models/order.py @@ -214,7 +214,7 @@ def to_dict(self): )) elif isinstance(value, dict): result[attr] = dict(map( - lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + lambda k, v: (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() )) elif hasattr(value, "to_dict"): diff --git a/samples/client/petstore/python/swagger_client/models/pet.py b/samples/client/petstore/python/swagger_client/models/pet.py index 15eecdba32c..94ca2249c0a 100644 --- a/samples/client/petstore/python/swagger_client/models/pet.py +++ b/samples/client/petstore/python/swagger_client/models/pet.py @@ -214,7 +214,7 @@ def to_dict(self): )) elif isinstance(value, dict): result[attr] = dict(map( - lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + lambda k, v: (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() )) elif hasattr(value, "to_dict"): diff --git a/samples/client/petstore/python/swagger_client/models/tag.py b/samples/client/petstore/python/swagger_client/models/tag.py index 9f8953d042e..4deced8a351 100644 --- a/samples/client/petstore/python/swagger_client/models/tag.py +++ b/samples/client/petstore/python/swagger_client/models/tag.py @@ -108,7 +108,7 @@ def to_dict(self): )) elif isinstance(value, dict): result[attr] = dict(map( - lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + lambda k, v: (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() )) elif hasattr(value, "to_dict"): diff --git a/samples/client/petstore/python/swagger_client/models/user.py b/samples/client/petstore/python/swagger_client/models/user.py index e73c4a36eb9..f8c1012842a 100644 --- a/samples/client/petstore/python/swagger_client/models/user.py +++ b/samples/client/petstore/python/swagger_client/models/user.py @@ -258,7 +258,7 @@ def to_dict(self): )) elif isinstance(value, dict): result[attr] = dict(map( - lambda (k, v): (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), + lambda k, v: (k, v.to_dict()) if hasattr(v, "to_dict") else (k, v), value.iteritems() )) elif hasattr(value, "to_dict"):