/** * Method called to handle appropriate type-specific visiting * over logical property this writer handles. * * @param objectVisitor ObjectVisitor which can receive the property * * @since 2.1 */ public void depositSchemaProperty(JsonObjectFormatVisitor objectVisitor) throws JsonMappingException { if (isRequired(objectVisitor.getProvider().getAnnotationIntrospector())) { objectVisitor.property(this); } else { objectVisitor.optionalProperty(this); } }
@Override public void depositSchemaProperty(final JsonObjectFormatVisitor visitor) throws JsonMappingException { SerializerProvider provider = visitor.getProvider(); JsonSerializer<Object> ser = provider .findValueSerializer(this.getType(), this) .unwrappingSerializer(_nameTransformer); if (ser.isUnwrappingSerializer()) { ser.acceptJsonFormatVisitor(new JsonFormatVisitorWrapper.Base(provider) { // an unwrapping serializer will always expect ObjectFormat, // hence, the other cases do not have to be implemented @Override public JsonObjectFormatVisitor expectObjectFormat(JavaType type) throws JsonMappingException { return visitor; } }, this.getType()); } else { super.depositSchemaProperty(visitor); } }
@Override public void depositSchemaProperty(final JsonObjectFormatVisitor visitor) throws JsonMappingException { SerializerProvider provider = visitor.getProvider(); JsonSerializer<Object> ser = provider .findValueSerializer(this.getType(), this) .unwrappingSerializer(_nameTransformer); if (ser.isUnwrappingSerializer()) { ser.acceptJsonFormatVisitor(new JsonFormatVisitorWrapper.Base(provider) { // an unwrapping serializer will always expect ObjectFormat, // hence, the other cases do not have to be implemented @Override public JsonObjectFormatVisitor expectObjectFormat(JavaType type) throws JsonMappingException { return visitor; } }, this.getType()); } else { super.depositSchemaProperty(visitor); } }