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.15.1 lib/sportradar/api/mma/judge.rb
sportradar-api-0.15.0 lib/sportradar/api/mma/judge.rb
sportradar-api-0.14.0 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.26 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.25 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.24 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.23 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.22 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.21 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.20 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.19 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.18 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.17 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.16 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.15 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.14 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.13 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.12 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.11 lib/sportradar/api/mma/judge.rb
sportradar-api-0.13.10 lib/sportradar/api/mma/judge.rb