@Override public String getTypeDeclaration(Schema propertySchema) { if (propertySchema instanceof ArraySchema) { ArraySchema arraySchema = (ArraySchema) propertySchema; Schema inner = arraySchema.getItems(); if (inner == null) { LOGGER.warn(arraySchema.getName() + "(array property) does not have a proper inner type defined"); return ""; } return getTypeDeclaration(inner) + "[]"; } else if (propertySchema instanceof MapSchema) { MapSchema mapSchema = (MapSchema) propertySchema; Schema inner = (Schema) mapSchema.getAdditionalProperties(); if (inner == null) { LOGGER.warn(propertySchema.getName() + "(map property) does not have a proper inner type defined"); return ""; } return getSchemaType(propertySchema) + "[string," + getTypeDeclaration(inner) + "]"; } return super.getTypeDeclaration(propertySchema); }
@Override public String getTypeDeclaration(Schema propertySchema) { if (propertySchema instanceof ArraySchema) { ArraySchema arraySchema = (ArraySchema) propertySchema; Schema inner = arraySchema.getItems(); if (inner == null) { LOGGER.warn(arraySchema.getName() + "(array property) does not have a proper inner type defined"); return ""; } return getTypeDeclaration(inner) + "[]"; } else if (propertySchema instanceof MapSchema) { MapSchema mapSchema = (MapSchema) propertySchema; Schema inner = (Schema) mapSchema.getAdditionalProperties(); if (inner == null) { LOGGER.warn(propertySchema.getName() + "(map property) does not have a proper inner type defined"); return ""; } return getSchemaType(propertySchema) + "[string," + getTypeDeclaration(inner) + "]"; } return super.getTypeDeclaration(propertySchema); }
@Override public String getTypeDeclaration(Schema propertySchema) { if (propertySchema instanceof ArraySchema) { ArraySchema arraySchema = (ArraySchema) propertySchema; Schema inner = arraySchema.getItems(); if (inner == null) { LOGGER.warn(arraySchema.getName() + "(array property) does not have a proper inner type defined"); // TODO maybe better defaulting to StringProperty than returning null return null; } return String.format("%s<%s>", getSchemaType(propertySchema), getTypeDeclaration(inner)); // return getSwaggerType(propertySchema) + "<" + getTypeDeclaration(inner) + ">"; } else if (propertySchema instanceof MapSchema || propertySchema.getAdditionalProperties() != null) { Schema inner = (Schema) propertySchema.getAdditionalProperties(); if (inner == null) { LOGGER.warn(propertySchema.getName() + "(map property) does not have a proper inner type defined"); // TODO maybe better defaulting to StringProperty than returning null return null; } return getSchemaType(propertySchema) + "<String, " + getTypeDeclaration(inner) + ">"; } return super.getTypeDeclaration(propertySchema); }
@Override public String getTypeDeclaration(Schema propertySchema) { if (propertySchema instanceof ArraySchema) { ArraySchema arraySchema = (ArraySchema) propertySchema; Schema inner = arraySchema.getItems(); if (inner == null) { LOGGER.warn(arraySchema.getName() + "(array property) does not have a proper inner type defined"); return ""; } return getTypeDeclaration(inner) + "[]"; } else if (propertySchema instanceof MapSchema) { MapSchema mapSchema = (MapSchema) propertySchema; Schema inner = (Schema) mapSchema.getAdditionalProperties(); if (inner == null) { LOGGER.warn(propertySchema.getName() + "(map property) does not have a proper inner type defined"); return ""; } return getSchemaType(propertySchema) + "[string," + getTypeDeclaration(inner) + "]"; } else if (StringUtils.isNotBlank(propertySchema.get$ref())) { String type = super.getTypeDeclaration(propertySchema); return (!languageSpecificPrimitives.contains(type)) ? "\\" + modelPackage + "\\" + type : type; } return super.getTypeDeclaration(propertySchema); }
@Override public String getTypeDeclaration(Schema propertySchema) { if (propertySchema instanceof ArraySchema) { ArraySchema arraySchema = (ArraySchema) propertySchema; Schema inner = arraySchema.getItems(); if (inner == null) { LOGGER.warn(arraySchema.getName() + "(array property) does not have a proper inner type defined"); return ""; } return getTypeDeclaration(inner) + "[]"; } else if (propertySchema instanceof MapSchema) { MapSchema mapSchema = (MapSchema) propertySchema; Schema inner = (Schema) mapSchema.getAdditionalProperties(); if (inner == null) { LOGGER.warn(propertySchema.getName() + "(map property) does not have a proper inner type defined"); return ""; } return getSchemaType(propertySchema) + "[string," + getTypeDeclaration(inner) + "]"; } else if (StringUtils.isNotBlank(propertySchema.get$ref())) { String type = super.getTypeDeclaration(propertySchema); return (!languageSpecificPrimitives.contains(type)) ? "\\" + modelPackage + "\\" + type : type; } return super.getTypeDeclaration(propertySchema); }
@Override public String getTypeDeclaration(Schema propertySchema) { if (propertySchema instanceof ArraySchema) { ArraySchema arraySchema = (ArraySchema) propertySchema; Schema inner = arraySchema.getItems(); if (inner == null) { LOGGER.warn(arraySchema.getName() + "(array property) does not have a proper inner type defined"); // TODO maybe better defaulting to StringProperty than returning null return null; } return String.format("%s<%s>", getSchemaType(propertySchema), getTypeDeclaration(inner)); // return getSwaggerType(propertySchema) + "<" + getTypeDeclaration(inner) + ">"; } else if (propertySchema instanceof MapSchema || propertySchema.getAdditionalProperties() != null) { Schema inner = (Schema) propertySchema.getAdditionalProperties(); if (inner == null) { LOGGER.warn(propertySchema.getName() + "(map property) does not have a proper inner type defined"); // TODO maybe better defaulting to StringProperty than returning null return null; } return getSchemaType(propertySchema) + "<String, " + getTypeDeclaration(inner) + ">"; } return super.getTypeDeclaration(propertySchema); }
Schema inner = ap.getItems(); if (inner == null) { LOGGER.warn(ap.getName() + "(array property) does not have a proper inner type defined.Default to string"); inner = new StringSchema().description("TODO default missing array inner type to string");
@Override public String getTypeDeclaration(Schema p) { if (ModelUtils.isArraySchema(p)) { ArraySchema ap = (ArraySchema) p; Schema inner = ap.getItems(); if (inner == null) { LOGGER.warn(ap.getName() + "(array property) does not have a proper inner type defined"); // TODO maybe better defaulting to StringProperty than returning null return null; } return getSchemaType(p) + "<" + getTypeDeclaration(inner) + ">"; } else if (ModelUtils.isMapSchema(p)) { Schema inner = ModelUtils.getAdditionalProperties(p); if (inner == null) { LOGGER.warn(p.getName() + "(map property) does not have a proper inner type defined"); // TODO maybe better defaulting to StringProperty than returning null return null; } return getSchemaType(p) + "<String, " + getTypeDeclaration(inner) + ">"; } return super.getTypeDeclaration(p); }
@SuppressWarnings("static-method") public Schema modelFromProperty(ArraySchema object, @SuppressWarnings("unused") String path) { String description = object.getDescription(); String example = null; Object obj = object.getExample(); if (obj != null) { example = obj.toString(); } Schema inner = object.getItems(); if (inner instanceof ObjectSchema) { ArraySchema model = new ArraySchema(); model.setDescription(description); model.setExample(example); model.setItems(object.getItems()); model.setName(object.getName()); return model; } return null; }
@Override public String getTypeDeclaration(Schema p) { if (ModelUtils.isArraySchema(p)) { ArraySchema ap = (ArraySchema) p; Schema inner = ap.getItems(); if (inner == null) { LOGGER.warn(ap.getName() + "(array property) does not have a proper inner type defined.Default to string"); inner = new StringSchema().description("TODO default missing array inner type to string"); } return getSchemaType(p) + "<" + getTypeDeclaration(inner) + ">"; } else if (ModelUtils.isMapSchema(p)) { Schema inner = ModelUtils.getAdditionalProperties(p); if (inner == null) { LOGGER.warn(p.getName() + "(map property) does not have a proper inner type defined. Default to string"); inner = new StringSchema().description("TODO default missing array inner type to string"); } return getSchemaType(p) + "<String, " + getTypeDeclaration(inner) + ">"; } return super.getTypeDeclaration(p); }