Skip to content
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

[Java][jersey2] Make (de)serialization work for oneOf models #6323

Merged
merged 1 commit into from
May 25, 2020

Conversation

bkabrda
Copy link
Contributor

@bkabrda bkabrda commented May 15, 2020

This PR makes oneOf (de)serialization actually work properly, also adds some convenience constructors for the oneOf models and equals/toString/hashcode for proper comparison and debugging.

PR checklist

  • Read the contribution guidelines.
  • If contributing template-only or documentation-only changes which will change sample output, build the project before.
  • Run the shell script(s) under ./bin/ (or Windows batch scripts under.\bin\windows) to update Petstore samples related to your fix. This is important, as CI jobs will verify all generator outputs of your HEAD commit, and these must match the expectations made by your contribution. You only need to run ./bin/{LANG}-petstore.sh, ./bin/openapi3/{LANG}-petstore.sh if updating the code or mustache templates for a language ({LANG}) (e.g. php, ruby, python, etc).
  • File the PR against the correct branch: master, 4.3.x, 5.0.x. Default: master.
  • Copy the technical committee to review the pull request if your PR is targeting a particular programming language.

@bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) @lwlee2608 (2019/10) @bkabrda (2020/01)

@wing328
Copy link
Member

wing328 commented May 17, 2020

Looks good at first glance. I'll run some tests later this week as the petstore samples do not have oneOf tests.

Copy link
Member

@wing328 wing328 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally and the result is good

@wing328 wing328 merged commit 205514c into OpenAPITools:master May 25, 2020
@wing328 wing328 added this to the 5.0.0 milestone May 25, 2020
@wing328 wing328 mentioned this pull request May 25, 2020
5 tasks
jimschubert added a commit that referenced this pull request May 25, 2020
* master: (71 commits)
  [PS] check if JSON properties is defined (#6419)
  Add C++ UE4  client generator (#6399)
  Add a link to the article in dev.to (#6421)
  typescript-axios anytype is not defined (#6335)
  [Java][jersey2] Make (de)serialization work for oneOf models, add convenience and comparison methods (#6323)
  Migrate OCaml petstore to use OAS v3 spec (#6348)
  [Python-experimental] Fix type error if oneof/anyof child schema is null type (#6387)
  [Python-server] Fix blueplanet 'file not found' error  (#6411)
  [nodejs] Fix deprecation notice when running sample nodejs script (#6412)
  [java-jersey2] Conditionally include http signature mustache template (#6413)
  [bug] Fix path provider bug on CI (#6409)
  decomission nodejs server generator (#6406)
  [Java] Generate valid code if no Authentication implementations present (#5788)
  update java jersey2 samples
  [Java] Fix mustache tag in pom template for HTTP signature (#6404)
  [Python-experimental] Rename from_server variable to json_variable_naming (#6390)
  Add a link to medium blog post (#6403)
  Clean up debug in test (#6398)
  readding bin/swift5-petstore-readonlyProperties.json
  remove ./bin/swift5-petstore-readonlyProperties.json
  ...
jimschubert added a commit to jimschubert/openapi-generator that referenced this pull request May 27, 2020
* master:
  [kotlin][client] add support for coroutines with OkHttp (OpenAPITools#6362)
  update package-json.lock (OpenAPITools#6430)
  fix hardcoded match type (OpenAPITools#6431)
  java jersey2 enhance anyOf (OpenAPITools#6420)
  [Java][jersey2] minor improvement to jersey2 tests (OpenAPITools#6418)
  ps minor style change (OpenAPITools#6424)
  [JS] mark ES5 as deprecated (OpenAPITools#6408)
  [ci] Execute maven and verify with no-snapshot-updates (OpenAPITools#6415)
  add new file in ts axios samples
  Migrate all scala generators to use OAS3 (OpenAPITools#6407)
  migrate ruby samples to oas3 (OpenAPITools#6414)
  [PS] check if JSON properties is defined (OpenAPITools#6419)
  Add C++ UE4  client generator (OpenAPITools#6399)
  Add a link to the article in dev.to (OpenAPITools#6421)
  typescript-axios anytype is not defined (OpenAPITools#6335)
  [Java][jersey2] Make (de)serialization work for oneOf models, add convenience and comparison methods (OpenAPITools#6323)
  Migrate OCaml petstore to use OAS v3 spec (OpenAPITools#6348)
  [Python-experimental] Fix type error if oneof/anyof child schema is null type (OpenAPITools#6387)
  [Python-server] Fix blueplanet 'file not found' error  (OpenAPITools#6411)
  [nodejs] Fix deprecation notice when running sample nodejs script (OpenAPITools#6412)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants