Module: Avromatic::Model::RawSerialization::ClassMethods

Includes:
Decode
Defined in:
lib/avromatic/model/raw_serialization.rb

Instance Method Summary collapse

Methods included from Decode

#avro_raw_decode

Instance Method Details

#datum_readerObject



159
160
161
162
163
164
165
# File 'lib/avromatic/model/raw_serialization.rb', line 159

def datum_reader
  @datum_reader ||= begin
    hash = { value: datum_reader_class.new(value_avro_schema) }
    hash[:key] = datum_reader_class.new(key_avro_schema) if key_avro_schema
    hash
  end
end

#datum_reader_classObject



143
144
145
# File 'lib/avromatic/model/raw_serialization.rb', line 143

def datum_reader_class
  Avromatic.use_custom_datum_reader ? Avromatic::IO::DatumReader : Avro::IO::DatumReader
end

#datum_writerObject



151
152
153
154
155
156
157
# File 'lib/avromatic/model/raw_serialization.rb', line 151

def datum_writer
  @datum_writer ||= begin
                      hash = { value: datum_writer_class.new(value_avro_schema) }
                      hash[:key] = datum_writer_class.new(key_avro_schema) if key_avro_schema
                      hash
                    end
end

#datum_writer_classObject



147
148
149
# File 'lib/avromatic/model/raw_serialization.rb', line 147

def datum_writer_class
  Avromatic.use_custom_datum_writer ? Avromatic::IO::DatumWriter : Avro::IO::DatumWriter
end