in jackson/src/java/org/apache/fulcrum/json/jackson/JacksonMapperService.java [233:263]
public <T> String serializeOnlyFilter(Object src, Class<T> filterClass,
Boolean refreshFilter, String... filterAttr) throws Exception {
setCustomIntrospectorWithExternalFilterId(filterClass);
FilterProvider filter = null;
if (filterClass == null && src != null && src.getClass() != null) {
filterClass =(Class<T>) src.getClass();
}
if ( filterClass != null) {
if (!this.filters.containsKey(filterClass.getName())) {
getLogger().debug("filterClass::" + filterClass.getName() + " with filterAttr: " + filterAttr);
if (filterAttr != null) {
filter = new SimpleFilterProvider().addFilter(
filterClass.getName(),
SimpleBeanPropertyFilter.filterOutAllExcept(filterAttr));
this.filters.put(filterClass.getName(), filter);
} else {
filter = new SimpleFilterProvider();
this.filters.put(filterClass.getName(),filter);
}
} else {
filter = this.filters.get(filterClass.getName());
}
}
String serialized = ser(src, filter);
getLogger().debug("serialized " + serialized);
if (!cacheFilters || refreshFilter) {
removeFilterClass(filterClass);
cleanSerializerCache();
}
return serialized;
}