Refine search
private ObjectMapper createMapper(JsonFactory mapping, ClassLoader classLoader) { ObjectMapper mapper = new ObjectMapper(mapping); mapper.addMixIn(MasterSlaveServersConfig.class, MasterSlaveServersConfigMixIn.class); mapper.addMixIn(SingleServerConfig.class, SingleSeverConfigMixIn.class); mapper.addMixIn(Config.class, ConfigMixIn.class); mapper.addMixIn(ReferenceCodecProvider.class, ClassMixIn.class); mapper.addMixIn(AddressResolverGroupFactory.class, ClassMixIn.class); mapper.addMixIn(Codec.class, ClassMixIn.class); mapper.addMixIn(RedissonNodeInitializer.class, ClassMixIn.class); mapper.addMixIn(LoadBalancer.class, ClassMixIn.class); FilterProvider filterProvider = new SimpleFilterProvider() .addFilter("classFilter", SimpleBeanPropertyFilter.filterOutAllExcept()); mapper.setFilterProvider(filterProvider); mapper.setSerializationInclusion(Include.NON_NULL); if (classLoader != null) { TypeFactory tf = TypeFactory.defaultInstance() .withClassLoader(classLoader); mapper.setTypeFactory(tf); } return mapper; }
@Test public void filters() throws JsonProcessingException { ObjectMapper objectMapper = Jackson2ObjectMapperBuilder.json() .filters(new SimpleFilterProvider().setFailOnUnknownId(false)).build(); JacksonFilteredBean bean = new JacksonFilteredBean("value1", "value2"); String output = objectMapper.writeValueAsString(bean); assertThat(output, containsString("value1")); assertThat(output, containsString("value2")); SimpleFilterProvider provider = new SimpleFilterProvider() .setFailOnUnknownId(false) .setDefaultFilter(SimpleBeanPropertyFilter.serializeAllExcept("property2")); objectMapper = Jackson2ObjectMapperBuilder.json().filters(provider).build(); output = objectMapper.writeValueAsString(bean); assertThat(output, containsString("value1")); assertThat(output, not(containsString("value2"))); }
/** * @deprecated since 2.3 */ @Deprecated public SimpleFilterProvider addFilter(String id, BeanPropertyFilter filter) { _filtersById.put(id, _convert(filter)); return this; }
private void bindAmazonInfoFilter(ObjectMapper mapper) { SimpleFilterProvider filters = new SimpleFilterProvider(); final String filterName = "exclude-amazon-info-entries"; mapper.setAnnotationIntrospector(new JacksonAnnotationIntrospector() { @Override public Object findFilterId(Annotated a) { if (Map.class.isAssignableFrom(a.getRawType())) { return filterName; } return super.findFilterId(a); } }); filters.addFilter(filterName, new SimpleBeanPropertyFilter() { @Override protected boolean include(BeanPropertyWriter writer) { return true; } @Override protected boolean include(PropertyWriter writer) { return MINI_AMAZON_INFO_INCLUDE_KEYS.contains(writer.getName()); } }); mapper.setFilters(filters); }
public static FilterProvider getFilterProvider(final String... fieldsToExclude) { if (null == fieldsToExclude || fieldsToExclude.length == 0) { // Use the 'serializeAllExcept' method so it is compatible with older versions of jackson return new SimpleFilterProvider() .addFilter(FILTER_FIELDS_BY_NAME, (BeanPropertyFilter) SimpleBeanPropertyFilter.serializeAllExcept()); } return new SimpleFilterProvider() .addFilter(FILTER_FIELDS_BY_NAME, (BeanPropertyFilter) SimpleBeanPropertyFilter.serializeAllExcept(fieldsToExclude)); }
SimpleFilterProvider filterProvider = new SimpleFilterProvider(); filterProvider.addFilter("academicPersonalInfoFilter", SimpleBeanPropertyFilter.serializeAllExcept("motherName", "fatherName")); ObjectMapper mapper = new ObjectMapper(); mapper.setFilters(filterProvider); mapper.writeValueAsString(academicInfo);
public void dontWriteSomtimes(So so) { ObjectMapper mapper = new ObjectMapper(); FilterProvider filters = new SimpleFilterProvider() .addFilter("filterByName", SimpleBeanPropertyFilter.serializeAllExcept("somtimeIgnore")); ObjectWriter writer = mapper.writer(filters); try { System.out.println(writer.writeValueAsString(so)); } catch (Exception e) { e.printStackTrace(); } }
@ExceptionHandler(CerebroException.class) @ResponseStatus(value = HttpStatus.INTERNAL_SERVER_ERROR) public String getErrorCode(final CerebroException exception) throws IOException { LOGGER.error("Service error", exception); ObjectMapper objectMapper = new ObjectMapper(); FilterProvider filterProvider = new SimpleFilterProvider().addFilter("responseFilter", SimpleBeanPropertyFilter.filterOutAllExcept("errorCode", "errorMessage")); objectMapper.setFilterProvider(filterProvider); return objectMapper.writeValueAsString(exception); } }
FilterProvider filters = new SimpleFilterProvider().addFilter("myFilter", myFilter); String json = new ObjectMapper().writer(filters).writeValueAsString(myValueObject);
/** * Configure ObjectMapper to filter out fields causing serialization problems */ public SyndEntryJsonTransformer() { mapper = new ObjectMapper(); mapper.addMixInAnnotations(SyndEntry.class,this.getClass()); FilterProvider filterProvider = new SimpleFilterProvider() .addFilter("foreignMarkup filter", SimpleBeanPropertyFilter.serializeAllExcept("foreignMarkup")); mapper.setFilters(filterProvider); }
ObjectMapper om = xml ? new XmlMapper() : new ObjectMapper(); if (xml) { ((XmlMapper)om).configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true); om.setSerializationInclusion(JsonInclude.Include.NON_NULL); mod.addDeserializer(CachedWorld.class, new CachedWorldDeserializer()); mod.addDeserializer(CachedCatalogType.class, new CachedCatalogTypeDeserializer<>(CatalogType.class)); om.registerModule(mod); SimpleFilterProvider filterProvider = new SimpleFilterProvider(); filterProvider.addFilter(BaseFilter.ID, new BaseFilter(details, perms)); om.setFilterProvider(filterProvider);
/** * Create a new JsonManager * @param theClass The class to create a json manager for (yes, also in the diamonds). */ public JsonManager (Class<T> theClass) { this.theClass = theClass; this.mapper = new ObjectMapper(); mapper.addMixInAnnotations(Rectangle2D.class, Rectangle2DMixIn.class); mapper.registerModule(new GeoJsonModule()); SimpleModule deser = new SimpleModule(); deser.addDeserializer(LocalDate.class, new JacksonSerializers.LocalDateStringDeserializer()); deser.addSerializer(LocalDate.class, new JacksonSerializers.LocalDateStringSerializer()); deser.addDeserializer(Rectangle2D.class, new Rectangle2DDeserializer()); mapper.registerModule(deser); mapper.getSerializerProvider().setNullKeySerializer(new JacksonSerializers.MyDtoNullKeySerializer()); filters = new SimpleFilterProvider(); filters.addFilter("bbox", SimpleBeanPropertyFilter.filterOutAllExcept("west", "east", "south", "north")); this.writer = mapper.writer(filters); }
private String toJson(Object instance) throws JsonProcessingException { ObjectMapper objectMapper = new ObjectMapper(); objectMapper.addMixIn(Object.class, PropertyFilterMixIn.class); objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); SimpleBeanPropertyFilter theFilter = SimpleBeanPropertyFilter .serializeAllExcept("lastUpdated"); FilterProvider filters = new SimpleFilterProvider() .addFilter("skipLastUpdated", theFilter); objectMapper.enable(SerializationFeature.INDENT_OUTPUT); return objectMapper.writer(filters).writeValueAsString(instance); } }
/** * Construct. */ public JsonRequestLogger() { mapper = new ObjectMapper(); mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); SimpleFilterProvider filters = new SimpleFilterProvider(); filters.addFilter("default", SimpleBeanPropertyFilter.serializeAllExcept("eventTarget", "responseTarget")); mapper.setFilterProvider(filters); mapper.setAnnotationIntrospector(new FilteredIntrospector()); }
/** * Initialize the Jackson json object mapper */ protected void initJsonMapper() { jsonMapper = new ObjectMapper(); jsonMapper.registerModule(new IbdoModule()); jsonMapper.addMixIn(IBaseDataObject.class, IbdoMixin.class); // the id in addFilter must match the annotation for JsonFilter jsonMapper.setFilterProvider(new SimpleFilterProvider().addFilter("param_filter", new IbdoParameterFilter())); }
ObjectMapper mapper = new ObjectMapper(); // add module for meta data permissions SimpleModule module = new SimpleModule("IncludeMetaData", new Version(0, 1, 0, "alpha")); module.addSerializer(MetaClass.class, new MetaDataSerializer(permissions, p instanceof AbstractBean ? ((AbstractBean) p).isOwner() : false)); mapper.registerModule(module); // ignore missing filters mapper.setFilters(new SimpleFilterProvider().setFailOnUnknownId(false)); return mapper.writerWithView(Views.Admin.class).writeValueAsString(p)
@Override public void build(Writer writer) throws Exception { ObjectMapper mapper = new ObjectMapper(); mapper.setSerializationInclusion(Include.NON_NULL); mapper.addMixInAnnotations(Object.class, DynamicPropertyFilterMixin.class); FilterProvider filterProvider = new SimpleFilterProvider() .addFilter("dynamicPropertyFilter", SimpleBeanPropertyFilter.serializeAllExcept(getExcludedProperties())); mapper.writer(filterProvider).writeValue(writer, getRootObject()); }
ObjectMapper mapper = new ObjectMapper(); mapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS); mapper.setVisibility(PropertyAccessor.FIELD, Visibility.ANY); SimpleFilterProvider filterP = new SimpleFilterProvider().addFilter("loginResp", SimpleBeanPropertyFilter.filterOutAllExcept("username")); mapper.setFilterProvider(filterP);
final SimpleFilterProvider filterProvider = new SimpleFilterProvider(); filterProvider.addFilter("myFilter1", SimpleBeanPropertyFilter.filterOutAllExcept("prop1")); filterProvider.addFilter("myFilter2", SimpleBeanPropertyFilter.serializeAllExcept("prop2")); final ObjectMapper mapper = new ObjectMapper(); mapper.setFilters(filterProvider); System.out.println(mapper .writerWithDefaultPrettyPrinter() .writeValueAsString(bar));
@Test public void processShouldReturnPropertyFilterWhenFilteringHeadersRequested() throws Exception { MessageManager inbox = mailboxManager.getMailbox(inboxPath, session); ComposedMessageId message1 = inbox.appendMessage( AppendCommand.from( org.apache.james.mime4j.dom.Message.Builder.of() .setFrom("user@domain.tld") .setField(new RawField("header1", "Header1Content")) .setField(new RawField("HEADer2", "Header2Content")) .setSubject("message 1 subject") .setBody("my message", StandardCharsets.UTF_8)), session); GetMessagesRequest request = GetMessagesRequest.builder() .ids(ImmutableList.of(message1.getMessageId())) .properties(ImmutableList.of("headers.from", "headers.heADER2")) .build(); List<JmapResponse> result = testee.process(request, clientId, session).collect(Collectors.toList()); assertThat(result) .hasSize(1) .extracting(JmapResponse::getFilterProvider) .are(new Condition<>(Optional::isPresent, "present")); SimpleFilterProvider actualFilterProvider = result.get(0).getFilterProvider().get(); ObjectMapper objectMapper = new ObjectMapper(); objectMapper.setFilterProvider(actualFilterProvider.setDefaultFilter(SimpleBeanPropertyFilter.serializeAll())); String response = objectMapper.writer().writeValueAsString(result.get(0)); assertThat(JsonPath.parse(response).<Map<String, String>>read("$.response.list[0].headers")).containsOnly(MapEntry.entry("From", "user@domain.tld"), MapEntry.entry("HEADer2", "Header2Content")); }