private Holder()

in src/main/java/org/apache/sling/sitemap/impl/builder/extensions/ExtensionProviderManager.java [116:137]


        private Holder(ServiceReference<SitemapExtensionProvider> ref) {
            this.ref = ref;
            prefix = Objects
                    .requireNonNull((String) ref.getProperty(SitemapExtensionProvider.PROPERTY_PREFIX), "prefix missing");
            namespace = Objects
                    .requireNonNull((String) ref.getProperty(SitemapExtensionProvider.PROPERTY_NAMESPACE), "namespace missing");
            localName = Objects
                    .requireNonNull((String) ref.getProperty(SitemapExtensionProvider.PROPERTY_LOCAL_NAME), "local name missing");
            extensionInterface = Objects
                    .requireNonNull((String) ref.getProperty(SitemapExtensionProvider.PROPERTY_INTERFACE), "interface missing");

            Object emptyTagProp = ref.getProperty(SitemapExtensionProvider.PROPERTY_EMPTY_TAG);

            if (emptyTagProp instanceof Boolean) {
                emptyTag = (Boolean) emptyTagProp;
            } else if (emptyTagProp instanceof String) {
                emptyTag = Boolean.parseBoolean((String) emptyTagProp);
            } else {
                emptyTag = false;
                LOG.debug("Unknown type for emptyTag: {}", emptyTagProp);
            }
        }