Schema mergedSchema = new ObjectSchema(); for (Parameter formParam: formParameters) { mergedSchema.addProperties(formParam.getName(), formParam.getSchema());
public void removePathParameter(String name, List<Parameter> parameters) { parameters .stream() .filter(p -> "path".equals(p.getIn()) && name.equals(p.getName())) .findFirst() .ifPresent(parameters::remove); } }
private boolean isPathParamDefined(String pathParam, List<Parameter> parameters) { if (parameters == null || parameters.isEmpty()) { return false; } else { Parameter pathParamDefined = parameters.stream() .filter(parameter -> pathParam.equals(parameter.getName()) && "path".equals(parameter.getIn())) .findFirst() .orElse(null); if (pathParamDefined == null) { return false; } } return true; }
private String itemParam(String title, Parameter param) { StringBuilder sb = new StringBuilder(""); sb.append(StringUtils.repeat(' ', 4)) .append("- ") .append(title) .append(param.getName()) .append(" in ") .append(param.getIn()) .append(System.lineSeparator()); // .append(null == param.getDescription() ? "" // : (" //" + param.getDescription())); return sb.toString(); }
private boolean isPathParamDefined(String pathParam, List<Parameter> parameters) { if (parameters == null || parameters.isEmpty()) { return false; } else { Parameter pathParamDefined = parameters.stream() .filter(parameter -> pathParam.equals(parameter.getName()) && "path".equals(parameter.getIn())) .findFirst() .orElse(null); if (pathParamDefined == null) { return false; } } return true; }
@Nonnull private ValidationReport validatePathParameter(final ApiOperation apiOperation, final String paramName, final Optional<String> paramValue) { return defaultIfNull(apiOperation.getOperation().getParameters(), Collections.<Parameter>emptyList()) .stream() .filter(RequestValidator::isPathParam) .filter(p -> p.getName().equalsIgnoreCase(paramName)) .findFirst() .map(p -> parameterValidator.validate(paramValue.orElse(null), p)) .orElse(empty()); }
private ValidationReport validateUniqueItems(final Collection<String> values, final Parameter parameter) { if (TRUE.equals(parameter.getSchema().getUniqueItems()) && values.stream().distinct().count() != values.size()) { return ValidationReport.singleton(messages.get("validation.request.parameter.collection.duplicateItems", parameter.getName()) ); } return ValidationReport.empty(); }
private static void maybeUpdateName(Parameter swaggerParameter, com.sun.javadoc.Parameter parameter) { if (DEFAULT_NAMES.contains(swaggerParameter.getName())) { String name = StringUtils.stripToNull(parameter.name()); if (name != null) { swaggerParameter.setName(name); } } }
@Nonnull private ValidationReport validateQueryParameters(final Request request, final ApiOperation apiOperation) { return defaultIfNull(apiOperation.getOperation().getParameters(), Collections.<Parameter>emptyList()) .stream() .filter(RequestValidator::isQueryParam) .map(p -> validateParameter( apiOperation, p, request.getQueryParameterValues(p.getName()), "validation.request.parameter.query.missing") ) .reduce(empty(), ValidationReport::merge); }
@Nonnull private ValidationReport validateHeaders(final Request request, final ApiOperation apiOperation) { return defaultIfNull(apiOperation.getOperation().getParameters(), Collections.<Parameter>emptyList()) .stream() .filter(RequestValidator::isHeaderParam) .map(p -> validateParameter( apiOperation, p, request.getHeaderValues(p.getName()), "validation.request.parameter.header.missing") ) .reduce(empty(), ValidationReport::merge); }
private Function<Parameter, Parameter> enrichParameters(MethodDoc methodDoc) { return (swaggerParameter) -> { Option<com.sun.javadoc.Parameter> jParam = findJParameter(methodDoc, swaggerParameter.getName()); jParam.forEach(param -> setDescription(swaggerParameter, methodDoc, param)); return swaggerParameter; }; }
protected String itemParameter(String title, Parameter parameter) { return this.itemParameter( title, parameter.getName(), parameter.getIn(), parameter.getDescription()); }
private void enrichFormParameters(Parameter swaggerParameter, MethodDoc methodDoc) { swaggerParameter.setStyle(Parameter.StyleEnum.FORM); Option<com.sun.javadoc.Parameter> jParam = findJParameter(methodDoc, swaggerParameter.getName()); jParam.forEach(param -> setDescription(swaggerParameter, methodDoc, param)); }
protected String itemParameter(ChangedParameter param) { Parameter rightParam = param.getNewParameter(); if (param.isDeprecated()) { return itemParameter( "Deprecated", rightParam.getName(), rightParam.getIn(), rightParam.getDescription()); } return itemParameter( "Changed", rightParam.getName(), rightParam.getIn(), rightParam.getDescription()); }
private ValidationReport validateMinItems(final Collection<String> values, final Parameter parameter) { if (parameter.getSchema().getMinItems() != null && values.size() < parameter.getSchema().getMinItems()) { return ValidationReport.singleton(messages.get("validation.request.parameter.collection.tooFewItems", parameter.getName(), parameter.getSchema().getMinItems(), values.size()) ); } return ValidationReport.empty(); }
private ValidationReport validateMaxItems(final Collection<String> values, final Parameter parameter) { if (parameter.getSchema().getMaxItems() != null && values.size() > parameter.getSchema().getMaxItems()) { return ValidationReport.singleton(messages.get("validation.request.parameter.collection.tooManyItems", parameter.getName(), parameter.getSchema().getMaxItems(), values.size()) ); } return ValidationReport.empty(); }
private ContainerTag li_addParam(Parameter param) { return li().withText("Add " + param.getName() + " in " + param.getIn()) .with( span(null == param.getDescription() ? "" : ("//" + param.getDescription())) .withClass("comment")); }
@Override public RequestParameter transform(Parameter from) { RequestParameterInType inType = requestParameterInTypeResolver.resolve(from.getIn()); String name = from.getName(); boolean required = BooleanUtils.toBoolean(from.getRequired()); Schema swSchema = from.getSchema(); if (swSchema != null) { return new RequestParameter(inType, name, required, schemaTransformer.transform(swSchema)); } return new RequestParameter(inType, name, required); } }
private ContainerTag li_missingParam(Parameter param) { return li().withClass("missing") .with(span("Delete")) .with(del(param.getName())) .with(span("in ").withText(param.getIn())) .with( span(null == param.getDescription() ? "" : ("//" + param.getDescription())) .withClass("comment")); }