Hi Daniel,

Only looked at your groovy script after I wrote the mail and I see that it
does pretty much exactly what I described :)
The RegionConfiguration class also allows dynamic changes to the
configuration which can be found via ConfigAdmin.

Cheers,

David

On Sun, 22 Aug 2021 at 22:49, David Bosschaert <david.bosscha...@gmail.com>
wrote:

> Hi Daniel,
>
> You can find the API Regions definitions via the ResolverHookFactory
> service that implements the API Regions at runtime. Just look for the
> ResolverHookFactory service and then check its *.properties service
> registration properties. They contain the full path of the associated files:
>
> [org.osgi.framework.hooks.resolver.ResolverHookFactory]
> bundles.properties=.../bundles.properties
> features.properties=.../features.properties
> idbsnver.properties=.../idbsnver.properties
> regions.properties=.../regions.properties
>
> These files are the definition of the API Regions behaviour, so you can
> use them to generate a report, or look at them to see how the service is
> configured.
>
> Kind regards,
>
> David
>
>
> On Sun, 22 Aug 2021 at 18:49, Daniel Klco <dk...@apache.org> wrote:
>
>> All,
>>
>> Is there a way to see a report on the API regions for an instance as a
>> consumer / extender of Sling?
>>
>> It seems like all of the information you'd need is in the API Regions
>> Runtime RegionConfiguration[1] class, but that's not in an exposed
>> package.
>>
>> The case I'm thinking of is if you are a customizer of a Sling-based app
>> and are importing a package that was not exposed in the API region of your
>> bundle, how would you diagnose why the package is not resolving even
>> though
>> it is exported? If you don't have direct access to the model used to
>> create
>> that app (or if you aren't familiar with reading model files), I can't see
>> how you could diagnose the issue.
>>
>> I wrote up a groovy script to dump this configuration, but, it's more than
>> a little hack-y:
>> https://gist.github.com/klcodanr/28385db0ce6df72be36a4f60b433a8ec
>>
>> If there's not a good way currently, would others see value in having a
>> status web console to dump this information?
>>
>> -Dan
>>
>> [1]
>>
>> https://github.com/apache/sling-org-apache-sling-feature-apiregions/blob/master/src/main/java/org/apache/sling/feature/apiregions/impl/RegionConfiguration.java
>>
>

Reply via email to