Class SimpleFilterProvider
- java.lang.Object
-
- com.fasterxml.jackson.databind.ser.FilterProvider
-
- com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider
-
- All Implemented Interfaces:
Serializable
public class SimpleFilterProvider extends FilterProvider implements Serializable
SimpleFilterProviderimplementation that just stores direct id-to-filter mapping.Note that version 2.3 was a partial rewrite, now that
PropertyFilteris set to replaceBeanPropertyFilter.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean_cfgFailOnUnknownIdFlag that indicates whether request for an unknown filter id should result an exception (default) or not.protected PropertyFilter_defaultFilterThis is the filter we return in case no mapping was found for given id; default is 'null' (in which case caller typically reports an error), but can be set to an explicit filter.protected Map<String,PropertyFilter>_filtersByIdMappings from ids to filters.
-
Constructor Summary
Constructors Constructor Description SimpleFilterProvider()SimpleFilterProvider(Map<String,?> mapping)
-
Method Summary
-
-
-
Field Detail
-
_filtersById
protected final Map<String,PropertyFilter> _filtersById
Mappings from ids to filters.
-
_defaultFilter
protected PropertyFilter _defaultFilter
This is the filter we return in case no mapping was found for given id; default is 'null' (in which case caller typically reports an error), but can be set to an explicit filter.
-
_cfgFailOnUnknownId
protected boolean _cfgFailOnUnknownId
Flag that indicates whether request for an unknown filter id should result an exception (default) or not. Note that this is only relevant if no default filter has been configured.
-
-
Method Detail
-
setDefaultFilter
@Deprecated public SimpleFilterProvider setDefaultFilter(BeanPropertyFilter f)
Deprecated.Since 2.3 should usePropertyFilterinstead ofBeanPropertyFilterMethod for defining filter to return for "unknown" filters; cases where there is no mapping from given id to an explicit filter.- Parameters:
f- Filter to return when no filter is found for given id
-
setDefaultFilter
public SimpleFilterProvider setDefaultFilter(PropertyFilter f)
-
setDefaultFilter
public SimpleFilterProvider setDefaultFilter(SimpleBeanPropertyFilter f)
Overloaded variant just to resolve "ties" when usingSimpleBeanPropertyFilter.
-
getDefaultFilter
public PropertyFilter getDefaultFilter()
-
setFailOnUnknownId
public SimpleFilterProvider setFailOnUnknownId(boolean state)
-
willFailOnUnknownId
public boolean willFailOnUnknownId()
-
addFilter
@Deprecated public SimpleFilterProvider addFilter(String id, BeanPropertyFilter filter)
Deprecated.since 2.3
-
addFilter
public SimpleFilterProvider addFilter(String id, PropertyFilter filter)
-
addFilter
public SimpleFilterProvider addFilter(String id, SimpleBeanPropertyFilter filter)
Overloaded variant just to resolve "ties" when usingSimpleBeanPropertyFilter.
-
removeFilter
public PropertyFilter removeFilter(String id)
-
findFilter
@Deprecated public BeanPropertyFilter findFilter(Object filterId)
Deprecated.Description copied from class:FilterProviderLookup method used to findBeanPropertyFilterthat has specified id. Note that id is typically aString, but is not necessarily limited to that; that is, while standard components use String, custom implementation can choose other kinds of keys.- Specified by:
findFilterin classFilterProvider- Returns:
- Filter registered with specified id, if one defined; null if none found.
-
findPropertyFilter
public PropertyFilter findPropertyFilter(Object filterId, Object valueToFilter)
Description copied from class:FilterProviderLookup method used to findPropertyFilterthat has specified id. Note that id is typically aString, but is not necessarily limited to that; that is, while standard components use String, custom implementation can choose other kinds of keys.This method is the replacement for
FilterProvider.findFilter(java.lang.Object)starting with 2.3.Note that the default implementation is designed to support short-term backwards compatibility, and will call the deprecated
findFiltermethod, then wrap filter if one found asPropertyFilter. It should be overridden by up-to-date implementations- Overrides:
findPropertyFilterin classFilterProvider- Parameters:
filterId- Id of the filter to fetchvalueToFilter- Object being filtered (usually POJO, but may be aMap, or in future a container), if available; not available when generating schemas.- Returns:
- Filter to use, if any.
-
-