class Pwush::Client
Public Class Methods
new(options)
click to toggle source
# File lib/pwush/client.rb, line 13 def initialize(options) @config = Config.new(options) end
Private Instance Methods
build_request(payload = nil)
click to toggle source
# File lib/pwush/client.rb, line 42 def build_request(payload = nil) Request.new(auth: @config.auth, app: @config.app, payload: payload) end
get(action, payload = nil)
click to toggle source
# File lib/pwush/client.rb, line 19 def get(action, payload = nil) perform_request(:get, action, payload) end
perform_request(verb, action, payload)
click to toggle source
# File lib/pwush/client.rb, line 27 def perform_request(verb, action, payload) Response.wrap { raw_request(verb, action, payload) } end
post(action, payload = nil)
click to toggle source
# File lib/pwush/client.rb, line 23 def post(action, payload = nil) perform_request(:post, action, payload) end
raw_request(verb, action, payload)
click to toggle source
# File lib/pwush/client.rb, line 31 def raw_request(verb, action, payload) request = build_request(payload) url = url(action) @config.logger.info( "Pushwoosh #{verb.upcase} #{url} BODY #{request.body.to_json}" ) HTTP.timeout(@config.timeout).request(verb, url, json: request.body) end
url(action)
click to toggle source
# File lib/pwush/client.rb, line 46 def url(action) [@config.url, action].join('/') end