Sha256: bc377f7c77666cd7f56f136f61a5b38796742d07620a4f8cd3cea6eb302c8c19

Contents?: true

Size: 1.5 KB

Versions: 211

Compression:

Stored size: 1.5 KB

Contents

module Sportradar
  module Api
    class Mma
      class Judge < Data
        attr_accessor :response, :id, :first_name, :last_name
        @all_hash = {}
        def self.new(data, **opts)
          existing = @all_hash[data['id']]
          if existing
            existing.update(data, **opts)
            existing.add_fight(opts[:fight])
            existing
          else
            @all_hash[data['id']] = super
          end
        end
        def self.all
          @all_hash.values
        end

        def initialize(data, **opts)
          @response = data
          @api      = opts[:api]
          @roster   = opts[:roster]
          @fights_hash = {}

          @id       = data['id']

          update(data)
        end

        def fights
          @fights_hash.values
        end
        def add_fight(fight)
          @fights_hash[fight.id] = fight if fight
        end


        def update(data, **opts)
          @first_name = data['first_name'] if data['first_name'] # "Sai",
          @nick_name  = data['nick_name']  if data['nick_name']  # "The Boss",

          self
        end

        def api
          @api ||= Sportradar::Api::Mma.new
        end

      end
    end
  end
end

__END__


m = Sportradar::Api::Mma.new
sr = m.participants;
f = sr.fighters.sample;


m = Sportradar::Api::Mma.new
sc = m.schedule;
e = sc.events.sample;
e.fights.first.fighters.first.born

fighter_hash = {'id' => "259117dc-c443-4086-8c1d-abd082e3d4b9" } # => Conor McGregor
f = Sportradar::Api::Mma::Fighter.new(fighter_hash)

Version data entries

211 entries across 211 versions & 1 rubygems

Version Path
sportradar-api-0.11.43 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.42 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.41 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.40 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.39 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.38 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.37 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.36 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.35 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.34 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.33 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.32 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.31 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.30 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.29 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.28 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.27 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.26 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.25 lib/sportradar/api/mma/judge.rb
sportradar-api-0.11.24 lib/sportradar/api/mma/judge.rb