
io.swagger.oas.inflector.converters.DefaultConverter Maven / Gradle / Ivy
package io.swagger.oas.inflector.converters;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.type.TypeFactory;
import io.swagger.oas.inflector.utils.ReflectionUtils;
import io.swagger.oas.inflector.validators.ValidationError;
import io.swagger.oas.inflector.validators.ValidationMessage;
import io.swagger.v3.oas.models.media.ArraySchema;
import io.swagger.v3.oas.models.media.MediaType;
import io.swagger.v3.oas.models.media.Schema;
import io.swagger.v3.oas.models.parameters.Parameter;
import io.swagger.v3.oas.models.parameters.QueryParameter;
import io.swagger.v3.core.util.Json;
import io.swagger.v3.oas.models.parameters.RequestBody;
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVParser;
import org.apache.commons.csv.CSVRecord;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.joda.time.LocalDate;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.util.*;
public class DefaultConverter extends ReflectionUtils implements Converter {
private static final Logger LOGGER = LoggerFactory.getLogger(DefaultConverter.class);
private Map definitions;
public DefaultConverter(){}
public Object convert(List value, Parameter parameter, Class> cls, Map definitions, Iterator chain) throws ConversionException {
return coerceValue(value, parameter, cls);
}
public Object convert(List value, RequestBody body, Class> cls, Map definitions, Iterator chain) throws ConversionException {
return coerceValue(value, body, cls);
}
public Object coerceValue(List arguments, RequestBody body, Class> cls) throws ConversionException {
if (arguments == null || arguments.size() == 0) {
return null;
}
LOGGER.debug("casting `" + arguments + "` to " + cls);
if (List.class.equals(cls)) {
if (body.getContent() != null){
for (String mediaType: body.getContent().keySet()) {
MediaType media = body.getContent().get(mediaType);
if (media.getSchema() != null) {
List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy