private ResponseWithStatusCode buildResponse(Function<Type, Model> modelFactory, Map<String, Object> attributes, Predicate<Integer> statusCode) { Response response = new Response(); String description = (String) attributes.get("apiResponse.message"); Class type = (Class) attributes.get("apiResponse.response"); if (!isVoid(type)) { response.setResponseSchema(modelFactory.apply(type)); } response.setDescription(description); buildResponseHeader(attributes, "apiResponse.responseHeaders", response::addHeader); Integer code = (Integer) attributes.get("apiResponse.code"); String key = code.toString(); if (statusCode.test(code)) { key += "(" + type.getSimpleName() + ")"; } return new ResponseWithStatusCode(key, response); }
public Response responseSchema(Model model) { this.setResponseSchema(model); return this; }
private ResponseWithStatusCode buildResponse(Function<Type, Model> modelFactory, Map<String, Object> attributes, Predicate<Integer> statusCode) { Response response = new Response(); String description = (String) attributes.get("apiResponse.message"); Class type = (Class) attributes.get("apiResponse.response"); if (!isVoid(type)) { response.setResponseSchema(modelFactory.apply(type)); } response.setDescription(description); buildResponseHeader(attributes, "apiResponse.responseHeaders", response::addHeader); Integer code = (Integer) attributes.get("apiResponse.code"); String key = code.toString(); if (statusCode.test(code)) { key += "(" + type.getSimpleName() + ")"; } return new ResponseWithStatusCode(key, response); }
public void resolvePath(Path path) { for (Operation op : path.getOperations()) { // inputs for (Parameter parameter : op.getParameters()) { if (parameter instanceof BodyParameter) { BodyParameter body = (BodyParameter) parameter; Model schema = body.getSchema(); Model resolved = resolveModel(schema); body.setSchema(resolved); } } // responses if (op.getResponses() != null) { for (String code : op.getResponses().keySet()) { Response response = op.getResponses().get(code); if (response.getResponseSchema() != null) { Model resolved = resolveModel(response.getResponseSchema()); response.setResponseSchema(resolved); } } } } }
public void resolvePath(Path path) { for (Operation op : path.getOperations()) { // inputs for (Parameter parameter : op.getParameters()) { if (parameter instanceof BodyParameter) { BodyParameter body = (BodyParameter) parameter; Model schema = body.getSchema(); Model resolved = resolveModel(schema); body.setSchema(resolved); } } // responses if (op.getResponses() != null) { for (String code : op.getResponses().keySet()) { Response response = op.getResponses().get(code); if (response.getResponseSchema() != null) { Model resolved = resolveModel(response.getResponseSchema()); response.setResponseSchema(resolved); } } } } }
/** * Parse given response, providing {@link PropertyBox} type schema definition when a temporary * {@link SwaggerExtensions#MODEL_TYPE} named extension is found. * @param propertySet The property set to use * @param apiModel The Optional API model * @param response The response to parse */ private static void parseResponse(PropertySet<?> propertySet, Optional<ApiPropertySetModel> apiModel, Response response) { if (response.getResponseSchema() != null) { ArrayModel array = isPropertyBoxArrayModelType(response.getResponseSchema()); if (array != null) { ArrayModel model = (ArrayModel) array.clone(); model.setUniqueItems(array.getUniqueItems()); model.setItems( SwaggerV2PropertyBoxModelConverter.modelToProperty(getPropertyBoxModel(propertySet, apiModel))); response.setResponseSchema(model); } else if (isPropertyBoxModelType(response.getResponseSchema())) { response.setResponseSchema(getPropertyBoxModel(propertySet, apiModel)); } } }
public void resolvePath(Path path){ for(Operation op : path.getOperations()) { // inputs for(Parameter parameter : op.getParameters()) { if(parameter instanceof BodyParameter) { BodyParameter body = (BodyParameter) parameter; Model schema = body.getSchema(); Model resolved = resolveModel(schema); body.setSchema(resolved); } } // responses if(op.getResponses() != null) { for(String code : op.getResponses().keySet()) { Response response = op.getResponses().get(code); if (response.getResponseSchema() != null) { Model resolved = resolveModel(response.getResponseSchema()); response.setResponseSchema(resolved); } } } } }
public void resolvePath(Path path){ for(Operation op : path.getOperations()) { // inputs for(Parameter parameter : op.getParameters()) { if(parameter instanceof BodyParameter) { BodyParameter body = (BodyParameter) parameter; Model schema = body.getSchema(); Model resolved = resolveModel(schema); body.setSchema(resolved); } } // responses if(op.getResponses() != null) { for(String code : op.getResponses().keySet()) { Response response = op.getResponses().get(code); if (response.getResponseSchema() != null) { Model resolved = resolveModel(response.getResponseSchema()); response.setResponseSchema(resolved); } } } } }
response.setResponseSchema(new RefModel().asDefault(message.getResponseModel()));