Class: ModernTreasury::PaymentReferenceObject

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/modern_treasury/models/payment_reference_object.rb

Overview

PaymentReferenceObject Model.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(id:, object:, live_mode:, created_at:, updated_at:, referenceable_id:, referenceable_type:, reference_number:, reference_number_type:) ⇒ PaymentReferenceObject

Returns a new instance of PaymentReferenceObject.



79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 79

def initialize(id:, object:, live_mode:, created_at:, updated_at:,
               referenceable_id:, referenceable_type:, reference_number:,
               reference_number_type:)
  @id = id
  @object = object
  @live_mode = live_mode
  @created_at = created_at
  @updated_at = updated_at
  @referenceable_id = referenceable_id
  @referenceable_type = referenceable_type
  @reference_number = reference_number
  @reference_number_type = reference_number_type
end

Instance Attribute Details

#created_atDateTime

This field will be true if this object exists in the live environment or false if it exists in the test environment.

Returns:

  • (DateTime)


29
30
31
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 29

def created_at
  @created_at
end

#idUUID | String

TODO: Write general description for this method

Returns:

  • (UUID | String)


15
16
17
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 15

def id
  @id
end

#live_modeTrueClass | FalseClass

This field will be true if this object exists in the live environment or false if it exists in the test environment.

Returns:

  • (TrueClass | FalseClass)


24
25
26
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 24

def live_mode
  @live_mode
end

#objectString

TODO: Write general description for this method

Returns:

  • (String)


19
20
21
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 19

def object
  @object
end

#reference_numberString

The actual reference number assigned by the bank.

Returns:

  • (String)


48
49
50
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 48

def reference_number
  @reference_number
end

#reference_number_typeReferenceNumberType1

The type of reference number.



52
53
54
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 52

def reference_number_type
  @reference_number_type
end

#referenceable_idString

The id of the referenceable to search for. Must be accompanied by the referenceable_type or will return an error.

Returns:

  • (String)


39
40
41
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 39

def referenceable_id
  @referenceable_id
end

#referenceable_typeReferenceableType

One of the referenceable types. This must be accompanied by the id of the referenceable or will return an error.

Returns:



44
45
46
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 44

def referenceable_type
  @referenceable_type
end

#updated_atDateTime

This field will be true if this object exists in the live environment or false if it exists in the test environment.

Returns:

  • (DateTime)


34
35
36
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 34

def updated_at
  @updated_at
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 94

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  id = hash.key?('id') ? hash['id'] : nil
  object = hash.key?('object') ? hash['object'] : nil
  live_mode = hash.key?('live_mode') ? hash['live_mode'] : nil
  created_at = if hash.key?('created_at')
                 (DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
               end
  updated_at = if hash.key?('updated_at')
                 (DateTimeHelper.from_rfc3339(hash['updated_at']) if hash['updated_at'])
               end
  referenceable_id =
    hash.key?('referenceable_id') ? hash['referenceable_id'] : nil
  referenceable_type =
    hash.key?('referenceable_type') ? hash['referenceable_type'] : nil
  reference_number =
    hash.key?('reference_number') ? hash['reference_number'] : nil
  reference_number_type =
    hash.key?('reference_number_type') ? hash['reference_number_type'] : nil

  # Create object from extracted values.
  PaymentReferenceObject.new(id: id,
                             object: object,
                             live_mode: live_mode,
                             created_at: created_at,
                             updated_at: updated_at,
                             referenceable_id: referenceable_id,
                             referenceable_type: referenceable_type,
                             reference_number: reference_number,
                             reference_number_type: reference_number_type)
end

.namesObject

A mapping from model property names to API property names.



55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 55

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['id'] = 'id'
  @_hash['object'] = 'object'
  @_hash['live_mode'] = 'live_mode'
  @_hash['created_at'] = 'created_at'
  @_hash['updated_at'] = 'updated_at'
  @_hash['referenceable_id'] = 'referenceable_id'
  @_hash['referenceable_type'] = 'referenceable_type'
  @_hash['reference_number'] = 'reference_number'
  @_hash['reference_number_type'] = 'reference_number_type'
  @_hash
end

.nullablesObject

An array for nullable fields



75
76
77
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 75

def self.nullables
  []
end

.optionalsObject

An array for optional fields



70
71
72
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 70

def self.optionals
  []
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



146
147
148
149
150
151
152
153
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 146

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} id: #{@id.inspect}, object: #{@object.inspect}, live_mode:"\
  " #{@live_mode.inspect}, created_at: #{@created_at.inspect}, updated_at:"\
  " #{@updated_at.inspect}, referenceable_id: #{@referenceable_id.inspect},"\
  " referenceable_type: #{@referenceable_type.inspect}, reference_number:"\
  " #{@reference_number.inspect}, reference_number_type: #{@reference_number_type.inspect}>"
end

#to_custom_created_atObject



128
129
130
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 128

def to_custom_created_at
  DateTimeHelper.to_rfc3339(created_at)
end

#to_custom_updated_atObject



132
133
134
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 132

def to_custom_updated_at
  DateTimeHelper.to_rfc3339(updated_at)
end

#to_sObject

Provides a human-readable string representation of the object.



137
138
139
140
141
142
143
# File 'lib/modern_treasury/models/payment_reference_object.rb', line 137

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} id: #{@id}, object: #{@object}, live_mode: #{@live_mode}, created_at:"\
  " #{@created_at}, updated_at: #{@updated_at}, referenceable_id: #{@referenceable_id},"\
  " referenceable_type: #{@referenceable_type}, reference_number: #{@reference_number},"\
  " reference_number_type: #{@reference_number_type}>"
end