Генерировать avsc avro схему из класса дел в scala при сборке - PullRequest
0 голосов
/ 31 января 2019

Я хочу сгенерировать авро-схему из класса дел scala.

Предположим, у меня есть следующий класс дел scala:

case class User(name : String, favorite_number: Int, favorite_color: String)

Связанная схема авроis:

{"namespace": "example.avro",
 "type": "record",
 "name": "User",
 "fields": [
     {"name": "name", "type": "string"},
     {"name": "favorite_number",  "type": "int"},
     {"name": "favorite_color", "type": "string"}
 ]
}

Есть ли способ создания во время сборки, авроскема?используя sbt например?Я видел sbt-avro4s , которые позволяют создавать класс scala из схемы avro, но мне нужно сделать обратное.

Заранее спасибо за вашу помощь

1 Ответ

0 голосов
/ 01 февраля 2019

Avro4s содержит логику для создания схемы Avro из case class.

https://github.com/sksamuel/avro4s#schemas

В соответствии с примером проекта:

import com.sksamuel.avro4s.AvroSchema

case class User(name : String, favorite_number: Int, favorite_color: String)
val userSchema = AvroSchema[User]

Надеемсяэтого достаточно для начала работы с задачей sbt.

...