pnoltes opened a new pull request, #729:
URL: https://github.com/apache/celix/pull/729

   This pull request introduces several new bundle context C functions and C++ 
ServiceTracker methods. These additions allow tracked services to be called 
using callbacks on the current thread through a service tracker or service 
tracker ID. This method of calling services is expected to be more performant 
than the useService(s) functions/methods, which invoke callbacks on the event 
thread.
   
   For C, the following functions where added:
   - `celix_bundleContext_useTrackedService`
   - `celix_bundleContext_useTrackedServices`
   - `celix_bundleContext_useTrackedServiceWithOptions`
   - `celix_bundleContext_useTrackedServicesWithOptions`
   - `celix_bundleContext_getTrackedServiceCount`
   - `celix_bundleContext_getTrackedServiceName`
   - `celix_bundleContext_getTrackedServiceFilter`
   
   The signature of the following C function has been changed:
   - `celix_bundleContext_trackServices`. The trackServices function signature 
is simplified to that it is easier to use when combined with the 
useTrackerService(s) calls. 
   
   For C++, the following methods were added:
   - `celix::ServiceTracker<I>::useService<F>`
   - `celix::ServiceTracker<I>::useServices<F>`
   
   This pull request also prepares the removal of celix_service_tracker.h as 
public api. This change should make it easier to refactor the 
celix_service_tracker.h and implementation for a better code coverage and error 
handling.
   
   Also replaces the usage of `hash_map_t` in the C bundle context to 
`celix_long_hash_map_t`.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@celix.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to