Commit e58bee9
committed
[go] support io.Reader response types in client decode
The Go generator emits *os.File for type: string / format: binary by
default; callers can override that with --type-mappings to get
io.Reader. The shared decode helper, however, only branches on *string,
*os.File and **os.File — when the generated Execute method declares
localVarReturnValue io.Reader, decode is called with v = *io.Reader,
none of the existing assertions match and the call fails with
"undefined response type".
Add an *io.Reader branch right after the *string branch (mirroring the
io.Reader-first preference in setBody) that wraps the already-buffered
response bytes in a bytes.Reader. Bytes are pre-slurped by the caller
for shared error/success handling, so a wrapping reader is the smallest
correct fix.
Regenerated the eleven affected Go samples.1 parent 2114edc commit e58bee9
12 files changed
Lines changed: 48 additions & 0 deletions
File tree
- modules/openapi-generator/src/main/resources/go
- samples
- client
- echo_api
- go-external-refs
- go
- others/go
- allof_multiple_ref_and_discriminator
- oneof-anyof-required
- oneof-discriminator-lookup
- petstore/go/go-petstore
- openapi3/client
- extensions/x-auth-id-alias/go-experimental
- petstore
- go-petstore-generateMarshalJSON-false
- go-petstore-withXml
- go
- go-petstore-aws-signature
- go-petstore
Lines changed: 4 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
539 | 539 | | |
540 | 540 | | |
541 | 541 | | |
| 542 | + | |
| 543 | + | |
| 544 | + | |
| 545 | + | |
542 | 546 | | |
543 | 547 | | |
544 | 548 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments