public static ObjectMapper createDefaultMapper() { final ObjectMapper mapper = new ObjectMapper(); mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); mapper.configure(SerializationFeature.CLOSE_CLOSEABLE, true); mapper.disable(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE); mapper.registerModule(CloseableIterableDeserializer.getModule()); // Allow unknown properties. This will help to avoid conflicts between Gaffer versions. mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, STRICT_JSON_DEFAULT); // Using the deprecated version for compatibility with older versions of jackson mapper.registerModule(new JSR310Module()); // Use the 'setFilters' method so it is compatible with older versions of jackson mapper.setFilters(getFilterProvider()); // Allow simple class names or full class names to be used in JSON. // We must set this to true to ensure serialisation into json uses the // full class name. Otherwise, json deserialisation may fail on worker nodes in Accumulo/HBase. SimpleClassNameCache.setUseFullNameForSerialisation(true); SimpleClassNameIdResolver.configureObjectMapper(mapper); return mapper; }
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 void setFilter(FilterProvider filter){ OBJECT_MAPPER.setFilters(filter); }
ObjectMapper mapper = new ObjectMapper(); mapper.setFilters(new FilteredResultProvider());
RestAssured.config = RestAssuredConfig.config().objectMapperConfig(new ObjectMapperConfig().jackson2ObjectMapperFactory( new Jackson2ObjectMapperFactory() { @Override public ObjectMapper create(Class aClass, String s) { FilterProvider filter = new SimpleFilterProvider().addFilter(...); ObjectMapper objectMapper = new ObjectMapper(); objectMapper.setFilters(filter); return objectMapper; } } ));
public static ObjectMapper buildObjectMapper() { final JsonFactory factory = new JsonFactory(); final ObjectMapper mapper = new ObjectMapper(factory); mapper.setFilters(TaggedLogAPIEntity.getFilterProvider()); return mapper; } }
protected static String marshall(List<?> entities) throws JsonMappingException, JsonGenerationException, IOException { final JsonFactory factory = new JsonFactory(); final ObjectMapper mapper = new ObjectMapper(factory); mapper.setFilters(TaggedLogAPIEntity.getFilterProvider()); return mapper.writeValueAsString(entities); }
ObjectMapper objectMapper = new ObjectMapper(); PropertyFilter propertyFilter = new IgnoreCCFilter(); objectMapper.setFilters(new SimpleFilterProvider( Collections.singletonMap("ignoreCCFields", propertyFilter)) );
ObjectMapper mapper = new ObjectMapper(); SimpleFilterProvider simpleFilterProvider = new SimpleFilterProvider() .addFilter("myUser", simpleBeanPropertyFilter.filterOutAllExcept("username")); mapper.setFilters(filterProvider); return mapper.writeValueAsString(user);
SimpleFilterProvider filterProvider = new SimpleFilterProvider(); filterProvider.addFilter("academicPersonalInfoFilter", SimpleBeanPropertyFilter.serializeAllExcept("motherName", "fatherName")); ObjectMapper mapper = new ObjectMapper(); mapper.setFilters(filterProvider); mapper.writeValueAsString(academicInfo);
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)
@Test public void testJsonRoundtrip() throws IOException { final FilterProvider filters = new SimpleFilterProvider().addFilter("allFilter", allFilter); final EODPrice eodPriceWithAll = new EODPrice(BigDecimal.ONE, BigDecimal.ONE, BigDecimal.ONE, BigDecimal.ONE); final EODPrice eodPriceWithoutAll = new EODPrice(BigDecimal.TEN, BigDecimal.ONE, BigDecimal.ONE, BigDecimal.ONE); final ObjectMapper mapper = new ObjectMapper(); mapper.setFilters(filters); // First, test serialization final String eodWithAllAsStr = mapper.writeValueAsString(eodPriceWithAll); final String eodWithoutAllAsStr = mapper.writeValueAsString(eodPriceWithoutAll); Assert.assertTrue(eodWithAllAsStr.contains("all")); Assert.assertFalse(eodWithoutAllAsStr.contains("all")); // Then, test deserialization final EODPrice eodPriceWithAll2 = mapper.readValue(eodWithAllAsStr, EODPrice.class); final EODPrice eodPriceWithoutAll2 = mapper.readValue(eodWithoutAllAsStr, EODPrice.class); Assert.assertTrue(eodPriceWithAll2.allFieldsEqual()); Assert.assertFalse(eodPriceWithoutAll2.allFieldsEqual()); }
/** * 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); }
/** * Returns a prepared copy of the ObjectMapper with the filters set to the * current arguments. * * @param filters * The filters to be used * @return The prepared {@link ObjectMapper} ready for filtering */ public ObjectMapper buildObjectMapper(final String... filters) { ObjectMapper copyForFilter = getObjectMapper().copy(); copyForFilter.setFilters(buildFilterProvider(filters)); return copyForFilter; }
/** * Returns a prepared copy of the ObjectMapper with the filters set to the * current arguments. * * @param filters * The filters to be used * @return The prepared {@link ObjectMapper} ready for filtering */ public ObjectMapper buildObjectMapper(final String... filters) { ObjectMapper copyForFilter = getObjectMapper().copy(); copyForFilter.setFilters(buildFilterProvider(filters)); return copyForFilter; }
@BeforeClass public static void setUp() { objectMapper = new ObjectMapper(); objectMapper.setFilters(TaggedLogAPIEntity.getFilterProvider()); objectMapper.registerModule(new EntityJsonModule()); }
@BeforeClass public static void setup() throws IllegalDataStorageTypeException, IOException { MAPPER.setFilters(TaggedLogAPIEntity.getFilterProvider()); MAPPER.registerModule(new EntityJsonModule()); } @Test
protected void init() { mapper.addMixInAnnotations(Object.class, PropertyFilterMixIn.class); mapper.setVisibility(PropertyAccessor.FIELD, Visibility.NONE); mapper.setVisibility(PropertyAccessor.GETTER, Visibility.PROTECTED_AND_PUBLIC); mapper.setVisibility(PropertyAccessor.SETTER, Visibility.PROTECTED_AND_PUBLIC); registerModules(mapper); mapper.configure(MapperFeature.REQUIRE_SETTERS_FOR_GETTERS, true); mapper.setPropertyNamingStrategy(getPropertyNamingStrategy()); SimpleFilterProvider provider = new SimpleFilterProvider(); provider.addFilter("property_filter", SimpleBeanPropertyFilter.serializeAllExcept(Sets.<String>newHashSet())); mapper.setFilters(provider); }
@BeforeClass public static void setupMapper() throws IllegalDataStorageTypeException, IOException { MAPPER.setFilters(TaggedLogAPIEntity.getFilterProvider()); MAPPER.registerModule(new EntityJsonModule()); }
@Override public void setupModule(SetupContext context) { context.setMixInAnnotations(Object.class, PropertyFilterMixIn.class); ((ObjectMapper) context.getOwner()).setFilters(new SimpleFilterProvider().addFilter("property_filter", SimpleBeanPropertyFilter.serializeAllExcept(new String[0]))); super.setupModule(context); } }