Sha256: a761b66d95fb93f268d8141fb0170eac8c2172630300c05c70802fc9b6974411

Contents?: true

Size: 751 Bytes

Versions: 1

Compression:

Stored size: 751 Bytes

Contents

# Subdirs are not automatically loaded. Users must explicitly require them.

module G5K
  class Api
    class << self
      # must be a hash of RestClient resources
      attr_accessor :registered_apis
    end
    
    def self.select(api_name, api_version = nil, api_uri = nil)
      if (registered_apis && api = (registered_apis[api_name] || registered_apis[api_name.to_s] || registered_apis[api_name.to_sym]))
        api = api["/#{api_version}"] if api_version
        api = api[api_uri] if api_uri
        api
      else
        raise ArgumentError, "The API #{api_name} is not available."
      end
    end
  end
end

unless [].respond_to?(:group_by) || [].respond_to?(:index_by)
  require File.dirname(__FILE__)+"/g5k/enumerable_extensions"
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cryx-g5k-0.2.7 lib/g5k.rb