Is your enhancement related to a problem? Please describe
jackson-module-jsonSchema is deprecated and the docs suggest to switch to mbknor-jackson-jsonSchema.
It also has the benefit of allowing polymorphism, which actually produces unusable CRDs.
enum class ApplicationType {
@JsonProperty("dbt") DBT,
@JsonProperty("gravitas") GRAVITAS,
}
data class Application(
val dataProductId: String,
val type: ApplicationType,
val config: ApplicationConfig,
)
@JsonTypeInfo(
use = JsonTypeInfo.Id.NAME,
include = JsonTypeInfo.As.PROPERTY,
property = "type",
)
@JsonSubTypes(
JsonSubTypes.Type(value = TbdApplicationConfig::class, name = "dbt"),
JsonSubTypes.Type(value = GravitasApplicationConfig::class, name = "gravitas"),
)
sealed class ApplicationConfig
data class TbdApplicationConfig(
val image: String,
val startDate: OffsetDateTime,
val schedule: String,
val threads: Int = 1,
val command: List<String>?,
val arguments: List<String>?,
) : ApplicationConfig()
data class GravitasApplicationConfig(
val threads: Int = 1,
) : ApplicationConfig()
Describe the solution you'd like
switch to the new, suggested module.
Describe alternatives you've considered
No response
Additional context
No response
Is your enhancement related to a problem? Please describe
jackson-module-jsonSchema is deprecated and the docs suggest to switch to mbknor-jackson-jsonSchema.
It also has the benefit of allowing polymorphism, which actually produces unusable CRDs.
Describe the solution you'd like
switch to the new, suggested module.
Describe alternatives you've considered
No response
Additional context
No response