@@ -26,7 +26,7 @@ using namespace {{modelNamespace}};
26
26
}
27
27
28
28
{ {#operation} }
29
- pplx::task<{ {#returnType} }{ {{returnType} }}{ {/returnType} }{ {^returnType} }void{ {/returnType} }> { {classname} }::{ {operationId} }({ {#allParams} }{ {^required} }boost::optional<{ {/required} }{ {#isFile } }std::shared_ptr< { {/isFile } } { {{ dataType} }} { {#isFile } }> { {/isFile } }{ {^required} }>{ {/required} } { {paramName} }{ {#hasMore} }, { {/hasMore} }{ {/allParams} }) const
29
+ pplx::task<{ {#returnType} }{ {{returnType} }}{ {/returnType} }{ {^returnType} }void{ {/returnType} }> { {classname} }::{ {operationId} }({ {#allParams} }{ {^required} }boost::optional<{ {/required} }{ {{ dataType} }}{ {^required} }>{ {/required} } { {paramName} }{ {#hasMore} }, { {/hasMore} }{ {/allParams} }) const
30
30
{
31
31
{{#allParams} }{ {#required} }{ {^isPrimitiveType} }{ {^isContainer} }
32
32
// verify the required parameter '{ {paramName} }' is set
@@ -160,13 +160,13 @@ pplx::task<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/r
160
160
web::json::value localVarJson;
161
161
162
162
{{#isPrimitiveType}}
163
- localVarJson = ModelBase::toJson({{paramName}});
163
+ localVarJson = ModelBase::toJson({{paramName}}{{^required}}.get(){{/required}} );
164
164
{{/isPrimitiveType}}
165
165
{{^isPrimitiveType}}
166
166
{{#isListContainer}}
167
167
{
168
168
std::vector<web::json::value> localVarJsonArray;
169
- for( auto& localVarItem : {{paramName}} )
169
+ for( auto& localVarItem : {{paramName}}{{^required}}.get(){{/required}} )
170
170
{
171
171
{{#items.isPrimitiveType}}localVarJsonArray.push_back(ModelBase::toJson(localVarItem));
172
172
{{/items.isPrimitiveType}}{{^items.isPrimitiveType}}{{#items.isString}}localVarJsonArray.push_back(ModelBase::toJson(localVarItem));
@@ -193,30 +193,32 @@ pplx::task<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/r
193
193
{{#bodyParam}}
194
194
std::shared_ptr<MultipartFormData> localVarMultipart(new MultipartFormData);
195
195
{{#isPrimitiveType}}
196
- localVarMultipart->add(ModelBase::toHttpContent(utility::conversions::to_string_t("{{paramName}}"), {{paramName}}));
197
- {{/isPrimitiveType}}
198
- {{^isPrimitiveType}}
199
- {{#isListContainer}}
196
+ localVarMultipart->add(ModelBase::toHttpContent(utility::conversions::to_string_t("{{paramName}}"), {{paramName}}{{^required}}.get(){{/required}}));
197
+ {{/isPrimitiveType}}{{^isPrimitiveType}}{{#isListContainer}}
200
198
{
201
199
std::vector<web::json::value> localVarJsonArray;
202
- for( auto& localVarItem : {{paramName}} )
200
+ for( auto& localVarItem : {{paramName}}{{^required}}.get(){{/required}} )
203
201
{
204
- {{#items.isPrimitiveType}}localVarJsonArray.push_back(ModelBase::toJson(localVarItem));
205
- {{/items.isPrimitiveType}}{{^items.isPrimitiveType}}{{#items.isString}}localVarJsonArray.push_back(ModelBase::toJson(localVarItem));
206
- {{/items.isString}}{{^items.isString}}{{#items.isDateTime}}localVarJsonArray.push_back(ModelBase::toJson(localVarItem));
207
- {{/items.isDateTime}}{{^items.isDateTime}}localVarJsonArray.push_back( localVarItem.get() ? localVarItem->toJson() : web::json::value::null() );
208
- {{/items.isDateTime}}{{/items.isString}}{{/items.isPrimitiveType}}
202
+ localVarJsonArray.push_back(ModelBase::toJson(localVarItem));
209
203
}
210
- localVarMultipart->add(ModelBase::toHttpContent(utility::conversions::to_string_t("{{paramName}}"), web::json::value::array(localVarJsonArray), utility::conversions::to_string_t("application/json")));
211
- }{{/isListContainer}}
212
- {{^isListContainer}}{{#isString}}localVarMultipart->add(ModelBase::toHttpContent(utility::conversions::to_string_t("{{paramName}}"), {{paramName}}));
204
+ localVarMultipart->add(ModelBase::toHttpContent(utility::conversions::to_string_t("{{paramName}}"), localVarJsonArray, utility::conversions::to_string_t("application/json")));
205
+ }{{/isListContainer}}{{#isMapContainer}}
206
+ {
207
+ std::map<utility::string_t, web::json::value> localVarJsonMap;
208
+ for( auto& localVarItem : {{paramName}}{{^required}}.get(){{/required}} )
209
+ {
210
+ web::json::value jval;
211
+ localVarJsonMap.insert( std::pair<utility::string_t, web::json::value>(localVarItem.first, ModelBase::toJson(localVarItem.second) ));
212
+ }
213
+ localVarMultipart->add(ModelBase::toHttpContent(utility::conversions::to_string_t("{{paramName}}"), localVarJsonMap, utility::conversions::to_string_t("application/json")));
214
+ }{{/isMapContainer}}
215
+ {{^isListContainer}}{{^isMapContainer}}{{#isString}}localVarMultipart->add(ModelBase::toHttpContent(utility::conversions::to_string_t("{{paramName}}"), {{paramName}}));
213
216
{{/isString}}{{^isString}}if({{^required}}{{paramName}} && (*{{paramName}}){{/required}}{{#required}}{{paramName}}{{/required}}.get())
214
217
{
215
218
{{^required}}(*{{/required}}{{paramName}}{{^required}}){{/required}}->toMultipart(localVarMultipart, utility::conversions::to_string_t("{{paramName}}"));
216
219
}
217
220
{{/isString}}
218
- {{/isListContainer}}
219
- {{/isPrimitiveType}}
221
+ {{/isMapContainer}}{{/isListContainer}}{{/isPrimitiveType}}
220
222
221
223
localVarHttpBody = localVarMultipart;
222
224
localVarRequestHttpContentType += utility::conversions::to_string_t("; boundary=") + localVarMultipart->getBoundary();
@@ -318,29 +320,20 @@ pplx::task<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/r
318
320
if(localVarResponseHttpContentType == utility::conversions::to_string_t("application/json"))
319
321
{
320
322
web::json::value localVarJson = web::json::value::parse(localVarResponse);
321
-
322
- {{#isListContainer}} for( auto& localVarItem : localVarJson.as_array() )
323
+ {{#isListContainer}}
324
+ for( auto& localVarItem : localVarJson.as_array() )
323
325
{
324
- {{#vendorExtensions.x-codegen-response.items.isPrimitiveType}}localVarResult.push_back(ModelBase::{{vendorExtensions.x-codegen-response.items.datatype}}FromJson(localVarItem));
325
- {{/vendorExtensions.x-codegen-response.items.isPrimitiveType}}{{^vendorExtensions.x-codegen-response.items.isPrimitiveType}}{{#vendorExtensions.x-codegen-response.items.isString}}localVarResult.push_back(ModelBase::stringFromJson(localVarItem));
326
- {{/vendorExtensions.x-codegen-response.items.isString}}{{^vendorExtensions.x-codegen-response.items.isString}}{{{vendorExtensions.x-codegen-response.items.datatype}}} localVarItemObj({{{vendorExtensions.x-codegen-response.items.defaultValue}}});
327
- localVarItemObj->fromJson(localVarItem);
326
+ {{{vendorExtensions.x-codegen-response.items.datatype}}} localVarItemObj;
327
+ ModelBase::fromJson(localVarItem, localVarItemObj);
328
328
localVarResult.push_back(localVarItemObj);
329
- {{/vendorExtensions.x-codegen-response.items.isString}}{{/vendorExtensions.x-codegen-response.items.isPrimitiveType}}
330
- }
331
- {{/isListContainer}}{{^isListContainer}}{{#isMapContainer}}for( auto& localVarItem : localVarJson.as_object() )
329
+ }{{/isListContainer}}{{#isMapContainer}}
330
+ for( auto& localVarItem : localVarJson.as_object() )
332
331
{
333
- {{#vendorExtensions.x-codegen-response.items.isPrimitiveType}}localVarResult[localVarItem.first] = ModelBase::{{vendorExtensions.x-codegen-response.items.datatype}}FromJson(localVarItem.second);
334
- {{/vendorExtensions.x-codegen-response.items.isPrimitiveType}}{{^vendorExtensions.x-codegen-response.items.isPrimitiveType}}{{#vendorExtensions.x-codegen-response.items.isString}}localVarResult[localVarItem.first] = ModelBase::stringFromJson(localVarItem.second);
335
- {{/vendorExtensions.x-codegen-response.items.isString}}{{^vendorExtensions.x-codegen-response.items.isString}}{{{vendorExtensions.x-codegen-response.items.datatype}}} localVarItemObj({{{vendorExtensions.x-codegen-response.items.defaultValue}}});
336
- localVarItemObj->fromJson(localVarItem.second);
332
+ {{{vendorExtensions.x-codegen-response.items.datatype}}} localVarItemObj;
333
+ ModelBase::fromJson(localVarItem.second, localVarItemObj);
337
334
localVarResult[localVarItem.first] = localVarItemObj;
338
- {{/vendorExtensions.x-codegen-response.items.isString}}{{/vendorExtensions.x-codegen-response.items.isPrimitiveType}}
339
- }
340
- {{/isMapContainer}}{{^isMapContainer}}{{#vendorExtensions.x-codegen-response.isPrimitiveType}}{{#vendorExtensions.x-codegen-response.items.datatype}}localVarResult = ModelBase::{{vendorExtensions.x-codegen-response.items.datatype}}FromJson(localVarJson);
341
- {{/vendorExtensions.x-codegen-response.items.datatype}}{{^vendorExtensions.x-codegen-response.items.datatype}}localVarResult = ModelBase::{{vendorExtensions.x-codegen-response.datatype}}FromJson(localVarJson);
342
- {{/vendorExtensions.x-codegen-response.items.datatype}}{{/vendorExtensions.x-codegen-response.isPrimitiveType}}{{^vendorExtensions.x-codegen-response.isPrimitiveType}}{{#vendorExtensions.x-codegen-response.isString}}localVarResult = ModelBase::stringFromJson(localVarJson);
343
- {{/vendorExtensions.x-codegen-response.isString}}{{^vendorExtensions.x-codegen-response.isString}}localVarResult->fromJson(localVarJson);{{/vendorExtensions.x-codegen-response.isString}}{{/vendorExtensions.x-codegen-response.isPrimitiveType}}{{/isMapContainer}}{{/isListContainer}}
335
+ }{{/isMapContainer}}{{^isListContainer}}{{^isMapContainer}}
336
+ ModelBase::fromJson(localVarJson, localVarResult);{{/isMapContainer}}{{/isListContainer}}
344
337
}{{#vendorExtensions.x-codegen-response.isString}}
345
338
else if(localVarResponseHttpContentType == utility::conversions::to_string_t("text/plain"))
346
339
{
0 commit comments