类com.fasterxml.jackson.databind.ser.VirtualBeanPropertyWriter源码实例Demo

下面列出了怎么用com.fasterxml.jackson.databind.ser.VirtualBeanPropertyWriter的API类实例代码及写法,或者点击链接到github查看源代码。

@Test
public void virtualPropertyWriterInstanceReturnsSingleton() {

    // given
    VirtualProperty[] customProperties = new VirtualProperty[0];
    Log4j2Lookup valueResolver = new Log4j2Lookup(null);
    JacksonHandlerInstantiator handlerInstantiator = createTestHandlerInstantiator(customProperties, valueResolver);

    MapperConfig config = new ObjectMapper().getSerializationConfig();

    // when
    VirtualBeanPropertyWriter result1 = handlerInstantiator.virtualPropertyWriterInstance(
            config,
            VirtualPropertiesWriter.class
    );
    VirtualBeanPropertyWriter result2 = handlerInstantiator.virtualPropertyWriterInstance(
            config,
            VirtualPropertiesWriter.class
    );

    // then
    Assert.assertTrue(result1 == result2);

}
 
@Override
public VirtualBeanPropertyWriter withConfig(MapperConfig<?> config,
        AnnotatedClass declaringClass, BeanPropertyDefinition propDef,
        JavaType type)
{
    return new CustomVProperty(propDef, declaringClass.getAnnotations(), type);
}
 
/** @since 4.3 */
@Override
public VirtualBeanPropertyWriter virtualPropertyWriterInstance(MapperConfig<?> config, Class<?> implClass) {
	return (VirtualBeanPropertyWriter) this.beanFactory.createBean(implClass);
}
 
/** @since 4.3 */
@Override
public VirtualBeanPropertyWriter virtualPropertyWriterInstance(MapperConfig<?> config, Class<?> implClass) {
	return (VirtualBeanPropertyWriter) this.beanFactory.createBean(implClass);
}
 
源代码5 项目: lams   文件: SpringHandlerInstantiator.java
/** @since 4.3 */
@Override
public VirtualBeanPropertyWriter virtualPropertyWriterInstance(MapperConfig<?> config, Class<?> implClass) {
	return (VirtualBeanPropertyWriter) this.beanFactory.createBean(implClass);
}
 
源代码6 项目: lams   文件: AttributePropertyWriter.java
/**
 * Since this method should typically not be called on this sub-type,
 * default implementation simply throws an {@link IllegalStateException}.
 */
@Override
public VirtualBeanPropertyWriter withConfig(MapperConfig<?> config,
        AnnotatedClass declaringClass, BeanPropertyDefinition propDef, JavaType type) {
    throw new IllegalStateException("Should not be called on this type");
}
 
源代码7 项目: jackson-modules-base   文件: JsonAppendTest.java
@Override
public VirtualBeanPropertyWriter withConfig(MapperConfig<?> config, AnnotatedClass declaringClass,
        BeanPropertyDefinition propDef, JavaType type) {
    return new MyVirtualPropertyWriter(propDef, declaringClass.getAnnotations(), type);
}
 
源代码8 项目: lams   文件: HandlerInstantiator.java
/**
 * Method called to construct a {@link VirtualBeanPropertyWriter} instance
 * of specified type.
 *
 * @since 2.5
 */
public VirtualBeanPropertyWriter virtualPropertyWriterInstance(MapperConfig<?> config,
        Class<?> implClass) {
    return null;
}
 
 同包方法