Skip to content

Deprecate (and mark for removal) ExtendedHttpService#438

Open
laeubi wants to merge 1 commit intoeclipse-equinox:masterfrom
laeubi:deprecate_ExtendedHttpService
Open

Deprecate (and mark for removal) ExtendedHttpService#438
laeubi wants to merge 1 commit intoeclipse-equinox:masterfrom
laeubi:deprecate_ExtendedHttpService

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

@github-actions
Copy link

github-actions bot commented Dec 15, 2023

Test Results

0 files   -   663  0 suites   - 663   0s ⏱️ - 1h 14m 43s
0 tests  - 2 211  0 ✅  - 2 164  0 💤  -  47  0 ❌ ±0 
0 runs   - 6 777  0 ✅  - 6 634  0 💤  - 143  0 ❌ ±0 

Results for commit 0d082f6. ± Comparison against base commit 91eebf3.

♻️ 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.

@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?

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 e91f28b to 0d082f6 Compare December 30, 2024 11:23
@laeubi
Copy link
Member Author

laeubi commented Jul 14, 2025

I now started migration of the HelpCenter to using the Whiteboardservices, any help is welcome, it is always the same pattern and mostly one needs to find out where the servlet it used to test is is working properly:

@akurtakov
Copy link
Member

@laeubi
Copy link
Member Author

laeubi commented Jul 24, 2025

What about https://github.com/eclipse-platform/eclipse.platform/blob/eb38d0fdee43e96d061efa13903753ecfa206ed7/ua/org.eclipse.help.webapp/plugin.xml#L110 ?

That's a bit special but also doable I'll look into this hopefully later on, for now it would be good to convert the easy ones first :-)

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.

4 participants