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

Provider Interface Support SPI & Optimize ProviderManager SPI #4218

Merged
merged 7 commits into from
Jan 29, 2022

Conversation

darcydai
Copy link
Contributor

@darcydai darcydai commented Jan 25, 2022

What's the purpose of this PR

  1. Add SPI feature like ApplicationProvider NetworkProvider in DefaultProviderManager
  2. Add Ordered in ProviderManager and use ServiceBootstrap.loadPrimary instead of com.ctrip.framework.foundation.internals.ServiceBootstrap#loadFirst. Because getManager method in class Foundation use com.ctrip.framework.foundation.internals.ServiceBootstrap#loadFirst to load interface ProviderManager implementation, if I want to define my ownProviderManager, which class has higher priority can not spefic.

Brief changelo

Provider Interface Support SPI & Optimize ProviderManager SPI

Follow this checklist to help us incorporate your contribution quickly and easily:

  • Read the Contributing Guide before making this pull request.
  • Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
  • Write necessary unit tests to verify the code.
  • Run mvn clean test to make sure this pull request doesn't break anything.
  • Update the CHANGES log.

@github-actions
Copy link

github-actions bot commented Jan 25, 2022

CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅

@darcydai darcydai changed the title Provider Interface Support SPI & Optimize ProviderManager SPI Provider Interface Support SPI & Optimize ProviderManager SPI Jan 25, 2022
@darcydai
Copy link
Contributor Author

I have read the CLA Document and I hereby sign the CLA

@darcydai darcydai requested a review from nobodyiam January 27, 2022 06:02
@darcydai
Copy link
Contributor Author

updated

@darcydai darcydai requested a review from nobodyiam January 27, 2022 10:36
@codecov-commenter
Copy link

codecov-commenter commented Jan 27, 2022

Codecov Report

Merging #4218 (fb3db2b) into master (ced8ad9) will increase coverage by 0.00%.
The diff coverage is 80.00%.

Impacted file tree graph

@@            Coverage Diff            @@
##             master    #4218   +/-   ##
=========================================
  Coverage     52.58%   52.58%           
- Complexity     2631     2632    +1     
=========================================
  Files           485      486    +1     
  Lines         15225    15226    +1     
  Branches       1573     1573           
=========================================
+ Hits           8006     8007    +1     
- Misses         6663     6664    +1     
+ Partials        556      555    -1     
Impacted Files Coverage Δ
...trip/framework/foundation/spi/ProviderManager.java 0.00% <0.00%> (ø)
...ava/com/ctrip/framework/foundation/Foundation.java 38.70% <100.00%> (ø)
...internals/provider/DefaultApplicationProvider.java 49.16% <100.00%> (ø)
...ervice/service/ReleaseMessageServiceWithCache.java 87.05% <0.00%> (+1.17%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ced8ad9...fb3db2b. Read the comment docs.

CHANGES.md Outdated Show resolved Hide resolved
Copy link
Member

@nobodyiam nobodyiam left a comment

Choose a reason for hiding this comment

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

LGTM

@nobodyiam nobodyiam merged commit e3448dd into apolloconfig:master Jan 29, 2022
@github-actions github-actions bot locked and limited conversation to collaborators Jan 29, 2022
@nobodyiam nobodyiam added this to the 2.0.0 milestone Mar 9, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants