Class AttributesAuditExtractor

java.lang.Object
net.shibboleth.idp.profile.audit.impl.AttributesAuditExtractor
All Implemented Interfaces:
Function<ProfileRequestContext,​Collection<String>>

public class AttributesAuditExtractor
extends Object
implements Function<ProfileRequestContext,​Collection<String>>
Function that returns the attribute IDs from an AttributeContext.
  • Field Details

    • useUnfiltered

      private boolean useUnfiltered
      Extract the unfiltered attribute list instead of the filtered list.
    • activationCondition

      @Nullable private Predicate<ProfileRequestContext> activationCondition
      A predicate to control whether attributes should be extracted for logging.
    • attributeContextLookupStrategy

      @Nonnull private final Function<ProfileRequestContext,​AttributeContext> attributeContextLookupStrategy
      Lookup strategy for AttributeContext to read from.
  • Constructor Details

  • Method Details

    • setUseUnfiltered

      public void setUseUnfiltered​(boolean flag)
      Set whether to extract the list of unfiltered attributes instead of the filtered attributes.
      Parameters:
      flag - flag to set
    • setActivationCondition

      public void setActivationCondition​(@Nullable Predicate<ProfileRequestContext> condition)
      Set a condition to evaluate to control whether attributes are extracted for logging.

      This is used primarily to prevent logging of attributes for profiles in which attributes may be resolved, but not actually disclosed to a relying party.

      Parameters:
      condition - condition to evaluate
    • apply

      @Nullable public Collection<String> apply​(@Nullable ProfileRequestContext input)
      Specified by:
      apply in interface Function<ProfileRequestContext,​Collection<String>>