Interface MetadataConfigDescriptionProvider


  • @NonNullByDefault
    public interface MetadataConfigDescriptionProvider
    A MetadataConfigDescriptionProvider implementation can be registered as an OSGi service in order to give guidance to UIs what metadata namespaces should be available and what metadata properties are expected.

    It will be tracked by the framework and the given information will be translated into config descriptions.

    Every extension which deals with specific metadata (in its own namespace) is expected to provide an implementation of this interface.

    Author:
    Simon Kaufmann - Initial contribution
    • Method Detail

      • getNamespace

        String getNamespace()
        Get the identifier of the metadata namespace
        Returns:
        the metadata namespace
      • getDescription

        @Nullable String getDescription​(@Nullable Locale locale)
        Get the human-readable description of the metadata namespace

        Overriding this method is optional - it will default to the namespace identifier.

        Parameters:
        locale - a locale, if available
        Returns:
        the metadata namespace description
      • getParameterOptions

        @Nullable List<ParameterOption> getParameterOptions​(@Nullable Locale locale)
        Get all valid options if the main metadata value should be restricted to certain values.
        Parameters:
        locale - a locale, if available
        Returns:
        a list of parameter options or null
      • getParameters

        @Nullable List<ConfigDescriptionParameter> getParameters​(String value,
                                                                 @Nullable Locale locale)
        Get the config descriptions for all expected parameters.

        This list may depend on the current "main" value

        Parameters:
        value - the current "main" value
        locale - a locale, if available
        Returns:
        a list of config description parameters or null