Sha256: 330b913537a781ff5cac8848b116d2468a1d09350b9ca2c0b5937d478282dd76

Contents?: true

Size: 705 Bytes

Versions: 7

Compression:

Stored size: 705 Bytes

Contents

# Simple class for service structure
class BungieClient::Service
  attr_reader :type, :name, :endpoint

  # Get list of services
  #
  # @see http://destinydevs.github.io/BungieNetPlatform/docs/Endpoints
  #
  # @return [Hash]
  def self.services
    return @services unless @services.nil?

    @services = YAML.load_file "#{File.dirname(__FILE__)}/services.yml" || {}
  end

  # Initialize service by name with snake case style
  #
  # @example service =
  #
  # @param [String] name
  def initialize(name)
    service = self.class.services[name]

    raise 'Undefined service' if service.nil?

    @type     = service[:method]
    @name     = service[:name]
    @endpoint = service[:endpoint]
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
bungie_client-2.1.2.1 lib/bungie_client/service.rb
bungie_client-2.1.2 lib/bungie_client/service.rb
bungie_client-2.1.1.1 lib/bungie_client/service.rb
bungie_client-2.1.1 lib/bungie_client/service.rb
bungie_client-2.1.0 lib/bungie_client/service.rb
bungie_client-2.0.1 lib/bungie_client/service.rb
bungie_client-2.0.0 lib/bungie_client/service.rb