protected def buildSchema()

in parquet/src/main/scala/magnolify/parquet/ParquetField.scala [41:73]


  protected def buildSchema(cm: CaseMapper, properties: MagnolifyParquetProperties): Type

  def schema(
    cm: CaseMapper,
    properties: MagnolifyParquetProperties
  ): Type = schemaCache.getOrElseUpdate(
    (properties.schemaUniquenessKey, cm.uuid),
    buildSchema(cm, properties)
  )

  def fieldDocs(cm: CaseMapper): Map[String, String]
  def typeDoc: Option[String]

  protected def isGroup(properties: MagnolifyParquetProperties): Boolean = false
  protected def isEmpty(v: T): Boolean
  protected final def nonEmpty(v: T): Boolean = !isEmpty(v)

  def write(c: RecordConsumer, v: T)(cm: CaseMapper, properties: MagnolifyParquetProperties): Unit
  def newConverter(writerSchema: Type): TypeConverter[T]

  protected def writeGroup(
    c: RecordConsumer,
    v: T
  )(cm: CaseMapper, properties: MagnolifyParquetProperties): Unit = {
    val wrapGroup = isGroup(properties)
    if (wrapGroup) {
      c.startGroup()
    }
    write(c, v)(cm, properties)
    if (wrapGroup) {
      c.endGroup()
    }
  }