Class JsonPointerBasedFilter


  • public class JsonPointerBasedFilter
    extends TokenFilter
    Simple TokenFilter implementation that takes a single JsonPointer and matches a single value accordingly. Instances are immutable and fully thread-safe, shareable, and efficient to use.
    Since:
    2.6
    • Constructor Detail

      • JsonPointerBasedFilter

        public JsonPointerBasedFilter​(java.lang.String ptrExpr)
      • JsonPointerBasedFilter

        public JsonPointerBasedFilter​(JsonPointer match)
    • Method Detail

      • includeElement

        public TokenFilter includeElement​(int index)
        Description copied from class: TokenFilter
        Method called to check whether array element with specified index (zero-based), at current output location, should be included in output. Three kinds of return values may be used as follows:
        • null to indicate that the Array element should be skipped
        • TokenFilter.INCLUDE_ALL to indicate that the Array element should be included completely in output
        • Any other TokenFilter implementation (possibly this one) to mean that further inclusion calls on returned filter object need to be made as necessary, to determine inclusion.

        The default implementation simply returns this to continue calling methods on this filter object, without full inclusion or exclusion.

        Overrides:
        includeElement in class TokenFilter
        Parameters:
        index - Array element index (0-based) to check
        Returns:
        TokenFilter to use for further calls within element value, unless return value is null or TokenFilter.INCLUDE_ALL (which have simpler semantics)
      • includeProperty

        public TokenFilter includeProperty​(java.lang.String name)
        Description copied from class: TokenFilter
        Method called to check whether property value with specified name, at current output location, should be included in output. Three kinds of return values may be used as follows:
        • null to indicate that the property and its value should be skipped
        • TokenFilter.INCLUDE_ALL to indicate that the property and its value should be included completely in output
        • Any other TokenFilter implementation (possibly this one) to mean that further inclusion calls on returned filter object need to be made as necessary, to determine inclusion.

        The default implementation simply returns this to continue calling methods on this filter object, without full inclusion or exclusion.

        Overrides:
        includeProperty in class TokenFilter
        Parameters:
        name - Name of Object property to check
        Returns:
        TokenFilter to use for further calls within property value, unless return value is null or TokenFilter.INCLUDE_ALL (which have simpler semantics)
      • filterStartArray

        public TokenFilter filterStartArray()
        Description copied from class: TokenFilter
        Method called to check whether Array value at current output location should be included in output. Three kinds of return values may be used as follows:
        • null to indicate that the Array should be skipped
        • TokenFilter.INCLUDE_ALL to indicate that the Array should be included completely in output
        • Any other TokenFilter implementation (possibly this one) to mean that further inclusion calls on return filter object need to be made on contained element values, as necessary. TokenFilter.filterFinishArray() will also be called on returned filter object

        Default implementation returns this, which means that checks are made recursively for elements of the array to determine possible inclusion.

        Overrides:
        filterStartArray in class TokenFilter
        Returns:
        TokenFilter to use for further calls within Array, unless return value is null or TokenFilter.INCLUDE_ALL (which have simpler semantics)
      • filterStartObject

        public TokenFilter filterStartObject()
        Description copied from class: TokenFilter
        Method called to check whether Object value at current output location should be included in output. Three kinds of return values may be used as follows:
        • null to indicate that the Object should be skipped
        • TokenFilter.INCLUDE_ALL to indicate that the Object should be included completely in output
        • Any other TokenFilter implementation (possibly this one) to mean that further inclusion calls on return filter object need to be made on contained properties, as necessary. TokenFilter.filterFinishObject() will also be called on returned filter object

        Default implementation returns this, which means that checks are made recursively for properties of the Object to determine possible inclusion.

        Overrides:
        filterStartObject in class TokenFilter
        Returns:
        TokenFilter to use for further calls within Array, unless return value is null or TokenFilter.INCLUDE_ALL (which have simpler semantics)