Hi Pepijn,
solved my problem - thanks for your help!
Regards,
Bjoern
Am 2013-02-17 21:11, schrieb Pepijn Noltes:
> Hi Bjorn,
>
>
> On Fri, Feb 15, 2013 at 6:12 PM, Björn Petri
> <bjoern.petri@sundevil.de>wrote:
>
>>
>>
>> Hi!
>>
>> I tried to get the celix framework uuid by using the following:
>>
>> /* get framework uuid */
>> status = bundleContext_getProperty(bi->**context,
>> "endpoint.framework.uuid", &uuidStr)
>>
>> Unfortunately it does not work ;(. Does anyone have an idea how
>> to get the framework uuid?
>>
>
> The property endpoint.framework.uuid is used in the remote service
> admin, I
> think the property you are looking for is FRAMEWORK_UUID
> (org.osgi.framework.uuid). Apache Celix does not support this yet. I
> will
> try to add this in the coming days.
>
> In the meantime if you just need a unique id, you could also generate
> one
> with apr_utils. The endpoint.framework.uuid is generated in same way:
>
> celix_status_t remoteServicesUtils_getUUID(apr_pool_t *pool,
> BUNDLE_CONTEXT
> context, char **uuidStr) {
> celix_status_t status = CELIX_SUCCESS;
>
> status = bundleContext_getProperty(context,
> ENDPOINT_FRAMEWORK_UUID, uuidStr);
> if (status == CELIX_SUCCESS) {
> if (*uuidStr == NULL) {
> *uuidStr = apr_palloc(pool,
> APR_UUID_FORMATTED_LENGTH + 1);
> if (!*uuidStr) {
> status = CELIX_ENOMEM;
> } else {
> apr_uuid_t uuid;
> apr_uuid_get(&uuid);
> apr_uuid_format(*uuidStr, &uuid);
> setenv(ENDPOINT_FRAMEWORK_UUID,
> *uuidStr,
> 1);
> }
> }
> }
>
> return status;
> }
>
>
> I hope this helps.
>
> Greetings,
> Pepijn
|