Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix multipart form data serialization
  • Loading branch information
zbarbuto committed Aug 12, 2021
commit 744a0e5dbae9099a39dcc131df535b1870b41ae0
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ class {{classname}} {

try {
{{#useBuiltValue}}{{>serialization/built_value/serialize}}{{/useBuiltValue}}
{{#useJsonSerializable}}{{#bodyParam}}_bodyData=jsonEncode({{{paramName}}});{{/bodyParam}}{{/useJsonSerializable}}
{{#useJsonSerializable}}{{>serialization/json_serializable/serialize}}{{/useJsonSerializable}}
} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{{#bodyParam}}
{{#isPrimitiveType}}
_bodyData = {{paramName}};
{{/isPrimitiveType}}
{{^isPrimitiveType}}
_bodyData=jsonEncode({{{paramName}}});
{{/isPrimitiveType}}
{{/bodyParam}}
{{^bodyParam}}
{{#hasFormParams}}
_bodyData = {{#isMultipart}}FormData.fromMap({{/isMultipart}}<String, dynamic>{
{{#formParams}}
{{^required}}{{^nullable}}if ({{{paramName}}} != null) {{/nullable}}{{/required}}r'{{{baseName}}}': {{#isFile}}{{{paramName}}}{{/isFile}}{{^isFile}} {{#isPrimitiveType}}{{{paramName}}}{{/isPrimitiveType}}{{^isPrimitiveType}}jsonEncode({{{paramName}}}){{/isPrimitiveType}} {{/isFile}},
{{/formParams}}
}{{#isMultipart}}){{/isMultipart}};
{{/hasFormParams}}
{{/bodyParam}}
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.gitignore
.openapi-generator-ignore
README.md
analysis_options.yaml
build.yaml
Expand Down Expand Up @@ -116,3 +117,56 @@ lib/src/model/special_model_name.dart
lib/src/model/tag.dart
lib/src/model/user.dart
pubspec.yaml
test/additional_properties_class_test.dart
test/animal_test.dart
test/another_fake_api_test.dart
test/api_response_test.dart
test/array_of_array_of_number_only_test.dart
test/array_of_number_only_test.dart
test/array_test_test.dart
test/capitalization_test.dart
test/cat_all_of_test.dart
test/cat_test.dart
test/category_test.dart
test/class_model_test.dart
test/client_test.dart
test/default_api_test.dart
test/deprecated_object_test.dart
test/dog_all_of_test.dart
test/dog_test.dart
test/enum_arrays_test.dart
test/enum_class_test.dart
test/enum_test_test.dart
test/fake_api_test.dart
test/fake_classname_tags123_api_test.dart
test/file_schema_test_class_test.dart
test/file_test.dart
test/foo_test.dart
test/format_test_test.dart
test/has_only_read_only_test.dart
test/health_check_result_test.dart
test/inline_response_default_test.dart
test/map_test_test.dart
test/mixed_properties_and_additional_properties_class_test.dart
test/model200_response_test.dart
test/model_list_test.dart
test/model_return_test.dart
test/name_test.dart
test/nullable_class_test.dart
test/number_only_test.dart
test/object_with_deprecated_fields_test.dart
test/order_test.dart
test/outer_composite_test.dart
test/outer_enum_default_value_test.dart
test/outer_enum_integer_default_value_test.dart
test/outer_enum_integer_test.dart
test/outer_enum_test.dart
test/outer_object_with_enum_property_test.dart
test/pet_api_test.dart
test/pet_test.dart
test/read_only_first_test.dart
test/special_model_name_test.dart
test/store_api_test.dart
test/tag_test.dart
test/user_api_test.dart
test/user_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ class AnotherFakeApi {
try {

_bodyData=jsonEncode(client);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ _responseData = deserialize<HealthCheckResult, HealthCheckResult>(_response.data
try {

_bodyData=jsonEncode(pet);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -212,7 +213,8 @@ _bodyData=jsonEncode(pet);

try {

_bodyData=jsonEncode(body);
_bodyData = body;

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -301,6 +303,7 @@ _responseData = deserialize<bool, bool>(_response.data!, 'bool', growable: true)
try {

_bodyData=jsonEncode(outerComposite);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -388,7 +391,8 @@ _responseData = deserialize<OuterComposite, OuterComposite>(_response.data!, 'Ou

try {

_bodyData=jsonEncode(body);
_bodyData = body;

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -476,7 +480,8 @@ _responseData = deserialize<num, num>(_response.data!, 'num', growable: true);

try {

_bodyData=jsonEncode(body);
_bodyData = body;

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -565,6 +570,7 @@ _responseData = deserialize<String, String>(_response.data!, 'String', growable:
try {

_bodyData=jsonEncode(outerObjectWithEnumProperty);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -652,7 +658,8 @@ _responseData = deserialize<OuterObjectWithEnumProperty, OuterObjectWithEnumProp

try {

_bodyData=jsonEncode(body);
_bodyData = body;

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -718,6 +725,7 @@ _bodyData=jsonEncode(body);
try {

_bodyData=jsonEncode(fileSchemaTestClass);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -789,6 +797,7 @@ _bodyData=jsonEncode(fileSchemaTestClass);
try {

_bodyData=jsonEncode(user);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -856,6 +865,7 @@ _bodyData=jsonEncode(user);
try {

_bodyData=jsonEncode(client);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -974,6 +984,22 @@ _responseData = deserialize<Client, Client>(_response.data!, 'Client', growable:

try {

_bodyData = <String, dynamic>{
if (integer != null) r'integer': integer ,
if (int32 != null) r'int32': int32 ,
if (int64 != null) r'int64': int64 ,
r'number': number ,
if (float != null) r'float': float ,
r'double': double_ ,
if (string != null) r'string': string ,
r'pattern_without_delimiter': patternWithoutDelimiter ,
r'byte': byte ,
if (binary != null) r'binary': binary,
if (date != null) r'date': date ,
if (dateTime != null) r'dateTime': dateTime ,
if (password != null) r'password': password ,
if (callback != null) r'callback': callback ,
};

} catch(error, stackTrace) {
throw DioError(
Expand Down Expand Up @@ -1062,6 +1088,10 @@ _responseData = deserialize<Client, Client>(_response.data!, 'Client', growable:

try {

_bodyData = <String, dynamic>{
if (enumFormStringArray != null) r'enum_form_string_array': jsonEncode(enumFormStringArray) ,
if (enumFormString != null) r'enum_form_string': enumFormString ,
};

} catch(error, stackTrace) {
throw DioError(
Expand Down Expand Up @@ -1202,6 +1232,7 @@ _responseData = deserialize<Client, Client>(_response.data!, 'Client', growable:
try {

_bodyData=jsonEncode(requestBody);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -1268,6 +1299,10 @@ _bodyData=jsonEncode(requestBody);

try {

_bodyData = <String, dynamic>{
r'param': param ,
r'param2': param2 ,
};

} catch(error, stackTrace) {
throw DioError(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ class FakeClassnameTags123Api {
try {

_bodyData=jsonEncode(client);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ class PetApi {
try {

_bodyData=jsonEncode(pet);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -427,6 +428,7 @@ _responseData = deserialize<Pet, Pet>(_response.data!, 'Pet', growable: true);
try {

_bodyData=jsonEncode(pet);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -500,6 +502,10 @@ _bodyData=jsonEncode(pet);

try {

_bodyData = <String, dynamic>{
if (name != null) r'name': name ,
if (status != null) r'status': status ,
};

} catch(error, stackTrace) {
throw DioError(
Expand Down Expand Up @@ -574,6 +580,10 @@ _bodyData=jsonEncode(pet);

try {

_bodyData = FormData.fromMap(<String, dynamic>{
if (additionalMetadata != null) r'additionalMetadata': additionalMetadata ,
if (file != null) r'file': file,
});

} catch(error, stackTrace) {
throw DioError(
Expand Down Expand Up @@ -671,6 +681,10 @@ _responseData = deserialize<ApiResponse, ApiResponse>(_response.data!, 'ApiRespo

try {

_bodyData = FormData.fromMap(<String, dynamic>{
if (additionalMetadata != null) r'additionalMetadata': additionalMetadata ,
r'requiredFile': requiredFile,
});

} catch(error, stackTrace) {
throw DioError(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,7 @@ _responseData = deserialize<Order, Order>(_response.data!, 'Order', growable: tr
try {

_bodyData=jsonEncode(order);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ class UserApi {
try {

_bodyData=jsonEncode(user);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -123,6 +124,7 @@ _bodyData=jsonEncode(user);
try {

_bodyData=jsonEncode(user);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -188,6 +190,7 @@ _bodyData=jsonEncode(user);
try {

_bodyData=jsonEncode(user);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down Expand Up @@ -495,6 +498,7 @@ _responseData = deserialize<String, String>(_response.data!, 'String', growable:
try {

_bodyData=jsonEncode(user);

} catch(error, stackTrace) {
throw DioError(
requestOptions: _options.compose(
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
build/
.dart_tool
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,6 @@ void main() {
Headers.contentLengthHeader: Matchers.integer,
},
);

final response = await client.getPetApi().addPet(
pet: Pet()
..id = 5
Expand Down

This file was deleted.