Class: ProcessOut::NativeAPMTransactionDetailsGateway

Inherits:
Object
  • Object
show all
Defined in:
lib/processout/native_apm_transaction_details_gateway.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client, data = {}) ⇒ NativeAPMTransactionDetailsGateway

Initializes the NativeAPMTransactionDetailsGateway object Params:

client

ProcessOut client instance

data

data that can be used to fill the object



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

def initialize(client, data = {})
  @client = client

  self.display_name = data.fetch(:display_name, nil)
  self.logo_url = data.fetch(:logo_url, nil)
  
end

Instance Attribute Details

#display_nameObject

Returns the value of attribute display_name.



11
12
13
# File 'lib/processout/native_apm_transaction_details_gateway.rb', line 11

def display_name
  @display_name
end

#logo_urlObject

Returns the value of attribute logo_url.



12
13
14
# File 'lib/processout/native_apm_transaction_details_gateway.rb', line 12

def logo_url
  @logo_url
end

Instance Method Details

#fill_with_data(data) ⇒ Object

Fills the object with data coming from the API Params:

data

Hash of data coming from the API



52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/processout/native_apm_transaction_details_gateway.rb', line 52

def fill_with_data(data)
  if data.nil?
    return self
  end
  if data.include? "display_name"
    self.display_name = data["display_name"]
  end
  if data.include? "logo_url"
    self.logo_url = data["logo_url"]
  end
  
  self
end

#new(data = {}) ⇒ Object

Create a new NativeAPMTransactionDetailsGateway using the current client



37
38
39
# File 'lib/processout/native_apm_transaction_details_gateway.rb', line 37

def new(data = {})
  NativeAPMTransactionDetailsGateway.new(@client, data)
end

#prefill(data) ⇒ Object

Prefills the object with the data passed as parameters Params:

data

Hash of data



69
70
71
72
73
74
75
76
77
# File 'lib/processout/native_apm_transaction_details_gateway.rb', line 69

def prefill(data)
  if data.nil?
    return self
  end
  self.display_name = data.fetch(:display_name, self.display_name)
  self.logo_url = data.fetch(:logo_url, self.logo_url)
  
  self
end

#to_json(options) ⇒ Object

Overrides the JSON marshaller to only send the fields we want



42
43
44
45
46
47
# File 'lib/processout/native_apm_transaction_details_gateway.rb', line 42

def to_json(options)
  {
      "display_name": self.display_name,
      "logo_url": self.logo_url,
  }.to_json
end