Class: ModernTreasury::Event

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

Overview

Event 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 = nil, object = nil, live_mode = nil, created_at = nil, updated_at = nil, resource = nil, event_name = nil, event_time = nil, data = nil, entity_id = nil) ⇒ Event

Returns a new instance of Event.



82
83
84
85
86
87
88
89
90
91
92
93
94
95
# File 'lib/modern_treasury/models/event.rb', line 82

def initialize(id = nil, object = nil, live_mode = nil, created_at = nil,
               updated_at = nil, resource = nil, event_name = nil,
               event_time = nil, data = nil, entity_id = nil)
  @id = id
  @object = object
  @live_mode = live_mode
  @created_at = created_at
  @updated_at = updated_at
  @resource = resource
  @event_name = event_name
  @event_time = event_time
  @data = data
  @entity_id = entity_id
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/event.rb', line 29

def created_at
  @created_at
end

#dataObject

The body of the event.

Returns:

  • (Object)


50
51
52
# File 'lib/modern_treasury/models/event.rb', line 50

def data
  @data
end

#entity_idString

The ID of the entity for the event.

Returns:

  • (String)


54
55
56
# File 'lib/modern_treasury/models/event.rb', line 54

def entity_id
  @entity_id
end

#event_nameString

The name of the event.

Returns:

  • (String)


42
43
44
# File 'lib/modern_treasury/models/event.rb', line 42

def event_name
  @event_name
end

#event_timeDateTime

The time of the event.

Returns:

  • (DateTime)


46
47
48
# File 'lib/modern_treasury/models/event.rb', line 46

def event_time
  @event_time
end

#idUUID | String

TODO: Write general description for this method

Returns:

  • (UUID | String)


15
16
17
# File 'lib/modern_treasury/models/event.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/event.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/event.rb', line 19

def object
  @object
end

#resourceString

The type of resource for the event.

Returns:

  • (String)


38
39
40
# File 'lib/modern_treasury/models/event.rb', line 38

def resource
  @resource
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/event.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.



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
127
128
129
130
# File 'lib/modern_treasury/models/event.rb', line 98

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
  resource = hash.key?('resource') ? hash['resource'] : nil
  event_name = hash.key?('event_name') ? hash['event_name'] : nil
  event_time = if hash.key?('event_time')
                 (DateTimeHelper.from_rfc3339(hash['event_time']) if hash['event_time'])
               end
  data = hash.key?('data') ? hash['data'] : nil
  entity_id = hash.key?('entity_id') ? hash['entity_id'] : nil

  # Create object from extracted values.
  Event.new(id,
            object,
            live_mode,
            created_at,
            updated_at,
            resource,
            event_name,
            event_time,
            data,
            entity_id)
end

.namesObject

A mapping from model property names to API property names.



57
58
59
60
61
62
63
64
65
66
67
68
69
70
# File 'lib/modern_treasury/models/event.rb', line 57

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['resource'] = 'resource'
  @_hash['event_name'] = 'event_name'
  @_hash['event_time'] = 'event_time'
  @_hash['data'] = 'data'
  @_hash['entity_id'] = 'entity_id'
  @_hash
end

.nullablesObject

An array for nullable fields



78
79
80
# File 'lib/modern_treasury/models/event.rb', line 78

def self.nullables
  []
end

.optionalsObject

An array for optional fields



73
74
75
# File 'lib/modern_treasury/models/event.rb', line 73

def self.optionals
  []
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



153
154
155
156
157
158
159
160
# File 'lib/modern_treasury/models/event.rb', line 153

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}, resource: #{@resource.inspect}, event_name:"\
  " #{@event_name.inspect}, event_time: #{@event_time.inspect}, data: #{@data.inspect},"\
  " entity_id: #{@entity_id.inspect}>"
end

#to_custom_created_atObject



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

def to_custom_created_at
  DateTimeHelper.to_rfc3339(created_at)
end

#to_custom_event_timeObject



140
141
142
# File 'lib/modern_treasury/models/event.rb', line 140

def to_custom_event_time
  DateTimeHelper.to_rfc3339(event_time)
end

#to_custom_updated_atObject



136
137
138
# File 'lib/modern_treasury/models/event.rb', line 136

def to_custom_updated_at
  DateTimeHelper.to_rfc3339(updated_at)
end

#to_sObject

Provides a human-readable string representation of the object.



145
146
147
148
149
150
# File 'lib/modern_treasury/models/event.rb', line 145

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}, resource: #{@resource}, event_name:"\
  " #{@event_name}, event_time: #{@event_time}, data: #{@data}, entity_id: #{@entity_id}>"
end