Sha256: 2aa63b0a8d818886d980888d0a1fc7b4dbd44c17d50547dbefab049a5b501808

Contents?: true

Size: 1.04 KB

Versions: 19

Compression:

Stored size: 1.04 KB

Contents

# encoding: UTF-8

module BeerDb::Model

  class BrewerySerializer

    def initialize( brewery )
      @brewery = brewery
    end
    
    attr_reader :brewery
    
    def as_json

      beers = []
      brewery.beers.each do |b|
        beers << { key: b.key, title: b.title }
      end

      tags = []
      if brewery.tags.present?
        brewery.tags.each { |tag| tags << tag.key }
      end

      country = {
        key:   brewery.country.key,
        title: brewery.country.title
      }

      data = { key:      brewery.key,
               title:    brewery.title,
               synonyms: brewery.synonyms,
               since:    brewery.since,
               address:  brewery.address,
               web:      brewery.web,
               prod:     brewery.prod,  # (estimated) annual production in hl e.g. 2_000 hl
               tags:     tags,
               beers:    beers,
               country:  country }

      data.to_json
    end

  end # class BrewerySerializer

end # module BeerDb::Model

Version data entries

19 entries across 19 versions & 2 rubygems

Version Path
beerdb-models-1.1.1 lib/beerdb/serializers/brewery.rb
beerdb-models-1.1.0 lib/beerdb/serializers/brewery.rb
beerdb-models-1.0.1 lib/beerdb/serializers/brewery.rb
beerdb-models-1.0.0 lib/beerdb/serializers/brewery.rb
beerdb-models-0.10.0 lib/beerdb/serializers/brewery.rb
beerdb-0.9.13 lib/beerdb/serializers/brewery.rb
beerdb-0.9.12 lib/beerdb/serializers/brewery.rb
beerdb-0.9.11 lib/beerdb/serializers/brewery.rb
beerdb-0.9.10 lib/beerdb/serializers/brewery.rb
beerdb-0.9.9 lib/beerdb/serializers/brewery.rb
beerdb-0.9.8 lib/beerdb/serializers/brewery.rb
beerdb-0.9.7 lib/beerdb/serializers/brewery.rb
beerdb-0.9.6 lib/beerdb/serializers/brewery.rb
beerdb-0.9.5 lib/beerdb/serializers/brewery.rb
beerdb-0.9.4 lib/beerdb/serializers/brewery.rb
beerdb-0.9.3 lib/beerdb/serializers/brewery.rb
beerdb-0.9.2 lib/beerdb/serializers/brewery.rb
beerdb-0.9.1 lib/beerdb/serializers/brewery.rb
beerdb-0.9.0 lib/beerdb/serializers/brewery.rb