protected ObjectWriter createConfiguredWriter(List<JacksonMixIn> mixins) { ObjectMapper objectMapper = createDefaultObjectMapper(); objectMapper.registerModule(new ExtendedLog4j2JsonModule()); if (useAfterburner) { // com.fasterxml.jackson.module:jackson-module-afterburner required here new JacksonAfterburnerModuleConfigurer().configure(objectMapper); } for (JacksonMixIn mixin : mixins) { objectMapper.addMixIn(mixin.getTargetClass(), mixin.getMixInClass()); } return objectMapper.writer(new MinimalPrettyPrinter()); }
@Override public JacksonMixIn build() { Class targetClass = loadClass(targetClassName, "targetClass"); Class mixInClass = loadClass(mixInClassName, "mixInClass"); return new JacksonMixIn(targetClass, mixInClass); }
public static JacksonMixIn.Builder createDefaultTestBuilder() { JacksonMixIn.Builder builder = JacksonMixIn.newBuilder(); builder.withMixInClass(LogEventJacksonJsonMixIn.class.getName()); builder.withTargetClass(Log4jLogEvent.class.getName()); return builder; }
protected ObjectWriter createConfiguredWriter(List<JacksonMixIn> mixins) { ObjectMapper objectMapper = createDefaultObjectMapper(); objectMapper.registerModule(new ExtendedLog4j2JsonModule()); if (useAfterburner) { // com.fasterxml.jackson.module:jackson-module-afterburner required here new JacksonAfterburnerModuleConfigurer().configure(objectMapper); } for (JacksonMixIn mixin : mixins) { objectMapper.addMixIn(mixin.getTargetClass(), mixin.getMixInClass()); } return objectMapper.writer(new MinimalPrettyPrinter()); }
@Override public JacksonMixIn build() { Class targetClass = loadClass(targetClassName, "targetClass"); Class mixInClass = loadClass(mixInClassName, "mixInClass"); return new JacksonMixIn(targetClass, mixInClass); }
@Test public void buiderSucceedsOnValidConfig() { // given JacksonMixIn.Builder builder = createDefaultTestBuilder(); // when JacksonMixIn jacksonMixIn = builder.build(); // then assertNotNull(jacksonMixIn); assertEquals(Log4jLogEvent.class, jacksonMixIn.getTargetClass()); assertEquals(LogEventJacksonJsonMixIn.class, jacksonMixIn.getMixInClass()); }