Refine search
@Override public Property resolveProperty(Type type, ModelConverterContext context, Annotation[] annotations, Iterator<ModelConverter> chain) { if (type == null) { return null; } try { TypeLiteral<?> typeLiteral = TypeLiteral.get(type); String typeName = typeLiteral.getType().getTypeName(); if (typeName.equals("java.util.List<org.jooby.Upload>") || typeName.equals("java.util.Set<org.jooby.Upload>")) { return new ArrayProperty(new FileProperty()); } if (typeName.equals(Upload.class.getName())) { return new FileProperty(); } return super.resolveProperty(type, context, annotations, chain); } catch (IllegalArgumentException x) { // shhh return super.resolveProperty(type, context, annotations, chain); } } });
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) else type = new ArrayType(arrayProperty.getTitle(), new PropertyAdapter(items).getType(definitionDocumentResolver)); type = new ObjectType(property.getTitle(), ((ObjectProperty) property).getProperties()); } else if (property instanceof IntegerProperty) { IntegerProperty integerProperty = (IntegerProperty) property; type = new BasicType(integerProperty.getType(), integerProperty.getTitle(), integerProperty.getFormat()); } else { type = new BasicType(property.getType(), property.getTitle());
Property withResponseContainer(String responseContainer, Property property) { if ("list".equalsIgnoreCase(responseContainer)) { return new ArrayProperty(property); } if ("set".equalsIgnoreCase(responseContainer)) { return new ArrayProperty(property).uniqueItems(); } if ("map".equalsIgnoreCase(responseContainer)) { return new MapProperty(property); } return property; } }
@Override public JavaType doConvert(SwaggerToClassGenerator swaggerToClassGenerator, Object property) { ArrayProperty arrayProperty = (ArrayProperty) property; return findJavaType(swaggerToClassGenerator, arrayProperty.getItems(), arrayProperty.getUniqueItems()); } }
if (ref.get$ref().indexOf("#/definitions") == 0) { String updatedRef = "#/components/schemas" + ref.get$ref().substring("#/definitions".length()); ref.set$ref(updatedRef); 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) { arraySchema.setMinItems(((ArrayProperty) schema).getMinItems()); if (((ArrayProperty) schema).getUniqueItems() != null && ((ArrayProperty) schema).getUniqueItems()) { arraySchema.setUniqueItems(((ArrayProperty) schema).getUniqueItems()); 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; StringProperty sp = (StringProperty) schema;
@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; }
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()); model.setPattern(stringProperty.getPattern()); model.setMinLength(stringProperty.getMinLength()); model.setMaxLength(stringProperty.getMaxLength()); model.setEnum(stringProperty.getEnum());
@Override public Model getUPDATEModel(Representation rep) { return new ModelImpl() .property("description", new StringProperty()) .property("privileges", new ArrayProperty(new RefProperty("#/definitions/PrivilegeCreate"))) .property("inheritedRoles", new ArrayProperty(new RefProperty("#/definitions/RoleCreate"))); }
private SerializableParameter complement(Property property, RouteParameter source, SerializableParameter param) { param.setType(property.getType()); param.setFormat(property.getFormat()); // array param: if (property instanceof ArrayProperty) { param.setItems(((ArrayProperty) property).getItems()); } // enum values: List<String> enums = source.enums(); if (enums.size() > 0) { param.setEnum(enums); } // default value: if (param instanceof AbstractSerializableParameter) { ((AbstractSerializableParameter) param).setDefault(source.defaultValue()); } return param; } }
StringProperty stringProperty = (StringProperty) property; ModelImpl modelImpl = (ModelImpl) model; stringProperty.setPattern(modelImpl.getPattern()); stringProperty.setMaxLength(modelImpl.getMaxLength()); stringProperty.setMinLength(modelImpl.getMinLength()); return stringProperty; ArrayProperty property = new ArrayProperty(); Property inner = m.getItems(); property.setItems(inner); property.setExample(m.getExample()); property.setMaxItems(m.getMaxItems()); property.setMinItems(m.getMinItems()); property.setDescription(m.getDescription()); property.setTitle(m.getTitle()); property.setUniqueItems(m.getUniqueItems()); return property; RefProperty refProperty = new RefProperty(ref.get$ref(), ref.getRefFormat()); return refProperty; if(itemProperty instanceof RefProperty) { RefProperty refProperty = (RefProperty) itemProperty; objectProperty.property(refProperty.getSimpleRef(), itemProperty);
Property p = null; if (param.getAllowMultiple() != null && param.getAllowMultiple() == true) { ArrayProperty arrayProperty = new ArrayProperty(); Property innerType = PropertyBuilder.build(type, format, null); arrayProperty.setItems(innerType); p = arrayProperty; } else { "WARNING! No property detected for parameter '%s' (%s)! Falling back to string!", param.getName(), param.getParamType())); p = new StringProperty(); sp.setType("array"); sp.setCollectionFormat("csv"); sp.setItems(ap.getItems()); } else { sp.setType(p.getType()); sp.setFormat(p.getFormat());
Boolean wrapped = false; if (property.getXml() != null) { Xml xml = property.getXml(); name = xml.getName(); namespace = xml.getNamespace(); return alreadyProcessedRefExample(ref.getSimpleRef(), definitions, processedModels); processedModels.put(ref.getSimpleRef(), null); if( definitions != null ) { Model model = definitions.get(ref.getSimpleRef()); output = new StringExample(example.toString()); } else { String defaultValue = ((StringProperty)property).getDefault(); List<String> enums = ((StringProperty) property).getEnum(); if( enums != null && !enums.isEmpty()) { defaultValue = enums.get(0); Property inner = ap.getItems(); if (inner != null) { Object innerExample = fromProperty(inner, definitions, processedModels); Property inner = mp.getAdditionalProperties(); if (inner != null) { ObjectExample on = new ObjectExample();
ArrayProperty arrayProperty = new ArrayProperty(); if (propertyDefinition.getEntrySchema() != null) { String entrySchema = propertyDefinition.getEntrySchema().getType(); if (!BluePrintTypes.validPrimitiveTypes().contains(entrySchema)) { Property innerType = new RefProperty("#/definitions/" + entrySchema); arrayProperty.setItems(innerType); } else { Property innerType = new StringProperty(); arrayProperty.setItems(innerType); defProperty = new RefProperty("#/definitions/" + propertyDefinition.getType()); defProperty.setName(name); if (propertyDefinition.getDefaultValue() != null) { defProperty.setDefault(String.valueOf(propertyDefinition.getDefaultValue())); defProperty.setRequired(BooleanUtils.isTrue(propertyDefinition.getRequired())); defProperty.setDescription(propertyDefinition.getDescription()); return defProperty;
if (property != null) { if ("list".equalsIgnoreCase(responseContainer)) { responseProperty = new ArrayProperty(property); responseProperty = new MapProperty(property); responseProperty = new ArrayProperty(new RefProperty().asDefault(name)); responseProperty = new MapProperty(new RefProperty().asDefault(name)); .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))); Property items = ((ArrayProperty) property).getItems(); arrayModel.items(items); swagger.addDefinition(methodIdentifier, arrayModel);
@Override public Model getCREATEModel(Representation rep) { return ((ModelImpl) super.getCREATEModel(rep)) .property("javaClassName", new StringProperty()) .property("parent", new StringProperty().example("uuid")) //FIXME type .property("conceptClasses", new ArrayProperty(new StringProperty().example("uuid"))) .required("javaClassName"); } }
final Xml arrayXml = array.getXml(); if (arrayXml != null && Boolean.TRUE.equals(arrayXml.getWrapped())) { final String arrayElementName = determineArrayElementName(propertyName, array); final Property items = array.getItems(); final String arrayItemsType = items.getType(); if ("ref".equals(arrayItemsType)) { itemsElement = defineComplexElement((RefProperty) items, sequence, swagger, moreSchemas); if (array.getMaxItems() == null) { itemsElement.addAttribute("maxOccurs", "unbounded"); } else { itemsElement.addAttribute("maxOccurs", String.valueOf(array.getMaxItems())); if (array.getMinItems() == null) { itemsElement.addAttribute("minOccurs", "0"); } else { itemsElement.addAttribute("minOccurs", String.valueOf(array.getMinItems()));
private Property enforcePrimitive(final Property in, final int level) { if (in instanceof RefProperty) { return new StringProperty(); } if (in instanceof ArrayProperty) { if (level == 0) { final ArrayProperty array = (ArrayProperty) in; array.setItems(enforcePrimitive(array.getItems(), level + 1)); } else { return new StringProperty(); } } return in; }
if (String.class.isAssignableFrom(fieldType)) property = new StringProperty(); property = new ArrayProperty(new StringProperty()); property = new RefProperty(fieldType.getAnnotation(XmlType.class).name()); property = new StringProperty(); log.debug("Field type \"" + fieldType.getName() + "\" is a property type \"" + property.getType() + "\"."); return property;
@Override public Model getUPDATEModel(Representation representation) { return new ModelImpl() .property("name", new RefProperty("#/definitions/ConceptNameCreate")) .property("names", new ArrayProperty(new RefProperty("#/definitions/ConceptNameCreate"))) .property("descriptions", new ArrayProperty(new RefProperty("#/definitions/ConceptDescriptionCreate"))); }
boolean array = false; if (schema instanceof ArrayProperty) { schema = ((ArrayProperty)schema).getItems(); array = true; 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);