Interface SitemapExtensionProvider


  • @ConsumerType
    public interface SitemapExtensionProvider
    To provide an implementation for a defined sub type of Extension an SitemapExtensionProvider needs to be registered as OSGI service.

    In order to hide the implementation detail of an extension from the the consumer API, the return type of newInstance() is AbstractExtension, the provider facing API of the extension. However to use the returned instance, it has to also implement the extension sub type interface and be registered with it's full qualified class name.

    There may be multiple SitemapExtensionProviders using the same namespace. If so the one with the highest ranking according to the OSGI specification will define the namespace's prefix, which means that lower ranking services may use another prefix then they were registered with.

    • Field Detail

      • PROPERTY_INTERFACE

        static final java.lang.String PROPERTY_INTERFACE
        The mandatory property to set to the Extension sub-type.
        See Also:
        Constant Field Values
      • PROPERTY_PREFIX

        static final java.lang.String PROPERTY_PREFIX
        The xml namespace prefix to use for the extension.
        See Also:
        Constant Field Values
      • PROPERTY_NAMESPACE

        static final java.lang.String PROPERTY_NAMESPACE
        The xml namespace to use for the extension.
        See Also:
        Constant Field Values
      • PROPERTY_LOCAL_NAME

        static final java.lang.String PROPERTY_LOCAL_NAME
        The local tag name to use when adding the extension to the sitemap xml.
        See Also:
        Constant Field Values
      • PROPERTY_EMPTY_TAG

        static final java.lang.String PROPERTY_EMPTY_TAG
        An optional property to be set for extensions that only write attributes to the added xml tag and want to make use of an empty-tag. If not set an open and close tag will be written.
        See Also:
        Constant Field Values