Class: Socketlab::SocketlabRequest
- Inherits:
-
Object
- Object
- Socketlab::SocketlabRequest
- Defined in:
- lib/socketlab/socketklab_request.rb
Direct Known Subclasses
AccountData, FblReport, MessageFailed, MessageOpenClick, MessageProcessed, MessageQueued
Instance Attribute Summary collapse
-
#api_password ⇒ Object
Returns the value of attribute api_password.
-
#api_response ⇒ Object
Returns the value of attribute api_response.
-
#api_server ⇒ Object
Returns the value of attribute api_server.
-
#api_user ⇒ Object
Returns the value of attribute api_user.
-
#api_version ⇒ Object
Returns the value of attribute api_version.
-
#count ⇒ Object
Returns the value of attribute count.
-
#error ⇒ Object
Returns the value of attribute error.
-
#items ⇒ Object
Returns the value of attribute items.
-
#query_params ⇒ Object
Returns the value of attribute query_params.
-
#timestamp ⇒ Object
Returns the value of attribute timestamp.
-
#total_count ⇒ Object
Returns the value of attribute total_count.
-
#total_pages ⇒ Object
Returns the value of attribute total_pages.
Instance Method Summary collapse
-
#initialize(api_user = nil, api_key = nil, api_server = nil, api_version = nil) ⇒ SocketlabRequest
constructor
A new instance of SocketlabRequest.
-
#set_query_params_type ⇒ Object
default response type is json.
- #set_request_options ⇒ Object
-
#set_response(item_class_name) ⇒ Object
Assuming type is json.
- #socketlab_request(module_name) ⇒ Object
- #success? ⇒ Boolean
Constructor Details
#initialize(api_user = nil, api_key = nil, api_server = nil, api_version = nil) ⇒ SocketlabRequest
Returns a new instance of SocketlabRequest.
6 7 8 9 10 11 |
# File 'lib/socketlab/socketklab_request.rb', line 6 def initialize(api_user = nil, api_key = nil,api_server=nil,api_version=nil) @api_user = api_user || Socketlab.api_user @api_password = api_password || Socketlab.api_password @api_version = api_version || Socketlab.api_version || "v1" end |
Instance Attribute Details
#api_password ⇒ Object
Returns the value of attribute api_password.
3 4 5 |
# File 'lib/socketlab/socketklab_request.rb', line 3 def api_password @api_password end |
#api_response ⇒ Object
Returns the value of attribute api_response.
4 5 6 |
# File 'lib/socketlab/socketklab_request.rb', line 4 def api_response @api_response end |
#api_server ⇒ Object
Returns the value of attribute api_server.
3 4 5 |
# File 'lib/socketlab/socketklab_request.rb', line 3 def api_server @api_server end |
#api_user ⇒ Object
Returns the value of attribute api_user.
3 4 5 |
# File 'lib/socketlab/socketklab_request.rb', line 3 def api_user @api_user end |
#api_version ⇒ Object
Returns the value of attribute api_version.
3 4 5 |
# File 'lib/socketlab/socketklab_request.rb', line 3 def api_version @api_version end |
#count ⇒ Object
Returns the value of attribute count.
4 5 6 |
# File 'lib/socketlab/socketklab_request.rb', line 4 def count @count end |
#error ⇒ Object
Returns the value of attribute error.
3 4 5 |
# File 'lib/socketlab/socketklab_request.rb', line 3 def error @error end |
#items ⇒ Object
Returns the value of attribute items.
4 5 6 |
# File 'lib/socketlab/socketklab_request.rb', line 4 def items @items end |
#query_params ⇒ Object
Returns the value of attribute query_params.
3 4 5 |
# File 'lib/socketlab/socketklab_request.rb', line 3 def query_params @query_params end |
#timestamp ⇒ Object
Returns the value of attribute timestamp.
4 5 6 |
# File 'lib/socketlab/socketklab_request.rb', line 4 def @timestamp end |
#total_count ⇒ Object
Returns the value of attribute total_count.
4 5 6 |
# File 'lib/socketlab/socketklab_request.rb', line 4 def total_count @total_count end |
#total_pages ⇒ Object
Returns the value of attribute total_pages.
4 5 6 |
# File 'lib/socketlab/socketklab_request.rb', line 4 def total_pages @total_pages end |
Instance Method Details
#set_query_params_type ⇒ Object
default response type is json
18 19 20 |
# File 'lib/socketlab/socketklab_request.rb', line 18 def set_query_params_type @query_params[:type]= @query_params[:type] || "json" end |
#set_request_options ⇒ Object
22 23 24 25 26 27 28 |
# File 'lib/socketlab/socketklab_request.rb', line 22 def set_query_params_type = {} [:query] = @query_params [:basic_auth] = {:username => @api_user, :password => @api_password} end |
#set_response(item_class_name) ⇒ Object
Assuming type is json
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/socketlab/socketklab_request.rb', line 31 def set_response(item_class_name) if @api_response.success? @total_count = @api_response["totalCount"] @total_pages = @api_response["totalPages"] @count = @api_response["count"] @timestamp = @api_response["timestamp"] @items = [] unless @api_response["collection"].nil? @api_response["collection"].each do |attr_item| item = item_class_name.new item.set_item(attr_item) @items << item end end else @error = @api_response.parsed_response end end |
#socketlab_request(module_name) ⇒ Object
13 14 15 |
# File 'lib/socketlab/socketklab_request.rb', line 13 def socketlab_request(module_name) @api_response =HTTParty.get("https://#{BASE_URI}/#{@api_version}/#{module_name}", ) end |
#success? ⇒ Boolean
50 51 52 |
# File 'lib/socketlab/socketklab_request.rb', line 50 def success? @api_response.success? end |