Interface XmlNamespaceInfoProvider


public interface XmlNamespaceInfoProvider
Mule XML extensions needs to define a XmlNamespaceProvider in which they define the extensions namespace name and the extensions xml namespace uri prefix.

The extensions namespace must much the namespace provided at the ComponentBuildingDefinitionProvider.

Since:
4.0
  • Method Details

    • loadXmlNamespaceInfoProviders

      static Stream<XmlNamespaceInfoProvider> loadXmlNamespaceInfoProviders()
      Loads the XmlNamespaceInfoProviders from the Mule container.
      Returns:
      the XmlNamespaceInfoProviders for namespaces declared within the Mule container.
    • loadXmlNamespaceInfoProviders

      static Stream<XmlNamespaceInfoProvider> loadXmlNamespaceInfoProviders(ClassLoader deployableArtifactClassLoader)
      This one exists to support the case of crafted extensions, whose XmlNamespaceInfoProvider does not precisely follow the rules defined for Mule SDKs.
      Parameters:
      deployableArtifactClassLoader - the classloader of a deployable artifact from which mule-plugins XmlNamespaceInfoProviders will be loaded.
      Returns:
      the XmlNamespaceInfoProviders for crafted extensions within the deployable artifact.
    • getXmlNamespacesInfo

      Collection<XmlNamespaceInfo> getXmlNamespacesInfo()
      Most likely, hand made extensions will return a single value since they only provide support for a namespace but for other scenarios, like extensions build with the SDK, it may provide several values.
      Returns:
      a collection of XmlNamespaceInfo with the relation between a prefix and it's namespace URI in XML.