@@ -80,22 +80,7 @@ def sanitize_for_serialization(self, obj):
8080 return {key : self .sanitize_for_serialization (val )
8181 for key , val in six .iteritems (obj_dict )}
8282
83- def deserialize (self , response , response_type ):
84- """Deserializes response into an object.
85-
86- :param response: RESTResponse object to be deserialized.
87- :param response_type: class literal for
88- deserialized object, or string of class name.
89-
90- :return: deserialized object.
91- """
92- try :
93- data = json .loads (response .data )
94- except ValueError :
95- data = response .data
96- return self .__deserialize (data , response_type )
97-
98- def __deserialize (self , data , klass ):
83+ def deserialize_raw (self , data , klass ):
9984 """Deserializes dict, list, str into an object.
10085
10186 :param data: dict, list or str.
@@ -109,12 +94,12 @@ def __deserialize(self, data, klass):
10994 if type (klass ) == str :
11095 if klass .startswith ('list[' ):
11196 sub_kls = re .match (r'list\[(.*)\]' , klass ).group (1 )
112- return [self .__deserialize (sub_data , sub_kls )
97+ return [self .deserialize_raw (sub_data , sub_kls )
11398 for sub_data in data ]
11499
115100 if klass .startswith ('dict(' ):
116101 sub_kls = re .match (r'dict\(([^,]*), (.*)\)' , klass ).group (2 )
117- return {k : self .__deserialize (v , sub_kls )
102+ return {k : self .deserialize_raw (v , sub_kls )
118103 for k , v in six .iteritems (data )}
119104
120105 # convert str to class
@@ -221,14 +206,14 @@ def __deserialize_model(self, data, klass):
221206 for attr , attr_type in six .iteritems (klass .openapi_types ):
222207 if klass .attribute_map [attr ] in data :
223208 value = data [klass .attribute_map [attr ]]
224- kwargs [attr ] = self .__deserialize (value , attr_type )
209+ kwargs [attr ] = self .deserialize_raw (value , attr_type )
225210
226211 instance = klass (** kwargs )
227212
228213 if has_discriminator :
229214 klass_name = instance .get_real_child_model (data )
230215 if klass_name :
231- instance = self .__deserialize (data , klass_name )
216+ instance = self .deserialize_raw (data , klass_name )
232217 return instance
233218
234219
@@ -411,6 +396,21 @@ def __call_api(
411396 return (return_data , response_data .status ,
412397 response_data .getheaders ())
413398
399+ def deserialize (self , response , response_type ):
400+ """Deserializes response into an object.
401+
402+ :param response: RESTResponse object to be deserialized.
403+ :param response_type: class literal for
404+ deserialized object, or string of class name.
405+
406+ :return: deserialized object.
407+ """
408+ try :
409+ data = json .loads (response .data )
410+ except ValueError :
411+ data = response .data
412+ return self .deserialize_raw (data , response_type )
413+
414414 def call_api (self , resource_path , method ,
415415 path_params = None , query_params = None , header_params = None ,
416416 body = None , post_params = None , files = None ,
0 commit comments