Class: ActionKitRest::API

Inherits:
Vertebrae::API
  • Object
show all
Defined in:
lib/action_kit_rest/api.rb

Direct Known Subclasses

Client

Instance Method Summary collapse

Instance Method Details

#default_optionsObject



28
29
30
31
32
33
34
# File 'lib/action_kit_rest/api.rb', line 28

def default_options
  {
    user_agent: 'ActionKitRestGem',
    prefix: '/rest/v1',
    content_type: 'application/json; charset=utf-8'
  }
end

#extract_data_from_params(params) ⇒ Object

:nodoc:



20
21
22
23
24
25
26
# File 'lib/action_kit_rest/api.rb', line 20

def extract_data_from_params(params) # :nodoc:
  if params.has_key?('data') && params['data'].present?
    return params['data']
  else
    return params
  end
end

#post_json_request(path, params) ⇒ Object



8
9
10
11
12
# File 'lib/action_kit_rest/api.rb', line 8

def post_json_request(path, params)
  p = {}
  p['data'] = params.to_json
  post_request(path, p)
end

#put_json_request(path, params) ⇒ Object



14
15
16
17
18
# File 'lib/action_kit_rest/api.rb', line 14

def put_json_request(path, params)
  p = {}
  p['data'] = params.to_json
  put_request(path, p)
end

#request(*args) ⇒ Object



4
5
6
# File 'lib/action_kit_rest/api.rb', line 4

def request(*args)
  ActionKitRest::Response::Wrapper.new( super(*args) )
end

#setupObject



36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/action_kit_rest/api.rb', line 36

def setup
  connection.stack do |builder|
    builder.use Faraday::Request::Multipart
    builder.use Faraday::Request::UrlEncoded
    if connection.configuration.authenticated?
      builder.use Faraday::Request::BasicAuthentication, connection.configuration.username, connection.configuration.password
    end

    builder.use Faraday::Response::Logger if ENV['DEBUG']

    builder.use FaradayMiddleware::Mashify
    builder.use FaradayMiddleware::ParseJson

    builder.use  ActionKitRest::Response::RaiseError
    builder.adapter connection.configuration.adapter
  end
end