Class: Freesound::URICompiler

Inherits:
Object
  • Object
show all
Defined in:
lib/freesound/uri_compiler.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key, params) ⇒ URICompiler

Returns a new instance of URICompiler.



5
6
7
8
9
10
11
# File 'lib/freesound/uri_compiler.rb', line 5

def initialize(api_key, params)
  search_params = params.delete(:search)
  sound_id      = params.delete(:sound_id)
  form          = params.delete(:format)
  @api_key      = api_key
  @uri_string   = compile_uri_string(search_params, sound_id, form)
end

Instance Attribute Details

#uri_stringObject (readonly)

Returns the value of attribute uri_string.



3
4
5
# File 'lib/freesound/uri_compiler.rb', line 3

def uri_string
  @uri_string
end

Instance Method Details

#compile_uri_string(search_params, sound_id, form) ⇒ Object



17
18
19
20
21
22
23
24
25
# File 'lib/freesound/uri_compiler.rb', line 17

def compile_uri_string(search_params, sound_id, form)
  format_string = form ? "&format=#{form}" : ""

  if search_params
    search_uri(search_params, format_string)
  elsif sound_id
    sound_id_uri(sound_id, format_string)
  end
end

#uriObject



13
14
15
# File 'lib/freesound/uri_compiler.rb', line 13

def uri
  @uri ||= URI.parse(@uri_string)
end