Class NodeProcessingMetadataFilter

  • All Implemented Interfaces:
    net.shibboleth.utilities.java.support.component.Component, net.shibboleth.utilities.java.support.component.DestructableComponent, net.shibboleth.utilities.java.support.component.InitializableComponent, org.opensaml.saml.metadata.resolver.filter.MetadataFilter

    public class NodeProcessingMetadataFilter
    extends net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
    implements org.opensaml.saml.metadata.resolver.filter.MetadataFilter
    An implementation of MetadataFilter which applies a MetadataNodeProcessor to each element node in the metadata document tree. The node processors will be applied in the order of List provided by setNodeProcessors(List). The metadata document tree is traversed depth-first.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private List<org.opensaml.saml.metadata.resolver.filter.MetadataNodeProcessor> processors
      The ordered list of metadata node processors.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void doDestroy()
      org.opensaml.core.xml.XMLObject filter​(org.opensaml.core.xml.XMLObject metadata, org.opensaml.saml.metadata.resolver.filter.MetadataFilterContext context)
      List<org.opensaml.saml.metadata.resolver.filter.MetadataNodeProcessor> getNodeProcessors()
      Get the list of metadata node processors.
      protected void processNode​(org.opensaml.core.xml.XMLObject node)
      Process an individual metadata node.
      void setNodeProcessors​(List<org.opensaml.saml.metadata.resolver.filter.MetadataNodeProcessor> newProcessors)
      Set the list of metadata node processors.
      • Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent

        destroy, doInitialize, initialize, isDestroyed, isInitialized
    • Field Detail

      • processors

        @Nonnull
        @NonnullElements
        private List<org.opensaml.saml.metadata.resolver.filter.MetadataNodeProcessor> processors
        The ordered list of metadata node processors.
    • Constructor Detail

      • NodeProcessingMetadataFilter

        public NodeProcessingMetadataFilter()
        Constructor.
    • Method Detail

      • getNodeProcessors

        @Nonnull
        @NonnullElements
        @Live
        public List<org.opensaml.saml.metadata.resolver.filter.MetadataNodeProcessor> getNodeProcessors()
        Get the list of metadata node processors.
        Returns:
        the list of metadata node processors
      • setNodeProcessors

        public void setNodeProcessors​(@Nonnull @NonnullElements
                                      List<org.opensaml.saml.metadata.resolver.filter.MetadataNodeProcessor> newProcessors)
        Set the list of metadata node processors.
        Parameters:
        newProcessors - the new list of processors to set.
      • filter

        @Nullable
        public org.opensaml.core.xml.XMLObject filter​(@Nullable
                                                      org.opensaml.core.xml.XMLObject metadata,
                                                      @Nonnull
                                                      org.opensaml.saml.metadata.resolver.filter.MetadataFilterContext context)
                                               throws org.opensaml.saml.metadata.resolver.filter.FilterException
        Specified by:
        filter in interface org.opensaml.saml.metadata.resolver.filter.MetadataFilter
        Throws:
        org.opensaml.saml.metadata.resolver.filter.FilterException
      • doDestroy

        protected void doDestroy()
        Overrides:
        doDestroy in class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
      • processNode

        protected void processNode​(org.opensaml.core.xml.XMLObject node)
                            throws org.opensaml.saml.metadata.resolver.filter.FilterException
        Process an individual metadata node.
        Parameters:
        node - the metadata node to process.
        Throws:
        org.opensaml.saml.metadata.resolver.filter.FilterException - if a fatal error is encountered while processing a node