Class: BigMachines::Transaction

Inherits:
Object
  • Object
show all
Defined in:
lib/big_machines/transaction.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(response) ⇒ Transaction



5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/big_machines/transaction.rb', line 5

def initialize(response)
  @raw_transaction = response
  # Metadata
  @transaction = response["transaction"]
  # Quote
  @quote_process = @transaction["data_xml"]["quote_process"]
  # Line Items
  @line_process = if @quote_process["sub_documents"].is_a?(Hash)
    @quote_process["sub_documents"]["line_process"]
  else
    []
  end
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method, *args) ⇒ Object



19
20
21
# File 'lib/big_machines/transaction.rb', line 19

def method_missing(method, *args)
  @transaction[method.to_s]
end

Instance Attribute Details

#raw_transactionObject (readonly)

Returns the value of attribute raw_transaction.



3
4
5
# File 'lib/big_machines/transaction.rb', line 3

def raw_transaction
  @raw_transaction
end

Instance Method Details

#quoteObject



23
24
25
# File 'lib/big_machines/transaction.rb', line 23

def quote
  @quote_process
end

#quote_line_itemsObject



27
28
29
# File 'lib/big_machines/transaction.rb', line 27

def quote_line_items
  @line_process
end