Apache Celix  latest
Apache Celix is a framework for C, C++14 and C++17 to develop dynamic modular software applications using component and in-process service-oriented programming.
Public Attributes | List of all members
celix_bundle_tracker_options Struct Reference

The Service Bundle Tracking options can be used to fine tune the requested bundle tracker options. More...

#include <celix_bundle_context.h>

Public Attributes

void *callbackHandle CELIX_OPTS_INIT
 The optional callback pointer used in all the provided callback function (set, add, remove, setWithProperties, etc). More...
 
void(* onInstalled )(void *handle, const celix_bundle_t *bundle) CELIX_OPTS_INIT
 Tracker callback when a bundle is installed. More...
 
void(* onStarted )(void *handle, const celix_bundle_t *bundle) CELIX_OPTS_INIT
 Tracker callback when a bundle is started. More...
 
void(* onStopped )(void *handle, const celix_bundle_t *bundle) CELIX_OPTS_INIT
 Tracker callback when a bundle is stopped. More...
 
void(* onBundleEvent )(void *handle, const celix_bundle_event_t *event) CELIX_OPTS_INIT
 
bool includeFrameworkBundle CELIX_OPTS_INIT
 Default the framework bundle (bundle id 0) will not trigger the callbacks. This is done, because the framework bundle is a special bundle which is generally not needed in the callbacks. More...
 
void *trackerCreatedCallbackData CELIX_OPTS_INIT
 Data for the trackerCreatedCallback. More...
 
void(* trackerCreatedCallback )(void *trackerCreatedCallbackData) CELIX_OPTS_INIT
 The callback called when the tracker has ben created (and is active) when using the track bundles ascync calls. More...
 

Detailed Description

The Service Bundle Tracking options can be used to fine tune the requested bundle tracker options.

Member Data Documentation

◆ CELIX_OPTS_INIT [1/3]

void* callbackHandle celix_bundle_tracker_options::CELIX_OPTS_INIT

The optional callback pointer used in all the provided callback function (set, add, remove, setWithProperties, etc).

◆ CELIX_OPTS_INIT [2/3]

bool includeFrameworkBundle celix_bundle_tracker_options::CELIX_OPTS_INIT

Default the framework bundle (bundle id 0) will not trigger the callbacks. This is done, because the framework bundle is a special bundle which is generally not needed in the callbacks.

◆ CELIX_OPTS_INIT [3/3]

void* trackerCreatedCallbackData celix_bundle_tracker_options::CELIX_OPTS_INIT

Data for the trackerCreatedCallback.

◆ onBundleEvent

void(* celix_bundle_tracker_options::onBundleEvent) (void *handle, const celix_bundle_event_t *event) CELIX_OPTS_INIT
Parameters
handleThe handle, contains the value of the callbackHandle.
eventThe bundle event. Is only valid during the callback.

◆ onInstalled

void(* celix_bundle_tracker_options::onInstalled) (void *handle, const celix_bundle_t *bundle) CELIX_OPTS_INIT

Tracker callback when a bundle is installed.

Parameters
handleThe handle, contains the value of the callbackHandle.
bundleThe bundle which has been installed. The bundle pointer is only guaranteed to be valid during the callback.

◆ onStarted

void(* celix_bundle_tracker_options::onStarted) (void *handle, const celix_bundle_t *bundle) CELIX_OPTS_INIT

Tracker callback when a bundle is started.

Parameters
handleThe handle, contains the value of the callbackHandle.
bundleThe bundle which has been started. The bundle pointer is only guaranteed to be valid during the callback.

◆ onStopped

void(* celix_bundle_tracker_options::onStopped) (void *handle, const celix_bundle_t *bundle) CELIX_OPTS_INIT

Tracker callback when a bundle is stopped.

Parameters
handleThe handle, contains the value of the callbackHandle.
bundleThe bundle which has been stopped. The bundle pointer is only guaranteed to be valid during the callback.

◆ trackerCreatedCallback

void(* celix_bundle_tracker_options::trackerCreatedCallback) (void *trackerCreatedCallbackData) CELIX_OPTS_INIT

The callback called when the tracker has ben created (and is active) when using the track bundles ascync calls.

If a asyns track service is combined with a sync stop tracker, it can happen that "stop tracker" happens before the "create tracker" event is processed. In this case the asyncCallback will not be called.


The documentation for this struct was generated from the following file: