/** * Generate a default example value for parameter. * * @param parameter parameter * @return a generated example for the parameter */ public static Object generateExample(AbstractSerializableParameter<?> parameter) { switch (parameter.getType()) { case "integer": return 0; case "number": return 0.0; case "boolean": return true; case "string": return ExamplesUtil.generateStringExample(parameter.getFormat(), parameter.getEnum()); default: return parameter.getType(); } }
type = new EnumType(serializableParameter.getName(), enums); } else { type = new BasicType(serializableParameter.getType(), serializableParameter.getName(), serializableParameter.getFormat()); if (serializableParameter.getType().equals("array")) { String collectionFormat = serializableParameter.getCollectionFormat();
@Override public JavaType convert(SwaggerToClassGenerator swaggerToClassGenerator, Object def) { AbstractSerializableParameter<?> param = (AbstractSerializableParameter<?>) def; switch (param.getType()) { case ArrayProperty.TYPE: return ArrayPropertyConverter.findJavaType(swaggerToClassGenerator, param.getItems(), param.isUniqueItems()); case StringProperty.TYPE: return StringPropertyConverter.findJavaType(swaggerToClassGenerator, param.getType(), param.getFormat(), param.getEnum()); default: return ConverterMgr.findJavaType(param.getType(), param.getFormat()); } } }
/** * Generate a default example value for parameter. * * @param parameter parameter * @return a generated example for the parameter */ public static Object generateExample(AbstractSerializableParameter parameter) { switch (parameter.getType()) { case "integer": return 0; case "number": return 0.0; case "boolean": return true; case "string": return "string"; default: return parameter.getType(); } }
/** * Generate a default example value for parameter. * * @param parameter parameter * @return a generated example for the parameter */ public static Object generateExample(AbstractSerializableParameter parameter) { switch (parameter.getType()) { case "integer": return 0; case "number": return 0.0; case "boolean": return true; case "string": return "string"; default: return parameter.getType(); } }
private Class<?> getType(String name, Parameter parameter) { checkNotNull(parameter, String.format("Could not find parameter [%s] in swagger model!", name)); if (parameter instanceof AbstractParameter) { AbstractSerializableParameter castedParam = (AbstractSerializableParameter) parameter; return Types.getParameterType(castedParam.getType(), castedParam.getFormat()); } else { throw new UnsupportedOperationException(String.format("Parameter type [%s] not supported!", parameter.getClass().getName())); } } }
@Override public JavaType convert(SwaggerToClassGenerator swaggerToClassGenerator, Object def) { AbstractSerializableParameter<?> param = (AbstractSerializableParameter<?>) def; switch (param.getType()) { case ArrayProperty.TYPE: return ArrayPropertyConverter.findJavaType(swaggerToClassGenerator, param.getItems(), param.isUniqueItems()); case StringProperty.TYPE: return StringPropertyConverter.findJavaType(swaggerToClassGenerator, param.getType(), param.getFormat(), param.getEnum()); default: return ConverterMgr.findJavaType(param.getType(), param.getFormat()); } } }
/** * Create validation expression using functions according to parameter type and format. * @param parameter * @return */ private String createValidationExpression(AbstractSerializableParameter parameter) { switch (parameter.getType()) { case "integer": return "@isNumber()@"; case "string": if (parameter.getFormat() != null && parameter.getFormat().equals("date")) { return "\"@matchesDatePattern('yyyy-MM-dd')@\""; } else if (parameter.getFormat() != null && parameter.getFormat().equals("date-time")) { return "\"@matchesDatePattern('yyyy-MM-dd'T'hh:mm:ss')@\""; } else if (StringUtils.hasText(parameter.getPattern())) { return "\"@matches(" + parameter.getPattern() + ")@\""; } else if (!CollectionUtils.isEmpty(parameter.getEnum())) { return "\"@matches(" + (parameter.getEnum().stream().collect(Collectors.joining("|"))) + ")@\""; } else { return "@notEmpty()@"; } case "boolean": return "@matches(true|false)@"; default: return "@ignore@"; } }
final String type = serializableParameter.getType(); final String name = trimToNull(serializableParameter.getName()); final String description = trimToNull(serializableParameter.getDescription());
private Parameter readParam(Swagger swagger, Type type,Class<?> cls, ApiParam param) { PrimitiveType fromType = PrimitiveType.fromType(type); final Parameter para = null == fromType ? new BodyParameter() : new QueryParameter(); Parameter parameter = ParameterProcessor.applyAnnotations(swagger, para, type == null ? String.class : type, null == param ? new ArrayList<Annotation>() : Collections.<Annotation> singletonList(param)); if (parameter instanceof AbstractSerializableParameter) { final AbstractSerializableParameter<?> p = (AbstractSerializableParameter<?>) parameter; if (p.getType() == null) p.setType(null == fromType ? "string" : fromType.getCommonName()); p.setRequired(p.getRequired() == true ? true : cls.isPrimitive()); }else{ //hack: Get the from data model paramter from BodyParameter BodyParameter bp = (BodyParameter)parameter; bp.setIn("formData"); } return parameter; }
final String type = XmlSchemaHelper.toXsdType(serializableParameter.getType()); final String name = trimToNull(serializableParameter.getName());
final String type = toXsdType(serializableParameter.getType()); final String name = trimToNull(serializableParameter.getName());
final String type = toXsdType(serializableParameter.getType()); final String name = trimToNull(serializableParameter.getName());
public Object extract(String name, Parameter parameter, MultiMap params) { AbstractSerializableParameter abstractSerializableParameter = (AbstractSerializableParameter) parameter; if (!params.contains(name)) { if (abstractSerializableParameter.getRequired()) { throw new IllegalArgumentException("Missing required parameter: " + name); } else if (abstractSerializableParameter.getDefaultValue()!=null){ return abstractSerializableParameter.getDefaultValue(); } else { return null; } } if ((abstractSerializableParameter.getAllowEmptyValue() == null || !abstractSerializableParameter.getAllowEmptyValue()) && StringUtils.isEmpty(params.get(name))) { throw new IllegalArgumentException( "Empty value is not authorized for parameter: " + name); } if ("array".equals(abstractSerializableParameter.getType())) { if ("multi".equals(abstractSerializableParameter.getCollectionFormat())) { return params.getAll(name); } else { List<String> resultParams = this.splitArrayParam(abstractSerializableParameter, params.get(name)); if (resultParams != null) { return resultParams; } } } return params.get(name); }
type = abstractSerializableParameter.getType(); } else { type = "not-accessible";
final String type = serializableParameter.getType(); propertyBuilder.type(type).javaType(JsonSchemaHelper.javaTypeFor(serializableParameter));
final String type = serializableParameter.getType(); propertyBuilder.type(type).javaType(JsonSchemaHelper.javaTypeFor(serializableParameter));
final String type = serializableParameter.getType(); propertyBuilder.type(type).javaType(JsonSchemaHelper.javaTypeFor(serializableParameter));
type = new EnumType(serializableParameter.getName(), enums); } else { type = new BasicType(serializableParameter.getType(), serializableParameter.getName(), serializableParameter.getFormat()); if (serializableParameter.getType().equals("array")) { String collectionFormat = serializableParameter.getCollectionFormat();
private static void copyFields(AbstractSerializableParameter<?> from, AbstractSerializableParameter<?> to) { copyFields((AbstractParameter) from, (AbstractParameter) to); to.setCollectionFormat(from.getCollectionFormat()); to.setDefault(from.getDefault()); to.setEnum(from.getEnum()); if (from.getExample() != null) { to.setExample(from.getExample().toString()); } to.setExclusiveMaximum(to.isExclusiveMaximum()); to.setExclusiveMinimum(to.isExclusiveMinimum()); to.setFormat(from.getFormat()); to.setItems(from.getItems()); to.setMaximum(from.getMaximum()); to.setMaxItems(from.getMaxItems()); to.setMaxLength(from.getMaxLength()); to.setMinLength(to.getMinLength()); to.setMinimum(from.getMinimum()); to.setMaxItems(from.getMaxItems()); to.setMinLength(from.getMinLength()); to.setMultipleOf(from.getMultipleOf()); to.setType(from.getType()); to.setUniqueItems(from.isUniqueItems()); }