Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deserialize endpoint errors #2443
base: develop
Are you sure you want to change the base?
Deserialize endpoint errors #2443
Changes from 1 commit
d74dea3
f00bd5f
7dac6ee
bcbf495
c67cb58
ae9dfff
e09c1b9
7cc4b7f
01a1589
e0f5d25
b175b54
e7a5105
a590c3c
c7bfd90
55b661d
b59d006
c5fdef4
9d067d0
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
in the else case, we should throw rather than returning a null ref that will cause something else to throw in a more confusing way later on!
I might suggest splitting this up a bit as well: We should be able to do the validation on
successT.getType()
once when the deserializer is first created, as well as the.getConstructor(<arg>)
, that way we only need to executenewInstance
on a per-response basis.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also added methods to deserialize input streams and optional input streams. The idea is that the type
T.Success
here has a constructor withInputStream
as the only parameter, and on a successful binary response body, aSuccessT(response.body())
will be returned.