Sha256: 67bbd2f83243eefb4a57feaf58761168e93d4734d0d19fc1f11a0b6363264ca9

Contents?: true

Size: 685 Bytes

Versions: 1

Compression:

Stored size: 685 Bytes

Contents

require 'active_support/time'

module EveOnline
  module XML
    module Models
      class ApiKeyInfo
        attr_reader :options

        def initialize(options)
          @options = options
        end

        def as_json
          {
            access_mask: access_mask,
            api_key_type: api_key_type,
            expires: expires
          }
        end

        def access_mask
          options.fetch('@accessMask').to_i
        end

        def api_key_type
          AccountTypeObject.new(options.fetch('@type')).value
        end

        def expires
          ActiveSupport::TimeZone['UTC'].parse(options.fetch('@expires'))
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
eve_online-0.12.0 lib/eve_online/xml/models/api_key_info.rb