Sha256: 7e64bacc07fe8251507d370aff4adf25f421d40d402e9b36da9e0747c502073a

Contents?: true

Size: 850 Bytes

Versions: 4

Compression:

Stored size: 850 Bytes

Contents

# frozen_string_literal: true

require 'forwardable'

module EveOnline
  module ESI
    class UniverseType < Base
      extend Forwardable

      API_PATH = '/v3/universe/types/%<type_id>s/?datasource=%<datasource>s'

      attr_reader :id

      def initialize(options)
        super

        @id = options.fetch(:id)
      end

      def_delegators :model, :as_json, :capacity, :description, :graphic_id,
                     :group_id, :icon_id, :market_group_id, :mass, :name,
                     :packaged_volume, :portion_size, :published, :radius,
                     :type_id, :volume, :dogma_attributes, :dogma_effects

      def model
        @model ||= Models::Type.new(response)
      end

      def scope; end

      def url
        format("#{ API_HOST }#{ API_PATH }", type_id: id, datasource: datasource)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
eve_online-0.27.0 lib/eve_online/esi/universe_type.rb
eve_online-0.26.0 lib/eve_online/esi/universe_type.rb
eve_online-0.25.0 lib/eve_online/esi/universe_type.rb
eve_online-0.24.0 lib/eve_online/esi/universe_type.rb