private FormParameter extractFormParameter(Type type, String defaultValue, FormParam param) { FormParameter formParameter = new FormParameter().name(param.value()); if (!Strings.isNullOrEmpty(defaultValue)) { formParameter.setDefaultValue(defaultValue); } Property schema = ModelConverters.getInstance().readAsProperty(type); if (schema != null) { formParameter.setProperty(schema); } String parameterType = formParameter.getType(); if (parameterType == null || parameterType.equals("ref") || parameterType.equals("array")) { formParameter.setType("string"); } return formParameter; } }
private FormParameter extractRequestPart(Type type, RequestPart requestPart) { String paramName = StringUtils.defaultIfEmpty(requestPart.value(), requestPart.name()); FormParameter formParameter = new FormParameter().name(paramName) .required(requestPart.required()); JavaType ct = constructType(type); Property schema; if (MultipartFile.class.isAssignableFrom(ct.getRawClass())) { schema = new FileProperty(); } else if (ct.isContainerType() && MultipartFile.class.isAssignableFrom(ct.getContentType().getRawClass())) { schema = new ArrayProperty().items(new FileProperty()); } else { schema = ModelConverters.getInstance().readAsProperty(type); } if (schema != null) { formParameter.setProperty(schema); } return formParameter; }
@Override public List<Parameter> extractParameters(List<Annotation> annotations, Type type, Set<Type> typesToSkip, Iterator<SwaggerExtension> chain) { if (shouldIgnoreType(type, typesToSkip)) { // stop the processing chain return Collections.emptyList(); } for (Annotation annotation : annotations) { if (annotation instanceof FormDataParam) { final FormDataParam fd = (FormDataParam) annotation; final Class<?> cls = TypeFactory.defaultInstance().constructType(type).getRawClass(); final Parameter param; if (java.io.InputStream.class.isAssignableFrom(cls)) { param = new FormParameter().type("file").name(fd.value()); } else { FormParameter fp = new FormParameter().name(fd.value()); Property schema = ModelConverters.getInstance().readAsProperty(type); if (schema != null) { fp.setProperty(schema); } param = fp; } return Collections.singletonList(param); } } return super.extractParameters(annotations, type, typesToSkip, chain); }
private static Collection<FormParameter> transformUploadDefinitions(final Collection<UploadDefinition> uploadDefinitions) { Collection<FormParameter> parameters = new ArrayList<>(); for (UploadDefinition uploadDefinition : uploadDefinitions) { uploadDefinition.getComponentFields().forEach(uploadFieldDefinition -> parameters.add(new FormParameter() .name(uploadDefinition.getFormat() + "." + uploadFieldDefinition.getName()) .type(uploadFieldDefinition.getType().name().toLowerCase()) .description(uploadDefinition.getFormat() + " " + uploadFieldDefinition.getDisplayName()))); for (int i = 1; i <= (uploadDefinition.isMultipleUpload() ? 3 : 1); i++) { String assetIndex = uploadDefinition.isMultipleUpload() ? Integer.toString(i) : ""; String assetName = uploadDefinition.getFormat() + ".asset" + assetIndex; String assetDisplayName = uploadDefinition.getFormat() + " Asset " + assetIndex; parameters.add(new FormParameter() .name(assetName) .type("file") .description(assetDisplayName)); uploadDefinition.getAssetFields().forEach(uploadFieldDefinition -> parameters.add(new FormParameter() .name(assetName + "." + uploadFieldDefinition.getName()) .type(uploadFieldDefinition.getType().name().toLowerCase()) .description(assetDisplayName + " " + uploadFieldDefinition.getDisplayName()))); } } return parameters; } }
public List<Parameter> extractParameters(Annotation[] annotations, Type type) { String defaultValue = null; List<Parameter> parameters = new ArrayList<>(); Parameter parameter = null; for (Annotation annotation : annotations) { if (annotation instanceof ApiParam) { FormParameter qp = new FormParameter() .name(((ApiParam) annotation).value()); qp.setDefaultValue(defaultValue); Property schema = modelConverters.readAsProperty(type); if (schema != null) { qp.setProperty(schema); if (schema instanceof ArrayProperty) { qp.setItems(((ArrayProperty) schema).getItems()); } } parameter = qp; } } if (parameter != null) { parameters.add(parameter); } return parameters; }
/** * Build a {@link FormParameter} Swagger object defined by {@link ApiImplicitParam} * to use for documentation. * * @param apiParam The annotation which documents the parameter. * @return The {@link FormParameter} object to be used in {@link Swagger} */ public static FormParameter formParameter(ApiImplicitParam apiParam) { return new FormParameter() .name(apiParam.name()) .description(apiParam.value()) .required(apiParam.required()) .type(apiParam.dataType()); }
FormParam param = (FormParam) annotation; FormParameter fp = new FormParameter() .name(param.value()); Property schema = createProperty(type); if (schema != null) {
.name(FORM_PARAM_NAME) .description(FORM_PARAM_VALUE) .required(false)