Class: Mozenda::Infrastructure::Connection

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/mozenda/infrastructure/connection.rb

Instance Method Summary collapse

Constructor Details

#initializeConnection

Returns a new instance of Connection.



6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/mozenda/infrastructure/connection.rb', line 6

def initialize
  config = Mozenda::Configuration.instance
  default_params = {
    "WebServiceKey" => config.web_service_key,
    "Service" => config.service
  }
  @client = ::Faraday.new(url: config.base_uri, params: default_params)
  @multipart_client = ::Faraday.new(url: config.base_uri, params: default_params) do |builder|
    builder.request :multipart
    builder.request :url_encoded
    builder.adapter :net_http
  end
end

Instance Method Details

#get(params) ⇒ Object



20
21
22
# File 'lib/mozenda/infrastructure/connection.rb', line 20

def get params
  send_request(:get, params)
end

#multipart(params, file_path) ⇒ Object



28
29
30
31
32
33
34
35
36
# File 'lib/mozenda/infrastructure/connection.rb', line 28

def multipart params, file_path
  file = ::Faraday::UploadIO.new(file_path, 'application/xml')
  @multipart_client.post do |request|
    request.params.merge!(params)
    request.body = {
      "file" => file
    }
  end
end

#post(params) ⇒ Object



24
25
26
# File 'lib/mozenda/infrastructure/connection.rb', line 24

def post params
  send_request(:post, params)
end