Class: PlatformSdk::DataPipeline::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/platform_sdk/data_pipeline/data_pipeline_client.rb

Overview

DataPipeline::Client

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(credentials) ⇒ Client

Returns a new instance of Client.

Raises:

  • (ArgumentError)


9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/platform_sdk/data_pipeline/data_pipeline_client.rb', line 9

def initialize(credentials)
  @credentials = credentials

  raise ArgumentError, "pipeline_host is required" if @credentials[:pipeline_host].nil?
  raise ArgumentError, "pipeline_username is required" if @credentials[:pipeline_username].nil?
  raise ArgumentError, "pipeline_password is required" if @credentials[:pipeline_password].nil?

  @conn = Faraday.new(url: "https://#{@credentials[:pipeline_host]}") do |faraday|
    faraday.request(:retry, retry_options)
    faraday.request(:authorization, :basic, @credentials[:pipeline_username], @credentials[:pipeline_password])
    faraday.headers = headers
    faraday.response :raise_error
    faraday.adapter(:net_http)
  end
end

Instance Attribute Details

#connObject (readonly)

Returns the value of attribute conn.



7
8
9
# File 'lib/platform_sdk/data_pipeline/data_pipeline_client.rb', line 7

def conn
  @conn
end

#credentialsObject (readonly)

Returns the value of attribute credentials.



7
8
9
# File 'lib/platform_sdk/data_pipeline/data_pipeline_client.rb', line 7

def credentials
  @credentials
end

Instance Method Details

#post(message) ⇒ Object



42
43
44
# File 'lib/platform_sdk/data_pipeline/data_pipeline_client.rb', line 42

def post(message)
  @conn.post("messages", message.to_json)
end