Class: Freesound::Client

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key, options = {}) ⇒ Client

Returns a new instance of Client.



5
6
7
8
9
# File 'lib/freesound/client.rb', line 5

def initialize(api_key, options={})
  @api_key   = api_key
  @requests  = []
  @responses = []
end

Instance Attribute Details

#api_keyObject (readonly)

Returns the value of attribute api_key.



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

def api_key
  @api_key
end

#requestsObject (readonly)

Returns the value of attribute requests.



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

def requests
  @requests
end

#responsesObject (readonly)

Returns the value of attribute responses.



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

def responses
  @responses
end

Instance Method Details

#get_sound(id) ⇒ Object



11
12
13
14
15
16
17
18
19
# File 'lib/freesound/client.rb', line 11

def get_sound(id)
  request = Request.new(@api_key, {:sound_id => id})
  response = request.get!

  @requests << request
  @responses << response

  response.sounds.first
end

#search_sounds(query, options = {}) ⇒ Object



21
22
23
24
25
26
27
28
29
# File 'lib/freesound/client.rb', line 21

def search_sounds(query, options={})
  request = Request.new(@api_key, {:search => {:q => query}})
  response = request.get!

  @requests << request
  @responses << response

  response.sounds
end