Interface MetadataFilter

All Known Implementing Classes:
AlgorithmFilter, ByReferenceMetadataFilter, EntityAttributesFilter, EntityRoleFilter, MetadataFilterChain, NameIDFormatFilter, NodeProcessingMetadataFilter, PredicateFilter, RequiredValidUntilFilter, SchemaValidationFilter, SignatureValidationFilter

public interface MetadataFilter
A metadata filter is used to process a metadata document after it has been unmarshalled into an instance of XMLObject, either an EntityDescriptor or an EntitiesDescriptor.

Some example filters might remove everything but identity providers roles, decreasing the data a service provider needs to work with, or a filter could be used to perform integrity checking on the retrieved metadata by verifying a digital signature.

If a filter wishes to completely remove the top-level document element, or otherwise indicate that it has successfully produced an empty data set from the input document, null may be returned by the filter's filter(XMLObject, MetadataFilterContext) method.

  • Method Summary

    Modifier and Type Method Description
    XMLObject filter​(XMLObject metadata, MetadataFilterContext context)
    Filters the given metadata, perhaps to remove elements that are not wanted.
  • Method Details

    • filter

      @Nullable XMLObject filter​(@Nullable XMLObject metadata, @Nonnull MetadataFilterContext context) throws FilterException
      Filters the given metadata, perhaps to remove elements that are not wanted.
      Parameters:
      metadata - the metadata to be filtered.
      context - the metadata filter context
      Returns:
      the filtered XMLObject, which may or may not be the same as the XMLObject instance passed in to the method. Maybe be null, for example if the top-level element was removed by the filter.
      Throws:
      FilterException - thrown if an error occurs during the filtering process