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

MicroProfile Rest Client 2.0 support #4693

Closed
wants to merge 10 commits into from
Closed

MicroProfile Rest Client 2.0 support #4693

wants to merge 10 commits into from

Conversation

jGauravGupta
Copy link
Member

@jGauravGupta jGauravGupta commented Jan 20, 2021

Fixes Github issue: #4654
Signed-off-by: Gaurav Gupta [email protected]

MP Rest Client 2.0 - QueryParamStyle support:
JerseyClient, JerseyClientBuilder, and JerseyUriBuilder is extended by the MP Rest Client module to modify the query param based on the QueryParamStyle.

MP Rest Client 2.0 - CDI-managed provider:
PR introducing the changes in Jersey APIs by adding 2 new interface to jersey-server and jersey-client modules:
org.glassfish.jersey.server.spi.ServerComponentProvider (jersey-server)
org.glassfish.jersey.client.spi.ClientComponentProvider (jersey-client)
org.glassfish.jersey.server.spi.ComponentProvider (jersey-server) -> org.glassfish.jersey.spi.ComponentProvider (jersey-common)

ClientCdiComponentProvider implementing ClientComponentProvider is used to register CDI managed instance.

@jansupol
Copy link
Contributor

Hi Gaurav.
Thank you for the contribution. These days it seems everyone is pushing on MP REST Client 2.0, that's great.
Basically, we can split the effort into several parts:

  • CDI on Client
  • SSE support with streams
  • QueryParamStyle usage
  • other changes

I was working on the CDI integration, please see my PR, and @Verdent is assigned to #4654, so he was working on the rest of the REST Client, too.

For the CDI part, I have the following objections (which #4695 handles):

  • The CDI module needs to be independent on Server modules since it should work just with a client.
  • ComponentProvider is a public SPI and it needs to keep its name
  • the CDI needs to handle priorities

I'd suggest we can use #4695 as a basis for the rest client.

@jGauravGupta
Copy link
Member Author

Hi @jansupol ,

Thanks for your review, I am closing this PR in favor of #4699, which includes your suggested changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants