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

Deprecate (and mark for removal) ExtendedHttpService #438

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

laeubi
Copy link
Member

@laeubi laeubi commented Dec 15, 2023

The ExtendedHttpService is effectively unused in platform and uses the abandoned HttpService it is API.

We therefore should deprecate and remove that to get rid of the dependency here a more modern replacement for the purpose of this extended form (registering filters) is today the Http Whiteboard Specification

Copy link

github-actions bot commented Dec 15, 2023

Test Results

0 files   -   660  0 suites   - 660   0s ⏱️ - 1h 12m 22s
0 tests  - 2 195  0 ✅  - 2 148  0 💤  -  47  0 ❌ ±0 
0 runs   - 6 729  0 ✅  - 6 586  0 💤  - 143  0 ❌ ±0 

Results for commit e91f28b. ± Comparison against base commit c8ce736.

♻️ This comment has been updated with latest results.

@vogella
Copy link
Contributor

vogella commented Dec 15, 2023

+1

@tjwatson
Copy link
Contributor

The ExtendedHttpService is effectively unused in platform and uses the abandoned HttpService it is API.

See org.eclipse.equinox.http.registry.internal.HttpRegistryManager.registerFilter(FilterContribution)

@laeubi
Copy link
Member Author

laeubi commented Dec 15, 2023

org.eclipse.equinox.http.registry.internal.HttpRegistryManager

I highlighted the important part ;-)

@tjwatson
Copy link
Contributor

org.eclipse.equinox.http.registry.internal.HttpRegistryManager

I highlighted the important part ;-)

That is not helpful. You asserted that ExtendedHttpService is not used by the project. I pointed out that it is used by HttpRegistryManager which IS the internal implementation behind the public API extension point <extension-point id="filters" name="%filtersName" schema="schema/filters.exsd"/> from the org.eclipse.equinox.http.registry bundle.

@laeubi
Copy link
Member Author

laeubi commented Dec 15, 2023

The point is that we do not need a public API to implement HttpRegistryManager it could be a private one, so if no one except internal implementations is calling that API its not used, and if you look at the implementation it does not even use that API at all, it looks if the service and checks for a method that has a special signature, so as long as the EquinoxHttp service has a public method it will still work, it does not need it to be mentioned in a public API interface.

The ExtendedHttpService is effectively unused in platform and
uses the abandoned HttpService it is API.

We therefore should deprecate and remove that to get rid of the
dependency here a more modern replacement for the purpose of this
extended form (registering filters) is today the [Http Whiteboard
Specification](https://docs.osgi.org/specification/osgi.cmpn/7.0.0/service.http.whiteboard.html)
@laeubi laeubi force-pushed the deprecate_ExtendedHttpService branch from 7844487 to e91f28b Compare June 16, 2024 05:05
@laeubi
Copy link
Member Author

laeubi commented Jun 16, 2024

@tjwatson @vogella how should we proceed here, my goal would be to make ExtendedHttpService an internal implementation detail of Equinox, so no "external" consumers exits anymore (e.g. we can move it into an internal package). WDYT?

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.

3 participants