Class EntityExtractFilter

  • All Implemented Interfaces:
    org.forgerock.http.Filter

    public class EntityExtractFilter
    extends Object
    implements org.forgerock.http.Filter
    Extracts regular expression patterns from a message entity. Extraction occurs either before the request is handled if messageType is MessageType.REQUEST, or after the request is handled if it is MessageType.RESPONSE. Each pattern can have an associated template, which is applied to its match result.

    The extraction results are contained in a Map object, whose location is specified by the target expression. For a given matched pattern, the value stored in the map is either the result of applying its associated pattern template (if specified) or the match result itself otherwise.

    See Also:
    StreamPatternExtractor, PatternTemplate
    • Constructor Detail

      • EntityExtractFilter

        public EntityExtractFilter​(MessageType type,
                                   LeftValueExpression<?> target)
        Builds an EntityExtractFilter that will act either on MessageType.REQUEST or MessageType.RESPONSE flow, extracting patterns into the given target Expression. The Charset used is the one of the message.
        Parameters:
        type - Specifies the execution flow to be executed in
        target - Expression that yields the target object that will contain the mapped extraction results
      • EntityExtractFilter

        public EntityExtractFilter​(MessageType type,
                                   LeftValueExpression<?> target,
                                   Charset charset)
        Builds an EntityExtractFilter that will act either on MessageType.REQUEST or MessageType.RESPONSE flow, extracting patterns into the given target Expression. The Charset used is the one specified.
        Parameters:
        type - Specifies the execution flow to be executed in
        target - Expression that yields the target object that will contain the mapped extraction results
        charset - Overrides the character set encoding specified in message. If null, the message encoding is used
    • Method Detail

      • getExtractor

        public StreamPatternExtractor getExtractor()
        Returns the regular expression patterns extractor.
        Returns:
        the regular expression patterns extractor.
      • filter

        public org.forgerock.util.promise.Promise<org.forgerock.http.protocol.Response,​org.forgerock.util.promise.NeverThrowsException> filter​(org.forgerock.services.context.Context context,
                                                                                                                                                     org.forgerock.http.protocol.Request request,
                                                                                                                                                     org.forgerock.http.Handler next)
        Specified by:
        filter in interface org.forgerock.http.Filter