All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.jakehschwartz.finatra.swagger.SchemaUtil.scala Maven / Gradle / Ivy

There is a newer version: 24.2.0
Show newest version
package com.jakehschwartz.finatra.swagger

import io.swagger.models.properties.{ArrayProperty, Property, RefProperty}
import io.swagger.models.{ArrayModel, Model, RefModel}

object SchemaUtil {
  class SwaggerProperty(p: Property) {
    def toModel: Model = {
      val model = p match {
        case null => null
        case p: RefProperty => new RefModel(p.getSimpleRef)
        case p: ArrayProperty =>
          val arrayModel = new ArrayModel()
          arrayModel.setItems(p.getItems)
          arrayModel
        case _ => null
      }
      model
    }
  }

  implicit def swaggerProperty(p: Property): SwaggerProperty = new SwaggerProperty(p)
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy