celix icon indicating copy to clipboard operation
celix copied to clipboard

Remove service_tracker.h service_tracker_customizer.h header and bundleContext_getServiceReference

Open rlenferink opened this issue 6 years ago • 3 comments

The service_tracker.h and service_tracker_custimizer.h should be removed. Service tracker should be control-able from the bundle context (see CELIX-441) Also remove the bundleContext_getServiceReference(s) this should also been unnecessary because of CEILX-441.

This make to total Celix API smaller


Original creation date: 10/Apr/2018 Reporter: @pnoltes

rlenferink avatar Sep 28 '19 14:09 rlenferink

As discussed in https://lists.apache.org/thread/6gp5crw1pp408jw2fbwlg149n5rm36pv before the service tracker headers can be removed from the public API some additional tracker API in the bundle context is needed.

Mainly to be able to use tracked services out side of the celix event thread.

pnoltes avatar Feb 10 '24 13:02 pnoltes

With the addition of celix_bundleContext_useTrackedService* functions, the functions celix_bundleContext_useService* and methods celix::BundleContext::useService* are functional superfluous and less ideal to use (more prone to deadlocks).

  • [x] Remove the the functions celix_bundleContext_useService* and methods celix::BundleContext::useService* to decrease the code size and improve the maintainability. Also introduce some testing methods to replace the useService with wait timeout usecase for testing.

pnoltes avatar Feb 25 '24 16:02 pnoltes

With the addition of celix_bundleContext_useTrackedService* functions, the functions celix_bundleContext_useService* and methods celix::BundleContext::useService* are functional superfluous and less ideal to use (more prone to deadlocks).

* [x]  Remove the  the functions `celix_bundleContext_useService*`  and methods `celix::BundleContext::useService*`  to decrease the code size and improve the maintainability. Also introduce some testing methods to replace the useService with wait timeout usecase for testing.

Simplified the implementation of celix_bundleContext_useService* instead.

pnoltes avatar Mar 24 '24 18:03 pnoltes