Skip to content

Commit 46befcf

Browse files
authored
feat: omit empty fields in marshallers (#272)
1 parent 8f77ca1 commit 46befcf

File tree

54 files changed

+11492
-4996
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+11492
-4996
lines changed

scaleway-async/scaleway_async/account/v2/marshalling.py

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -65,18 +65,32 @@ def marshal_CreateProjectRequest(
6565
request: CreateProjectRequest,
6666
defaults: ProfileDefaults,
6767
) -> Dict[str, Any]:
68-
return {
69-
"description": request.description,
70-
"name": request.name,
71-
"organization_id": request.organization_id or defaults.default_organization_id,
72-
}
68+
output: Dict[str, Any] = {}
69+
70+
if request.description is not None:
71+
output["description"] = request.description
72+
73+
if request.name is not None:
74+
output["name"] = request.name
75+
76+
if request.organization_id is not None:
77+
output["organization_id"] = (
78+
request.organization_id or defaults.default_organization_id
79+
)
80+
81+
return output
7382

7483

7584
def marshal_UpdateProjectRequest(
7685
request: UpdateProjectRequest,
7786
defaults: ProfileDefaults,
7887
) -> Dict[str, Any]:
79-
return {
80-
"description": request.description,
81-
"name": request.name,
82-
}
88+
output: Dict[str, Any] = {}
89+
90+
if request.description is not None:
91+
output["description"] = request.description
92+
93+
if request.name is not None:
94+
output["name"] = request.name
95+
96+
return output

scaleway-async/scaleway_async/account/v3/marshalling.py

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -65,18 +65,32 @@ def marshal_ProjectApiCreateProjectRequest(
6565
request: ProjectApiCreateProjectRequest,
6666
defaults: ProfileDefaults,
6767
) -> Dict[str, Any]:
68-
return {
69-
"description": request.description,
70-
"name": request.name,
71-
"organization_id": request.organization_id or defaults.default_organization_id,
72-
}
68+
output: Dict[str, Any] = {}
69+
70+
if request.description is not None:
71+
output["description"] = request.description
72+
73+
if request.name is not None:
74+
output["name"] = request.name
75+
76+
if request.organization_id is not None:
77+
output["organization_id"] = (
78+
request.organization_id or defaults.default_organization_id
79+
)
80+
81+
return output
7382

7483

7584
def marshal_ProjectApiUpdateProjectRequest(
7685
request: ProjectApiUpdateProjectRequest,
7786
defaults: ProfileDefaults,
7887
) -> Dict[str, Any]:
79-
return {
80-
"description": request.description,
81-
"name": request.name,
82-
}
88+
output: Dict[str, Any] = {}
89+
90+
if request.description is not None:
91+
output["description"] = request.description
92+
93+
if request.name is not None:
94+
output["name"] = request.name
95+
96+
return output

scaleway-async/scaleway_async/applesilicon/v1alpha1/marshalling.py

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -229,17 +229,27 @@ def marshal_CreateServerRequest(
229229
request: CreateServerRequest,
230230
defaults: ProfileDefaults,
231231
) -> Dict[str, Any]:
232-
return {
233-
"name": request.name,
234-
"project_id": request.project_id or defaults.default_project_id,
235-
"type": request.type_,
236-
}
232+
output: Dict[str, Any] = {}
233+
234+
if request.name is not None:
235+
output["name"] = request.name
236+
237+
if request.project_id is not None:
238+
output["project_id"] = request.project_id or defaults.default_project_id
239+
240+
if request.type_ is not None:
241+
output["type"] = request.type_
242+
243+
return output
237244

238245

239246
def marshal_UpdateServerRequest(
240247
request: UpdateServerRequest,
241248
defaults: ProfileDefaults,
242249
) -> Dict[str, Any]:
243-
return {
244-
"name": request.name,
245-
}
250+
output: Dict[str, Any] = {}
251+
252+
if request.name is not None:
253+
output["name"] = request.name
254+
255+
return output

scaleway-async/scaleway_async/baremetal/v1/marshalling.py

Lines changed: 134 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -816,32 +816,51 @@ def marshal_CreateServerRequestInstall(
816816
request: CreateServerRequestInstall,
817817
defaults: ProfileDefaults,
818818
) -> Dict[str, Any]:
819-
return {
820-
"hostname": request.hostname,
821-
"os_id": request.os_id,
822-
"password": request.password,
823-
"service_password": request.service_password,
824-
"service_user": request.service_user,
825-
"ssh_key_ids": request.ssh_key_ids,
826-
"user": request.user,
827-
}
819+
output: Dict[str, Any] = {}
820+
821+
if request.hostname is not None:
822+
output["hostname"] = request.hostname
823+
824+
if request.os_id is not None:
825+
output["os_id"] = request.os_id
826+
827+
if request.password is not None:
828+
output["password"] = request.password
829+
830+
if request.service_password is not None:
831+
output["service_password"] = request.service_password
832+
833+
if request.service_user is not None:
834+
output["service_user"] = request.service_user
835+
836+
if request.ssh_key_ids is not None:
837+
output["ssh_key_ids"] = request.ssh_key_ids
838+
839+
if request.user is not None:
840+
output["user"] = request.user
841+
842+
return output
828843

829844

830845
def marshal_AddOptionServerRequest(
831846
request: AddOptionServerRequest,
832847
defaults: ProfileDefaults,
833848
) -> Dict[str, Any]:
834-
return {
835-
"expires_at": request.expires_at,
836-
}
849+
output: Dict[str, Any] = {}
850+
851+
if request.expires_at is not None:
852+
output["expires_at"] = request.expires_at
853+
854+
return output
837855

838856

839857
def marshal_CreateServerRequest(
840858
request: CreateServerRequest,
841859
defaults: ProfileDefaults,
842860
) -> Dict[str, Any]:
843-
return {
844-
**resolve_one_of(
861+
output: Dict[str, Any] = {}
862+
output.update(
863+
resolve_one_of(
845864
[
846865
OneOfPossibility(
847866
"project_id",
@@ -859,101 +878,158 @@ def marshal_CreateServerRequest(
859878
),
860879
]
861880
),
862-
"description": request.description,
863-
"install": marshal_CreateServerRequestInstall(request.install, defaults)
864-
if request.install is not None
865-
else None,
866-
"name": request.name,
867-
"offer_id": request.offer_id,
868-
"option_ids": request.option_ids,
869-
"tags": request.tags,
870-
}
881+
)
882+
883+
if request.description is not None:
884+
output["description"] = request.description
885+
886+
if request.install is not None:
887+
output["install"] = marshal_CreateServerRequestInstall(
888+
request.install, defaults
889+
)
890+
891+
if request.name is not None:
892+
output["name"] = request.name
893+
894+
if request.offer_id is not None:
895+
output["offer_id"] = request.offer_id
896+
897+
if request.option_ids is not None:
898+
output["option_ids"] = request.option_ids
899+
900+
if request.tags is not None:
901+
output["tags"] = request.tags
902+
903+
return output
871904

872905

873906
def marshal_InstallServerRequest(
874907
request: InstallServerRequest,
875908
defaults: ProfileDefaults,
876909
) -> Dict[str, Any]:
877-
return {
878-
"hostname": request.hostname,
879-
"os_id": request.os_id,
880-
"password": request.password,
881-
"service_password": request.service_password,
882-
"service_user": request.service_user,
883-
"ssh_key_ids": request.ssh_key_ids,
884-
"user": request.user,
885-
}
910+
output: Dict[str, Any] = {}
911+
912+
if request.hostname is not None:
913+
output["hostname"] = request.hostname
914+
915+
if request.os_id is not None:
916+
output["os_id"] = request.os_id
917+
918+
if request.password is not None:
919+
output["password"] = request.password
920+
921+
if request.service_password is not None:
922+
output["service_password"] = request.service_password
923+
924+
if request.service_user is not None:
925+
output["service_user"] = request.service_user
926+
927+
if request.ssh_key_ids is not None:
928+
output["ssh_key_ids"] = request.ssh_key_ids
929+
930+
if request.user is not None:
931+
output["user"] = request.user
932+
933+
return output
886934

887935

888936
def marshal_PrivateNetworkApiAddServerPrivateNetworkRequest(
889937
request: PrivateNetworkApiAddServerPrivateNetworkRequest,
890938
defaults: ProfileDefaults,
891939
) -> Dict[str, Any]:
892-
return {
893-
"private_network_id": request.private_network_id,
894-
}
940+
output: Dict[str, Any] = {}
941+
942+
if request.private_network_id is not None:
943+
output["private_network_id"] = request.private_network_id
944+
945+
return output
895946

896947

897948
def marshal_PrivateNetworkApiSetServerPrivateNetworksRequest(
898949
request: PrivateNetworkApiSetServerPrivateNetworksRequest,
899950
defaults: ProfileDefaults,
900951
) -> Dict[str, Any]:
901-
return {
902-
"private_network_ids": request.private_network_ids,
903-
}
952+
output: Dict[str, Any] = {}
953+
954+
if request.private_network_ids is not None:
955+
output["private_network_ids"] = request.private_network_ids
956+
957+
return output
904958

905959

906960
def marshal_RebootServerRequest(
907961
request: RebootServerRequest,
908962
defaults: ProfileDefaults,
909963
) -> Dict[str, Any]:
910-
return {
911-
"boot_type": ServerBootType(request.boot_type),
912-
}
964+
output: Dict[str, Any] = {}
965+
966+
if request.boot_type is not None:
967+
output["boot_type"] = ServerBootType(request.boot_type)
968+
969+
return output
913970

914971

915972
def marshal_StartBMCAccessRequest(
916973
request: StartBMCAccessRequest,
917974
defaults: ProfileDefaults,
918975
) -> Dict[str, Any]:
919-
return {
920-
"ip": request.ip,
921-
}
976+
output: Dict[str, Any] = {}
977+
978+
if request.ip is not None:
979+
output["ip"] = request.ip
980+
981+
return output
922982

923983

924984
def marshal_StartServerRequest(
925985
request: StartServerRequest,
926986
defaults: ProfileDefaults,
927987
) -> Dict[str, Any]:
928-
return {
929-
"boot_type": ServerBootType(request.boot_type),
930-
}
988+
output: Dict[str, Any] = {}
989+
990+
if request.boot_type is not None:
991+
output["boot_type"] = ServerBootType(request.boot_type)
992+
993+
return output
931994

932995

933996
def marshal_UpdateIPRequest(
934997
request: UpdateIPRequest,
935998
defaults: ProfileDefaults,
936999
) -> Dict[str, Any]:
937-
return {
938-
"reverse": request.reverse,
939-
}
1000+
output: Dict[str, Any] = {}
1001+
1002+
if request.reverse is not None:
1003+
output["reverse"] = request.reverse
1004+
1005+
return output
9401006

9411007

9421008
def marshal_UpdateServerRequest(
9431009
request: UpdateServerRequest,
9441010
defaults: ProfileDefaults,
9451011
) -> Dict[str, Any]:
946-
return {
947-
"description": request.description,
948-
"name": request.name,
949-
"tags": request.tags,
950-
}
1012+
output: Dict[str, Any] = {}
1013+
1014+
if request.description is not None:
1015+
output["description"] = request.description
1016+
1017+
if request.name is not None:
1018+
output["name"] = request.name
1019+
1020+
if request.tags is not None:
1021+
output["tags"] = request.tags
1022+
1023+
return output
9511024

9521025

9531026
def marshal_UpdateSettingRequest(
9541027
request: UpdateSettingRequest,
9551028
defaults: ProfileDefaults,
9561029
) -> Dict[str, Any]:
957-
return {
958-
"enabled": request.enabled,
959-
}
1030+
output: Dict[str, Any] = {}
1031+
1032+
if request.enabled is not None:
1033+
output["enabled"] = request.enabled
1034+
1035+
return output

0 commit comments

Comments
 (0)