public static Parameter createParameter(Swagger swagger, ApiImplicitParam paramAnnotation) { Parameter parameter = createParameterInstance(paramAnnotation); Type dataType = ReflectionUtils.typeFromString(paramAnnotation.dataType()); parameter = ParameterProcessor.applyAnnotations(swagger, parameter, dataType, Arrays.asList(paramAnnotation)); return parameter; }
protected List<Parameter> getParameters(Type type, List<Annotation> annotations, Set<Type> typesToSkip) { if (!hasValidAnnotations(annotations) || isApiParamHidden(annotations)) { return Collections.emptyList(); } Iterator<SwaggerExtension> chain = SwaggerExtensions.chain(); List<Parameter> parameters = new ArrayList<>(); Class<?> cls = TypeUtils.getRawType(type, type); LOG.debug("Looking for path/query/header/form/cookie params in " + cls); if (chain.hasNext()) { SwaggerExtension extension = chain.next(); LOG.debug("trying extension " + extension); parameters = extension.extractParameters(annotations, type, typesToSkip, chain); } if (!parameters.isEmpty()) { for (Parameter parameter : parameters) { ParameterProcessor.applyAnnotations(swagger, parameter, type, annotations); } } else { LOG.debug("Looking for body params in " + cls); // parameters is guaranteed to be empty at this point, replace it with a mutable collection parameters = Lists.newArrayList(); if (!typesToSkip.contains(type)) { Parameter param = ParameterProcessor.applyAnnotations(swagger, null, type, annotations); if (param != null) { parameters.add(param); } } } return parameters; }
protected Parameter readImplicitParam(ApiImplicitParam param, Class<?> apiClass) { Parameter parameter; if (param.paramType().equalsIgnoreCase("path")) { parameter = new PathParameter(); } else if (param.paramType().equalsIgnoreCase("query")) { parameter = new QueryParameter(); } else if (param.paramType().equalsIgnoreCase("form") || param.paramType().equalsIgnoreCase("formData")) { parameter = new FormParameter(); } else if (param.paramType().equalsIgnoreCase("body")) { parameter = new BodyParameter(); } else if (param.paramType().equalsIgnoreCase("header")) { parameter = new HeaderParameter(); } else { return null; } return ParameterProcessor.applyAnnotations(swagger, parameter, apiClass, Arrays.asList(new Annotation[]{param})); }
parameter.setName(propertyDescriptor.getDisplayName()); ParameterProcessor.applyAnnotations(new Swagger(), parameter, type, Lists.newArrayList(propertySetterApiParam));
/** * Collects field-level parameters from class. * * @param cls is a class for collecting * @param swagger is the instance of the Swagger * @return the collection of supported parameters */ public static List<Parameter> collectFieldParameters(Class<?> cls, Swagger swagger) { final List<Parameter> parameters = new ArrayList<Parameter>(); for (Field field : ReflectionUtils.getDeclaredFields(cls)) { final List<Annotation> annotations = Arrays.asList(field.getAnnotations()); final Type genericType = field.getGenericType(); for (Parameter parameter : collectParameters(genericType, annotations)) { if (ParameterProcessor.applyAnnotations(swagger, parameter, genericType, annotations) != null) { parameters.add(parameter); } } } return parameters; }
private List<Parameter> getParameters(Type type, List<Annotation> annotations) { final Iterator<SwaggerExtension> chain = SwaggerExtensions.chain(); if (!chain.hasNext()) { return Collections.emptyList(); } LOGGER.debug("getParameters for {}", type); Set<Type> typesToSkip = new HashSet<Type>(); final SwaggerExtension extension = chain.next(); LOGGER.debug("trying extension {}", extension); final List<Parameter> parameters = extension.extractParameters(annotations, type, typesToSkip, chain); if (!parameters.isEmpty()) { final List<Parameter> processed = new ArrayList<Parameter>(parameters.size()); for (Parameter parameter : parameters) { if (ParameterProcessor.applyAnnotations(swagger, parameter, type, annotations) != null) { processed.add(parameter); } } return processed; } else { LOGGER.debug("no parameter found, looking at body params"); final List<Parameter> body = new ArrayList<Parameter>(); if (!typesToSkip.contains(type)) { Parameter param = ParameterProcessor.applyAnnotations(swagger, null, type, annotations); if (param != null) { body.add(param); } } return body; } }
private List<Parameter> getParameters(Type type, List<Annotation> annotations) { final Iterator<SwaggerExtension> chain = SwaggerExtensions.chain(); if (!chain.hasNext()) { return Collections.emptyList(); } LOGGER.debug("getParameters for " + type); Set<Type> typesToSkip = new HashSet<>(); final SwaggerExtension extension = chain.next(); LOGGER.debug("trying extension " + extension); final List<Parameter> parameters = extension.extractParameters(annotations, type, typesToSkip, chain); if (parameters.size() > 0) { final List<Parameter> processed = new ArrayList<>(parameters.size()); processed.addAll(parameters.stream().filter(parameter -> ParameterProcessor .applyAnnotations(swagger, parameter, type, annotations) != null) .collect(Collectors.toList())); return processed; } else { LOGGER.debug("no parameter found, looking at body params"); final List<Parameter> body = new ArrayList<>(); if (!typesToSkip.contains(type)) { Parameter param = ParameterProcessor.applyAnnotations(swagger, null, type, annotations); if (param != null) { body.add(param); } } return body; } }
private List<Parameter> getParameters(Type type, List<Annotation> annotations) { final Iterator<SwaggerExtension> chain = SwaggerExtensions.chain(); if (!chain.hasNext()) { return Collections.emptyList(); } LOGGER.debug("getParameters for " + type); Set<Type> typesToSkip = new HashSet<>(); final SwaggerExtension extension = chain.next(); LOGGER.debug("trying extension " + extension); final List<Parameter> parameters = extension.extractParameters(annotations, type, typesToSkip, chain); if (parameters.size() > 0) { final List<Parameter> processed = new ArrayList<>(parameters.size()); processed.addAll(parameters.stream().filter(parameter -> ParameterProcessor .applyAnnotations(swagger, parameter, type, annotations) != null) .collect(Collectors.toList())); return processed; } else { LOGGER.debug("no parameter found, looking at body params"); final List<Parameter> body = new ArrayList<>(); if (!typesToSkip.contains(type)) { Parameter param = ParameterProcessor.applyAnnotations(swagger, null, type, annotations); if (param != null) { body.add(param); } } return body; } }
/** * Collects field-level parameters from class. * * @param cls is a class for collecting * @param swagger is the instance of the Swagger * @return the collection of supported parameters */ public static List<Parameter> collectFieldParameters(Class<?> cls, Swagger swagger) { final List<Parameter> parameters = new ArrayList<Parameter>(); for (Field field : ReflectionUtils.getDeclaredFields(cls)) { final List<Annotation> annotations = Arrays.asList(field.getAnnotations()); final Type genericType = field.getGenericType(); for (Parameter parameter : collectParameters(genericType, annotations)) { if (ParameterProcessor.applyAnnotations(swagger, parameter, genericType, annotations) != null) { parameters.add(parameter); } } } return parameters; }
final List<Parameter> processed = new ArrayList<Parameter>(parameters.size()); for (Parameter parameter : parameters) { if (ParameterProcessor.applyAnnotations(swagger, parameter, type, annotations) != null) { processed.add(parameter); final List<Parameter> body = new ArrayList<Parameter>(); if (!typesToSkip.contains(type)) { Parameter param = ParameterProcessor.applyAnnotations(swagger, null, type, annotations); if (param != null) { body.add(param);
public static Parameter createParameter(Swagger swagger, ApiImplicitParam paramAnnotation) { Parameter parameter = createParameterInstance(paramAnnotation); Type dataType = ReflectionUtils.typeFromString(paramAnnotation.dataType()); parameter = ParameterProcessor.applyAnnotations(swagger, parameter, dataType, Arrays.asList(paramAnnotation)); return parameter; }
private Parameter readImplicitParam(Swagger swagger, ApiImplicitParam param) { final Parameter p = ParameterFactory.createParam(param.paramType()); if (p == null) { return null; } final Type type = ReflectionUtils.typeFromString(param.dataType()); return ParameterProcessor.applyAnnotations(swagger, p, type == null ? String.class : type, Collections.<Annotation>singletonList(param)); }
if (ParameterProcessor.applyAnnotations(swagger, parameter, type, annotations) != null) { if (!typesToSkip.contains(type)) { Parameter param = ParameterProcessor.applyAnnotations(swagger, null, type, annotations); if (param != null) {
if (tmpParameters.size() >= 1) { for (Parameter tmpParameter : tmpParameters) { if (ParameterProcessor.applyAnnotations(swagger, tmpParameter, genericParameterType, tmpAnnotations) != null) { parameters.add(tmpParameter);
if (tmpParameters.size() >= 1) { for (Parameter tmpParameter : tmpParameters) { if (ParameterProcessor.applyAnnotations(swagger, tmpParameter, genericParameterType, tmpAnnotations) != null) { parameters.add(tmpParameter);
private Parameter readImplicitParam(Swagger swagger, ApiImplicitParam param) { PrimitiveType fromType = PrimitiveType.fromName(param.paramType()); final Parameter p = null == fromType ? new FormParameter() : new QueryParameter(); final Type type = ReflectionUtils.typeFromString(param.dataType()); return ParameterProcessor.applyAnnotations(swagger, p, type == null ? String.class : type, Collections.<Annotation> singletonList(param)); }
protected Parameter readImplicitParam(ApiImplicitParam param) { final Parameter p; if (param.paramType().equalsIgnoreCase("path")) { p = new PathParameter(); } else if (param.paramType().equalsIgnoreCase("query")) { p = new QueryParameter(); } else if (param.paramType().equalsIgnoreCase("form") || param.paramType().equalsIgnoreCase("formData")) { p = new FormParameter(); } else if (param.paramType().equalsIgnoreCase("body")) { p = null; } else if (param.paramType().equalsIgnoreCase("header")) { p = new HeaderParameter(); } else { LOGGER.warn("Unkown implicit parameter type: [" + param.paramType() + "]"); return null; } final Type type = ReflectionUtils.typeFromString(param.dataType()); return ParameterProcessor .applyAnnotations(swagger, p, type == null ? String.class : type, Collections.singletonList(param)); }
protected Parameter readImplicitParam(ApiImplicitParam param) { final Parameter p; if (param.paramType().equalsIgnoreCase("path")) { p = new PathParameter(); } else if (param.paramType().equalsIgnoreCase("query")) { p = new QueryParameter(); } else if (param.paramType().equalsIgnoreCase("form") || param.paramType().equalsIgnoreCase("formData")) { p = new FormParameter(); } else if (param.paramType().equalsIgnoreCase("body")) { p = null; } else if (param.paramType().equalsIgnoreCase("header")) { p = new HeaderParameter(); } else { LOGGER.warn("Unkown implicit parameter type: [" + param.paramType() + "]"); return null; } final Type type = ReflectionUtils.typeFromString(param.dataType()); return ParameterProcessor .applyAnnotations(swagger, p, type == null ? String.class : type, Collections.singletonList(param)); }
protected Parameter readImplicitParam(ApiImplicitParam param) { final Parameter p; if (param.paramType().equalsIgnoreCase("path")) { p = new PathParameter(); } else if (param.paramType().equalsIgnoreCase("query")) { p = new QueryParameter(); } else if (param.paramType().equalsIgnoreCase("form") || param.paramType().equalsIgnoreCase("formData")) { p = new FormParameter(); } else if (param.paramType().equalsIgnoreCase("body")) { p = null; } else if (param.paramType().equalsIgnoreCase("header")) { p = new HeaderParameter(); } else { LOGGER.warn("Unknown implicit parameter type: [{}]", param.paramType()); return null; } final Type type = ReflectionUtils.typeFromString(param.dataType()); return ParameterProcessor.applyAnnotations(swagger, p, (type == null) ? String.class : type, Arrays.<Annotation>asList(param)); }
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; }