module Avromatic::Model::Configurable::ClassMethods

Public Instance Methods

key_avro_field_names() click to toggle source
# File lib/avromatic/model/configurable.rb, line 34
def key_avro_field_names
  @key_avro_field_names ||= key_avro_schema.fields.map(&:name).map(&:to_sym).freeze
end
key_avro_field_references() click to toggle source
# File lib/avromatic/model/configurable.rb, line 44
def key_avro_field_references
  @key_avro_field_references ||= key_avro_schema.fields.map do |field|
    Avromatic::Model::Configurable::FieldReference.new(field.name)
  end.freeze
end
key_avro_fields_by_name() click to toggle source
# File lib/avromatic/model/configurable.rb, line 54
def key_avro_fields_by_name
  @key_avro_fields_by_name ||= mapped_by_name(key_avro_schema)
end
nested_models() click to toggle source
# File lib/avromatic/model/configurable.rb, line 58
def nested_models
  config.nested_models || Avromatic.nested_models
end
value_avro_field_names() click to toggle source
# File lib/avromatic/model/configurable.rb, line 30
def value_avro_field_names
  @value_avro_field_names ||= value_avro_schema.fields.map(&:name).map(&:to_sym).freeze
end
value_avro_field_references() click to toggle source
# File lib/avromatic/model/configurable.rb, line 38
def value_avro_field_references
  @value_avro_field_references ||= value_avro_schema.fields.map do |field|
    Avromatic::Model::Configurable::FieldReference.new(field.name)
  end.freeze
end
value_avro_fields_by_name() click to toggle source
# File lib/avromatic/model/configurable.rb, line 50
def value_avro_fields_by_name
  @value_avro_fields_by_name ||= mapped_by_name(value_avro_schema)
end

Private Instance Methods

mapped_by_name(schema) click to toggle source
# File lib/avromatic/model/configurable.rb, line 64
def mapped_by_name(schema)
  schema.fields.each_with_object(Hash.new) do |field, result|
    result[field.name.to_sym] = field
  end
end