This is an automated email from the ASF dual-hosted git repository. pnoltes pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/celix.git
commit 562fd968e6c947cf653b7707a500a1a860471bf9 Author: Deedss <[email protected]> AuthorDate: Sat Apr 4 17:35:49 2026 +0000 - Fix formatting in changed files. - Add service count to printinfo --- .../include/celix/dm/ServiceDependency_Impl.h | 1 + libs/framework/src/dm_component_impl.c | 1 + libs/framework/src/dm_service_dependency.c | 24 +++++++++++----------- libs/framework/src/dm_service_dependency_impl.h | 4 ++-- 4 files changed, 16 insertions(+), 14 deletions(-) diff --git a/libs/framework/include/celix/dm/ServiceDependency_Impl.h b/libs/framework/include/celix/dm/ServiceDependency_Impl.h index 06256de9b..8b0a95f52 100644 --- a/libs/framework/include/celix/dm/ServiceDependency_Impl.h +++ b/libs/framework/include/celix/dm/ServiceDependency_Impl.h @@ -473,6 +473,7 @@ ServiceDependency<T,I>& ServiceDependency<T,I>::setRequired(bool req) { celix_dmServiceDependency_setRequired(this->cServiceDependency(), req); return *this; } + template <class T, class I> ServiceDependency<T, I>& ServiceDependency<T, I>::setMinimalCardinality(size_t minimalCardinality) { celix_dmServiceDependency_setMinimalCardinality(this->cServiceDependency(), minimalCardinality); diff --git a/libs/framework/src/dm_component_impl.c b/libs/framework/src/dm_component_impl.c index 770beabbb..f30487067 100644 --- a/libs/framework/src/dm_component_impl.c +++ b/libs/framework/src/dm_component_impl.c @@ -1108,6 +1108,7 @@ static void celix_dmComponent_printFullInfo(FILE *out, bool colors, celix_dm_com fprintf(out, " |- %sDependency %i: %s%s\n", depStartColors, (depCnt+1), dependency->serviceName == NULL ? "(any)" : dependency->serviceName, endColors); fprintf(out, " | %20s = %s\n", "Available", dependency->available ? "true " : "false"); fprintf(out, " | %20s = %lu\n", "Minimal Cardinality", dependency->minimalCardinality); + fprintf(out, " | %20s = %lu\n", "Service Count", dependency->count); fprintf(out, " | %20s = %s\n", "Required", dependency->required ? "true " : "false"); fprintf(out, " | %20s = %s\n", "Version Range", dependency->versionRange == NULL ? "N/A" : dependency->versionRange); fprintf(out, " | %20s = %s\n", "Filter", dependency->filter == NULL ? "N/A" : dependency->filter); diff --git a/libs/framework/src/dm_service_dependency.c b/libs/framework/src/dm_service_dependency.c index f7ae17aca..33c045d23 100644 --- a/libs/framework/src/dm_service_dependency.c +++ b/libs/framework/src/dm_service_dependency.c @@ -352,19 +352,19 @@ celix_status_t serviceDependency_getServiceDependencyInfo(celix_dm_service_depen } dm_service_dependency_info_t* celix_dmServiceDependency_createInfo(celix_dm_service_dependency_t* dep) { - celix_dm_service_dependency_info_t *info = calloc(1, sizeof(*info)); - if (info != NULL) { - celixThreadMutex_lock(&dep->mutex); - info->available = dep->trackedSvcCount >= dep->minimalCardinality; + celix_dm_service_dependency_info_t* info = calloc(1, sizeof(*info)); + if (info != NULL) { + celixThreadMutex_lock(&dep->mutex); + info->available = dep->trackedSvcCount >= dep->minimalCardinality; info->minimalCardinality = dep->minimalCardinality; - info->serviceName = celix_utils_strdup(dep->serviceName); - info->filter = celix_utils_strdup(dep->filter); - info->versionRange = celix_utils_strdup(dep->versionRange); - info->required = dep->required; - info->count = dep->trackedSvcCount; - celixThreadMutex_unlock(&dep->mutex); - } - return info; + info->serviceName = celix_utils_strdup(dep->serviceName); + info->filter = celix_utils_strdup(dep->filter); + info->versionRange = celix_utils_strdup(dep->versionRange); + info->required = dep->required; + info->count = dep->trackedSvcCount; + celixThreadMutex_unlock(&dep->mutex); + } + return info; } diff --git a/libs/framework/src/dm_service_dependency_impl.h b/libs/framework/src/dm_service_dependency_impl.h index d8288e836..eb705e394 100644 --- a/libs/framework/src/dm_service_dependency_impl.h +++ b/libs/framework/src/dm_service_dependency_impl.h @@ -59,8 +59,8 @@ struct celix_dm_service_dependency { long svcTrackerId; // active tracker id size_t nrOfActiveStoppingTrackers; // nr of async stop tracker still active (should be 0 or 1) size_t trackedSvcCount; - size_t minimalCardinality; // minimal nr of service required for availability - void* callbackHandle; // This handle can be set to be used instead of the component implementation + size_t minimalCardinality; // minimal nr of service required for availability + void* callbackHandle; // This handle can be set to be used instead of the component implementation }; celix_status_t celix_dmServiceDependency_enable(celix_dm_service_dependency_t *dependency);
