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 Details

    • 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