Java 类com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitable 实例源码

项目:joyplus-tv    文件:EnumMapSerializer.java   
@Override
    public void acceptJsonFormatVisitor(JsonFormatVisitorWrapper visitor, JavaType typeHint)
        throws JsonMappingException
    {
        JsonObjectFormatVisitor objectVisitor = visitor.expectObjectFormat(typeHint);
        /*
        JavaType enumType = typeHint.containedType(0);
        if (enumType == null) {
            enumType = visitor.getProvider().constructType(Object.class);
        }
        */
        JavaType valueType = typeHint.containedType(1);
        if (valueType == null) {
            valueType = visitor.getProvider().constructType(Object.class);
        }
        JsonSerializer<Object> ser = _valueSerializer;
//        Class<Enum<?>> enumClass = (Class<Enum<?>>) enumType.getRawClass();
        for (Map.Entry<?,SerializedString> entry : _keyEnums.internalMap().entrySet()) {
            String name = entry.getValue().getValue();
            // should all have the same type, so:
            if (ser == null) {
                ser = visitor.getProvider().findValueSerializer(entry.getKey().getClass(), _property);
            }
            objectVisitor.property(name, (JsonFormatVisitable) ser, valueType);
        }
    }
项目:spring-auto-restdocs    文件:FieldDocumentationArrayVisitor.java   
@Override
public void itemsFormat(JsonFormatVisitable handler, JavaType elementType)
        throws JsonMappingException {
    String elementPath = path + "[]";
    JsonFormatVisitorWrapper visitor = new FieldDocumentationVisitorWrapper(getProvider(),
            context, elementPath, null, typeRegistry, typeFactory);
    handler.acceptJsonFormatVisitor(visitor, elementType);
}
项目:java2typescript    文件:TSJsonFormatVisitorWrapper.java   
/** Visit recursively the type, or return a cached response */
public static AbstractType getTSTypeForHandler(ABaseTSJsonFormatVisitor<?> baseVisitor,
        JsonFormatVisitable handler, JavaType typeHint, Configuration conf) throws JsonMappingException {

    AbstractType computedType = baseVisitor.getComputedTypes().get(typeHint);

    if (computedType != null) {
        return computedType;
    }
    TSJsonFormatVisitorWrapper visitor = new TSJsonFormatVisitorWrapper(baseVisitor, conf);
    handler.acceptJsonFormatVisitor(visitor, typeHint);
    baseVisitor.getComputedTypes().put(typeHint, visitor.getType());
    return visitor.getType();
}
项目:java2typescript    文件:TSJsonArrayFormatVisitor.java   
@Override
public void itemsFormat(JsonFormatVisitable handler, JavaType elementType) throws JsonMappingException {
    TSJsonFormatVisitorWrapper visitorWrapper = new TSJsonFormatVisitorWrapper(this, conf);
    handler.acceptJsonFormatVisitor(visitorWrapper, elementType);
    type.setItemType(visitorWrapper.getType());
}
项目:java2typescript    文件:TSJsonObjectFormatVisitor.java   
@Override
public void property(String name, JsonFormatVisitable handler, JavaType propertyTypeHint)
        throws JsonMappingException {
    addField(name, getTSTypeForHandler(this, handler, propertyTypeHint, conf));
}
项目:java2typescript    文件:TSJsonObjectFormatVisitor.java   
@Override
public void optionalProperty(String name, JsonFormatVisitable handler, JavaType propertyTypeHint)
        throws JsonMappingException {
    addField(name, getTSTypeForHandler(this, handler, propertyTypeHint, conf));
}
项目:java2typescript    文件:TSJsonMapFormatVisitor.java   
@Override
public void keyFormat(JsonFormatVisitable handler, JavaType keyType) throws JsonMappingException {
    type.setKeyType(getTSTypeForHandler(this, handler, keyType, conf));
}
项目:java2typescript    文件:TSJsonMapFormatVisitor.java   
@Override
public void valueFormat(JsonFormatVisitable handler, JavaType valueType) throws JsonMappingException {
    type.setValueType(getTSTypeForHandler(this, handler, valueType, conf));
}