Refine search
if (property instanceof RefProperty) { RefProperty refProperty = (RefProperty) property; if (refProperty.getRefFormat() == RefFormat.RELATIVE) type = new ObjectType(refProperty.getTitle(), null); // FIXME : Workaround for https://github.com/swagger-api/swagger-parser/issues/177 else type = new RefType(definitionDocumentResolver.apply(refProperty.getSimpleRef()), new ObjectType(refProperty.getSimpleRef(), null /* FIXME, not used for now */)); } else if (property instanceof ArrayProperty) { ArrayProperty arrayProperty = (ArrayProperty) property; Property items = arrayProperty.getItems(); if (items == null) type = new ArrayType(arrayProperty.getTitle(), new ObjectType(null, null)); // FIXME : Workaround for Swagger parser issue with composed models (https://github.com/Swagger2Markup/swagger2markup/issues/150) else { Type arrayType = new PropertyAdapter(items).getType(definitionDocumentResolver); if (arrayType == null) type = new ArrayType(arrayProperty.getTitle(), new ObjectType(null, null)); // FIXME : Workaround for Swagger parser issue with composed models (https://github.com/Swagger2Markup/swagger2markup/issues/150) type = new ObjectType(property.getTitle(), ((ObjectProperty) property).getProperties()); } else if (property instanceof IntegerProperty) { IntegerProperty integerProperty = (IntegerProperty) property; } else if (isNotBlank(integerProperty.getFormat())) { type = new BasicType(integerProperty.getType(), integerProperty.getTitle(), integerProperty.getFormat()); } else { type = new BasicType(property.getType(), property.getTitle()); } else if (isNotBlank(property.getFormat())) {
if (apiOperation != null && StringUtils.isNotBlank(apiOperation.responseReference())) { final Response response = new Response().description(SUCCESSFUL_OPERATION); response.schema(new RefProperty(apiOperation.responseReference())); result.put(apiOperation.code(), response); .headers(responseHeaders); if (StringUtils.isNotEmpty(apiResponse.reference())) { response.schema(new RefProperty(apiResponse.reference())); } else if (!ReflectionUtils.isVoid(apiResponse.response())) { final Type type = apiResponse.response();
String value = annotation.authorizations()[0].value(); if (value != null && !value.isEmpty()) { operation.response(FORBIDDEN.code(), new Response() .schema(new RefProperty("ErrorMessage")) .description(value + " is invalid"));
if (property != null) { Property responseProperty = RESPONSE_CONTAINER_CONVERTER.withResponseContainer(responseContainer, property); operation.response(responseCode, new Response() .description("successful operation") .schema(responseProperty) .headers(defaultResponseHeaders)); Property responseProperty = RESPONSE_CONTAINER_CONVERTER.withResponseContainer(responseContainer, new RefProperty().asDefault(key)); operation.response(responseCode, new Response() .description("successful operation") for (ResponseStatus responseStatus: errorResponses) { int code = responseStatus.code().value(); String description = defaultIfEmpty(responseStatus.reason(), responseStatus.code().getReasonPhrase()); operation.response(code, new Response().description(description));
if (ref.get$ref().indexOf("#/definitions") == 0) { String updatedRef = "#/components/schemas" + ref.get$ref().substring("#/definitions".length()); ref.set$ref(updatedRef); result.set$ref(ref.get$ref()); } else if (schema instanceof ArrayProperty) { ArraySchema arraySchema = Json.mapper().convertValue(schema, ArraySchema.class); Property items = ((ArrayProperty) schema).getItems(); Schema itemsSchema = convert(items); arraySchema.setItems(itemsSchema); if (((ArrayProperty) schema).getMaxItems() != null) { arraySchema.setMaxItems(((ArrayProperty) schema).getMaxItems()); if (((ArrayProperty) schema).getMinItems() != null) { result.setExample(schema.getExample()); if ("object".equals(schema.getType()) && (result.getProperties() != null) && (result.getProperties().size() > 0)) { Map<String, Schema> properties = new HashMap<>(); MapProperty map = (MapProperty) schema; result.setAdditionalProperties(convert(map.getAdditionalProperties())); result.setMinProperties(map.getMinProperties()); result.setMaxProperties(map.getMaxProperties());
if (property != null) { if ("list".equalsIgnoreCase(responseContainer)) { responseProperty = new ArrayProperty(property); responseProperty = new MapProperty(property); operation.response(200, new Response() .description("Successful request") .schema(responseProperty) .headers(defaultResponseHeaders)); responseProperty = new ArrayProperty(new RefProperty().asDefault(name)); responseProperty = new MapProperty(new RefProperty().asDefault(name)); responseProperty = new RefProperty().asDefault(name); operation.response(200, new Response() Map<String, Model> models = modelConverters.read(responseClass); for (String key : models.keySet()) { response.schema(new RefProperty().asDefault(key)); swagger.model(key, models.get(key)); .collect(Collectors.toList()); boolean isSchema = properties.stream().anyMatch(property -> property == null || (params.indexOf(property.getType()) == -1 && !((property instanceof ArrayProperty) && params.indexOf(((ArrayProperty) property).getItems().getType()) > -1)));
@Override public Model getCREATEModel(Representation rep) { return ((ModelImpl) super.getCREATEModel(rep)) .property("privileges", new ArrayProperty(new RefProperty("#/definitions/PrivilegeCreate"))) .property("inheritedRoles", new ArrayProperty(new RefProperty("#/definitions/RoleCreate"))); }
Map<String, Property> responseHeaders = parseResponseHeaders(apiResponse.responseHeaders()); Class<?> responseClass = apiResponse.response(); Response response = new Response() .description(apiResponse.message()) .headers(responseHeaders); Map<String, Model> models = ModelConverters.getInstance().read(responseClass); for (String key : models.keySet()) { final Property schema = new RefProperty().asDefault(key); if (apiResponse.responseContainer().equals("List")) { response.schema(new ArrayProperty(schema)); } else { response.schema(schema);
final Response swaggerResponse = new Response(); this.setVendorExtensions(((Extensible) rapidResponse), swaggerResponse); final Example example = IterableExtensions.<Example>head(rapidResponse.getAllExamples()); final MediaType type = IterableExtensions.<MediaType>head(rapidResponse.getMediaTypes()); if ((type != null)) { swaggerResponse.example(IterableExtensions.<MediaType>head(rapidResponse.getMediaTypes()).getName(), this.renderExample(example.getBody(), type.getName())); swaggerResponse.setDescription(this.getMessageDocumentation(rapidResponse)); if ((typeName != null)) { final RefProperty property = new RefProperty(); property.set$ref(("#/definitions/" + typeName)); swaggerResponse.setSchema(property); final ArrayProperty prop = new ArrayProperty(); prop.setItems(this.createSwaggerPropertyWithConstraints(it)); prop.setDescription(this._zenModelHelper.getDocumentation(it)); swaggerResponse.getHeaders().put(it.getName(), prop); } else { final Property prop_1 = this.createSwaggerPropertyWithConstraints(it); prop_1.setDescription(this._zenModelHelper.getDocumentation(it)); swaggerResponse.getHeaders().put(it.getName(), prop_1);
Property schema = resp.getSchema(); if (schema != null) { if (isSimple(schema)) { boolean array = false; if (schema instanceof ArrayProperty) { schema = ((ArrayProperty)schema).getItems(); array = true; if(resp.getHeaders() == null|| resp.getHeaders().isEmpty()) { String type = SwaggerTypeManager.teiidType(schema.getType(), schema.getFormat(), array); mf.addProcedureParameter("return", type, ProcedureParameter.Type.ReturnValue, procedure); } else { schema = ((ArrayProperty)schema).getItems(); pa); } else if (schema instanceof RefProperty) { String modelName = ((RefProperty)schema).getSimpleRef(); Model model = swagger.getDefinitions().get(modelName); walkProperties(swagger, model.getProperties(), pa); } else if (schema instanceof MapProperty){ Property property = ((MapProperty)schema).getAdditionalProperties(); String type = SwaggerTypeManager.teiidType(property.getType(), property.getFormat(), false); Column c = mf.addProcedureResultSetColumn(KEY_NAME, "string", procedure); c.setNameInSource(KEY_NAME);
public Model propertyToModel(Property property){ String description = property.getDescription(); String type = property.getType(); String format = property.getFormat(); String example = null; RefModel refModel = new RefModel(ref.getOriginalRef(), ref.getRefFormat()); return refModel; additionalProperties = ((MapProperty) property).getAdditionalProperties(); ArrayProperty arrayProperty = (ArrayProperty) property; ArrayModel arrayModel = new ArrayModel(); arrayModel.setItems(arrayProperty.getItems()); arrayModel.setDescription(description); arrayModel.setExample(example); arrayModel.setUniqueItems(arrayProperty.getUniqueItems());
ModelImpl m = (ModelImpl) model; if (m.getAdditionalProperties() != null){ MapProperty mapProperty = new MapProperty(); mapProperty.setType(m.getType()); mapProperty.setAllowEmptyValue(m.getAllowEmptyValue()); mapProperty.setDefault((String) m.getDefaultValue()); mapProperty.setDescription(m.getDescription()); ArrayProperty property = new ArrayProperty(); Property inner = m.getItems(); property.setItems(inner); property.setExample(m.getExample()); property.setMaxItems(m.getMaxItems()); property.setMinItems(m.getMinItems()); RefProperty refProperty = new RefProperty(ref.get$ref(), ref.getRefFormat()); return refProperty; if(itemProperty instanceof RefProperty) { RefProperty refProperty = (RefProperty) itemProperty; objectProperty.property(refProperty.getSimpleRef(), itemProperty);
Boolean wrapped = false; Object example = property.getExample(); if (property instanceof RefProperty) { RefProperty ref = (RefProperty) property; if(processedModels.containsKey(ref.getSimpleRef())) { return alreadyProcessedRefExample(ref.getSimpleRef(), definitions, processedModels); processedModels.put(ref.getSimpleRef(), null); if( definitions != null ) { Model model = definitions.get(ref.getSimpleRef()); if (model != null) { output = fromModel(ref.getSimpleRef(), model, definitions, processedModels); processedModels.put(ref.getSimpleRef(), output); Property inner = ap.getItems(); if (inner != null) { Object innerExample = fromProperty(inner, definitions, processedModels); if( definitions != null ) { RefProperty ref = (RefProperty) property; Model model = definitions.get(ref.getSimpleRef()); if (model != null) { if (model instanceof ModelImpl) { output.setName(ref.getSimpleRef());
if (property.getType() == null) { return "untyped"; switch (property.getType()) { case "integer": return ExamplesUtil.generateIntegerExample(property instanceof IntegerProperty ? ((IntegerProperty) property).getEnum() : null); return true; case "string": return ExamplesUtil.generateStringExample(property.getFormat(), property instanceof StringProperty ? ((StringProperty) property).getEnum() : null); case "ref": if (property instanceof RefProperty) { if (logger.isDebugEnabled()) logger.debug("generateExample RefProperty for " + property.getName()); return markupDocBuilder.copy(false).crossReference(((RefProperty) property).getSimpleRef()).toString(); } else { if (logger.isDebugEnabled()) logger.debug("generateExample for ref not RefProperty");
@Override public Model getGETModel(Representation rep) { //FIXME check valid supportedClass ModelImpl model = (ModelImpl) super.getGETModel(rep); if (rep instanceof DefaultRepresentation || rep instanceof FullRepresentation) { model .property("username", new StringProperty()) .property("systemId", new StringProperty()) .property("userProperties", new MapProperty()); //FIXME type } if (rep instanceof DefaultRepresentation) { model .property("person", new RefProperty("#/definitions/PersonGetRef")) .property("privileges", new ArrayProperty(new RefProperty("#/definitions/PrivilegeGetRef"))) .property("roles", new ArrayProperty(new RefProperty("#/definitions/RoleGetRef"))); } else if (rep instanceof FullRepresentation) { model .property("person", new RefProperty("#/definitions/PersonGet")) .property("privileges", new ArrayProperty(new RefProperty("#/definitions/PrivilegeGet"))) .property("roles", new ArrayProperty(new RefProperty("#/definitions/RoleGet"))) .property("allRoles", new ArrayProperty(new RefProperty("#/definitions/RoleGet"))) .property("proficientLocales", new ArrayProperty(new ObjectProperty())) .property("secretQuestion", new StringProperty()); } return model; }
if (type instanceof ArrayProperty) { _matched=true; Property _items = ((ArrayProperty)type).getItems(); return this.arrayTypeLabel(context, _items, ((((ArrayProperty)type).getMinItems() != null) && ((((ArrayProperty)type).getMinItems()).intValue() > 0))); if (type instanceof RefProperty) { _matched=true; return ((RefProperty)type).getSimpleRef(); if (((type.getFormat() != null) || (type.getType() != null))) { _matched=true; return this.primitiveTypeLabel(type.getType(), type.getFormat());
Property inner = ap.getItems(); JavaType innerType = getTypeFromProperty(null, null, inner, definitions); return tf.constructCollectionType(List.class, innerType); Property inner = mp.getAdditionalProperties(); JavaType innerType = getTypeFromProperty(null, null, inner, definitions); return tf.constructMapLikeType(Map.class, getTypeFromProperty("string", null, null, definitions), innerType); RefProperty ref = (RefProperty) property; if(definitions != null) { Model model = definitions.get(ref.getSimpleRef()); if(model != null) { JavaType mt = getTypeFromModel(ref.getSimpleRef(), model, definitions); if(mt != null) { return mt; final String name = (String) property.getVendorExtensions() .get(Constants.X_SWAGGER_ROUTER_MODEL); if (name != null) {
String refName = attach(mapping).refName(); if (!isEmpty(refName)) { return new RefProperty(refName); return fillProperty(new MapProperty(vProperty), mapping); return fillProperty(new ArrayProperty(iProperty), mapping); bProperty.setRequired(false); return bProperty;
public static String determineSchemaReference(final Property schema) { if (schema instanceof RefProperty) { return ((RefProperty) schema).get$ref(); } else if (schema instanceof ArrayProperty) { final Property property = ((ArrayProperty) schema).getItems(); return determineSchemaReference(property); } throw new IllegalArgumentException("Only references to schemas are supported"); }
private List<Parameter> expandParameter(Map<String, Model> models, RouteParameter it, Supplier<SerializableParameter> factory, String typeName, String prefix, boolean optional) { List<Parameter> parameters = new ArrayList<>(); Model model = models.get(typeName); Map<String, Property> properties = model.getProperties(); Optional.ofNullable(properties).ifPresent(props -> props.values().stream() .flatMap(p -> { SerializableParameter result = complement(p, it, factory.get()); String name = prefix + p.getName(); if (p instanceof RefProperty) { return expandParameter(models, it, factory, ((RefProperty) p).getSimpleRef(), name + ".", optional).stream(); } else { result.setName(name); boolean required; if (optional) { required = false; } else { required = p.getRequired(); } String desc = Strings.emptyToNull(p.getDescription()); result.setRequired(required); result.setDescription(desc); return Stream.of(result); } }) .forEach(parameters::add) ); return parameters; }