Sha256: eb72e4f88f7869fd91642991e66fd8b27ff358d5b722ab0903de7b0fc727d6ed

Contents?: true

Size: 1.5 KB

Versions: 5

Compression:

Stored size: 1.5 KB

Contents

module Sportradar
  module Api
    module 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

5 entries across 5 versions & 1 rubygems

Version Path
sportradar-api-0.20.2 lib/sportradar/api/mma/judge.rb
sportradar-api-0.20.1 lib/sportradar/api/mma/judge.rb
sportradar-api-0.20.0 lib/sportradar/api/mma/judge.rb
sportradar-api-0.20.0.pre2 lib/sportradar/api/mma/judge.rb
sportradar-api-0.20.0.pre lib/sportradar/api/mma/judge.rb