|
- module Calefaction::EVE
- extend self
-
- def corp_ticker(corp_id)
- cache_key = "calefaction/eve/corp_ticker/#{corp_id}"
- existing = Rails.cache.read(cache_key)
- return existing unless existing.nil?
- ticker = get_corp_ticker_from_api(corp_id)
- return '?' if ticker.nil?
- Rails.cache.write(cache_key, ticker)
- ticker
- end
-
- private
- def get_corp_ticker_from_api(corp_id)
- ensure_api
- @@api.scope = 'corp'
- begin
- @@api.CorporationSheet(corporationID: corp_id).ticker
- rescue EAAL::EAALError
- nil
- end
- end
-
- def ensure_api
- @@api ||= EAAL::API.new(nil, nil)
- end
- end
|