deimos-ruby 2.1.7 → 2.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -4
- data/lib/deimos/active_record_producer.rb +10 -1
- data/lib/deimos/kafka_source.rb +3 -1
- data/lib/deimos/version.rb +1 -1
- data/spec/kafka_source_spec.rb +82 -8
- data/spec/schemas/com/my-namespace/WidgetTheThird.avsc +27 -0
- data/spec/schemas/my_namespace/widget_the_third.rb +57 -0
- data/spec/snapshots/consumers-no-nest.snap +60 -0
- data/spec/snapshots/consumers.snap +60 -0
- data/spec/snapshots/consumers_and_producers-no-nest.snap +60 -0
- data/spec/snapshots/consumers_and_producers.snap +60 -0
- data/spec/snapshots/consumers_circular-no-nest.snap +60 -0
- data/spec/snapshots/consumers_circular.snap +60 -0
- data/spec/snapshots/consumers_complex_types-no-nest.snap +60 -0
- data/spec/snapshots/consumers_complex_types.snap +60 -0
- data/spec/snapshots/consumers_nested-no-nest.snap +60 -0
- data/spec/snapshots/consumers_nested.snap +60 -0
- data/spec/snapshots/namespace_folders.snap +60 -0
- data/spec/snapshots/namespace_map.snap +60 -0
- data/spec/snapshots/producers_with_key-no-nest.snap +60 -0
- data/spec/snapshots/producers_with_key.snap +60 -0
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db2890edc1a3d0148f1d2d17d488956140403691807b782b14fb59ab85e5eb70
|
4
|
+
data.tar.gz: 559be5246d5793112335575066f02ec07ed4310baf86bdb630a076d448770714
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 75f32bba6112ba1cabb233c9333bb0f6e56029d30a85d24ccca5057302f103b76482e364fb183f3f8fa545f3dbb75f4f03404f4b12392ec4e8c4bea199a8ccf7
|
7
|
+
data.tar.gz: a8a745e864fd29d442fd4a4f474f58428f3ffe7fee1ea41e50ebebff8121da0aba8c91c5605ac6c991b91fe7ccb6ff03fbabf203dc296beb43e60e13f3b9c991
|
data/CHANGELOG.md
CHANGED
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
7
7
|
|
8
8
|
## UNRELEASED
|
9
9
|
|
10
|
+
# 2.1.8 - 2025-08-11
|
11
|
+
|
12
|
+
- Feature: Producers can now customize the deletion payload, so different producers using the same model can send different delete messages.
|
13
|
+
|
10
14
|
# 2.1.7 - 2025-07-23
|
11
15
|
|
12
16
|
- Feature: Skip batch_record_list fill_primary_keys! if the primary key has already been filled during consumption
|
@@ -320,7 +324,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
320
324
|
# 1.12.2 - 2021-12-10
|
321
325
|
|
322
326
|
### Features :star:
|
323
|
-
|
324
327
|
- Added `Deimos.encode` and `Deimos.decode` for non-topic-related encoding and decoding.
|
325
328
|
|
326
329
|
# 1.12.1 - 2021-11-02
|
@@ -331,7 +334,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
331
334
|
# 1.12.0 - 2021-11-01
|
332
335
|
|
333
336
|
### Features :star:
|
334
|
-
|
335
337
|
- Generate Schema classes from Avro Schemas
|
336
338
|
- Use Schema Classes in your consumer and producer
|
337
339
|
|
@@ -365,7 +367,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
365
367
|
- Added a `save_record` method to ActiveRecordConsumer in case calling code wants to work with the record before saving.
|
366
368
|
|
367
369
|
- ### Fixes :wrench:
|
368
|
-
|
369
370
|
- Fixed a regression where the default values for consumer / Phobos listener configs were not correct (they were all nil). This is technically a breaking change, but it puts the configs back the way they were at version 1.4 and matches the documentation.
|
370
371
|
|
371
372
|
## 1.9.2 - 2021-01-29
|
@@ -382,7 +383,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
382
383
|
- Bumped the version of ruby-kafka to latest
|
383
384
|
|
384
385
|
- ### Fixes :wrench:
|
385
|
-
|
386
386
|
- Prevents DB Poller from reconnecting to DB if there is an open transaction
|
387
387
|
- Replaces `before` by `prepend_before` for more consistent test setups.
|
388
388
|
- Adds validation in the `kafka_producers` method (fixes [#90](https://github.com/flipp-oss/deimos/issues/90))
|
@@ -76,6 +76,15 @@ module Deimos
|
|
76
76
|
Utils::SchemaClass.instance(payload, encoder.schema, encoder.namespace)
|
77
77
|
end
|
78
78
|
|
79
|
+
# Deletion payload for a record by default, delegate to the
|
80
|
+
# model's deletion_payload. Producers may override this method to
|
81
|
+
# customize the deletion key/payload per producer.
|
82
|
+
# @param record [ActiveRecord::Base]
|
83
|
+
# @return [Hash]
|
84
|
+
def generate_deletion_payload(record)
|
85
|
+
record.deletion_payload
|
86
|
+
end
|
87
|
+
|
79
88
|
# Query to use when polling the database with the DbPoller. Add
|
80
89
|
# includes, joins, or wheres as necessary, or replace entirely.
|
81
90
|
# @param time_from [Time] the time to start the query from.
|
@@ -100,7 +109,7 @@ module Deimos
|
|
100
109
|
end
|
101
110
|
|
102
111
|
# Post process records after publishing
|
103
|
-
# @param
|
112
|
+
# @param _records [Array<ActiveRecord::Base>]
|
104
113
|
def post_process(_records)
|
105
114
|
end
|
106
115
|
|
data/lib/deimos/kafka_source.rb
CHANGED
@@ -46,7 +46,9 @@ module Deimos
|
|
46
46
|
def send_kafka_event_on_destroy
|
47
47
|
return unless self.class.kafka_config[:delete]
|
48
48
|
|
49
|
-
self.class.kafka_producers.each
|
49
|
+
self.class.kafka_producers.each do |p|
|
50
|
+
p.publish_list([p.generate_deletion_payload(self)])
|
51
|
+
end
|
50
52
|
end
|
51
53
|
|
52
54
|
# Payload to send after we are destroyed.
|
data/lib/deimos/version.rb
CHANGED
data/spec/kafka_source_spec.rb
CHANGED
@@ -105,23 +105,96 @@ module KafkaSourceSpec
|
|
105
105
|
expect('my-topic-the-second').to have_sent(nil, widget.id)
|
106
106
|
end
|
107
107
|
|
108
|
+
context 'multi-producer model using two different key fields' do
|
109
|
+
before(:each) do
|
110
|
+
class MultiKeyWidget < ActiveRecord::Base
|
111
|
+
include Deimos::KafkaSource
|
112
|
+
self.table_name = 'widgets'
|
113
|
+
|
114
|
+
def self.kafka_producers
|
115
|
+
[WidgetProducer, WidgetStringKeyProducer]
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
class WidgetStringKeyProducer < Deimos::ActiveRecordProducer
|
120
|
+
class << self
|
121
|
+
|
122
|
+
def generate_payload(attributes, record)
|
123
|
+
payload = super(attributes, record)
|
124
|
+
payload.merge('id' => record.model_id)
|
125
|
+
|
126
|
+
end
|
127
|
+
|
128
|
+
def generate_deletion_payload(record)
|
129
|
+
{ payload_key: record.model_id }
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
134
|
+
Karafka::App.routes.redraw do
|
135
|
+
topic 'my-topic' do
|
136
|
+
namespace 'com.my-namespace'
|
137
|
+
schema 'Widget'
|
138
|
+
key_config field: :id
|
139
|
+
producer_class WidgetProducer
|
140
|
+
end
|
141
|
+
|
142
|
+
topic 'my-topic-the-Third' do
|
143
|
+
namespace 'com.my-namespace'
|
144
|
+
schema 'WidgetTheThird'
|
145
|
+
key_config field: :model_id
|
146
|
+
producer_class WidgetStringKeyProducer
|
147
|
+
end
|
148
|
+
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
152
|
+
it 'publishes create/delete with correct keys per producer (primary: id, secondary: model_id)' do
|
153
|
+
multi_key_widget = MultiKeyWidget.create!(widget_id: 7, model_id: 'model-id-123', name: 'name-123')
|
154
|
+
|
155
|
+
expect('my-topic').to have_sent({
|
156
|
+
widget_id: 7,
|
157
|
+
name: 'name-123',
|
158
|
+
id: multi_key_widget.id,
|
159
|
+
created_at: anything,
|
160
|
+
updated_at: anything
|
161
|
+
}, multi_key_widget.id)
|
162
|
+
|
163
|
+
expect('my-topic-the-Third').to have_sent({
|
164
|
+
widget_id: 7,
|
165
|
+
model_id: multi_key_widget.model_id,
|
166
|
+
id: multi_key_widget.model_id,
|
167
|
+
created_at: anything,
|
168
|
+
updated_at: anything
|
169
|
+
}, multi_key_widget.model_id)
|
170
|
+
|
171
|
+
expect(WidgetProducer).to receive(:generate_deletion_payload).and_call_original
|
172
|
+
expect(WidgetStringKeyProducer).to receive(:generate_deletion_payload).and_call_original
|
173
|
+
|
174
|
+
multi_key_widget.destroy
|
175
|
+
|
176
|
+
expect('my-topic').to have_sent(nil, multi_key_widget.id)
|
177
|
+
expect('my-topic-the-Third').to have_sent(nil, multi_key_widget.model_id)
|
178
|
+
end
|
179
|
+
end
|
180
|
+
|
108
181
|
context 'with truncation off' do
|
109
182
|
before(:each) do
|
110
183
|
Deimos.config.producers.truncate_columns = false
|
111
184
|
end
|
112
185
|
it 'should not truncate values' do
|
113
|
-
widget = Widget.create!(widget_id: 1, name: 'a'*500)
|
186
|
+
widget = Widget.create!(widget_id: 1, name: 'a' * 500)
|
114
187
|
expect('my-topic').to have_sent({
|
115
188
|
widget_id: 1,
|
116
|
-
name: 'a'*500,
|
189
|
+
name: 'a' * 500,
|
117
190
|
id: widget.id,
|
118
191
|
created_at: anything,
|
119
192
|
updated_at: anything
|
120
193
|
}, 1)
|
121
|
-
widget.update_attribute(:name, 'b'*500)
|
194
|
+
widget.update_attribute(:name, 'b' * 500)
|
122
195
|
expect('my-topic').to have_sent({
|
123
196
|
widget_id: 1,
|
124
|
-
name: 'b'*500,
|
197
|
+
name: 'b' * 500,
|
125
198
|
id: widget.id,
|
126
199
|
created_at: anything,
|
127
200
|
updated_at: anything
|
@@ -134,18 +207,18 @@ module KafkaSourceSpec
|
|
134
207
|
Deimos.config.producers.truncate_columns = true
|
135
208
|
end
|
136
209
|
it 'should truncate values' do
|
137
|
-
widget = Widget.create!(widget_id: 1, name: 'a'*500)
|
210
|
+
widget = Widget.create!(widget_id: 1, name: 'a' * 500)
|
138
211
|
expect('my-topic').to have_sent({
|
139
212
|
widget_id: 1,
|
140
|
-
name: 'a'*100,
|
213
|
+
name: 'a' * 100,
|
141
214
|
id: widget.id,
|
142
215
|
created_at: anything,
|
143
216
|
updated_at: anything
|
144
217
|
}, 1)
|
145
|
-
widget.update_attribute(:name, 'b'*500)
|
218
|
+
widget.update_attribute(:name, 'b' * 500)
|
146
219
|
expect('my-topic').to have_sent({
|
147
220
|
widget_id: 1,
|
148
|
-
name: 'b'*100,
|
221
|
+
name: 'b' * 100,
|
149
222
|
id: widget.id,
|
150
223
|
created_at: anything,
|
151
224
|
updated_at: anything
|
@@ -304,6 +377,7 @@ module KafkaSourceSpec
|
|
304
377
|
[WidgetProducer]
|
305
378
|
end
|
306
379
|
end
|
380
|
+
|
307
381
|
WidgetNoImportHook.reset_column_information
|
308
382
|
end
|
309
383
|
|
@@ -0,0 +1,27 @@
|
|
1
|
+
{
|
2
|
+
"namespace": "com.my-namespace",
|
3
|
+
"name": "WidgetTheThird",
|
4
|
+
"type": "record",
|
5
|
+
"fields": [
|
6
|
+
{
|
7
|
+
"name": "id",
|
8
|
+
"type": "string"
|
9
|
+
},
|
10
|
+
{
|
11
|
+
"name": "widget_id",
|
12
|
+
"type": "long"
|
13
|
+
},
|
14
|
+
{
|
15
|
+
"name": "model_id",
|
16
|
+
"type": "string"
|
17
|
+
},
|
18
|
+
{
|
19
|
+
"name": "updated_at",
|
20
|
+
"type": "long"
|
21
|
+
},
|
22
|
+
{
|
23
|
+
"name": "created_at",
|
24
|
+
"type": "long"
|
25
|
+
}
|
26
|
+
]
|
27
|
+
}
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
4
|
+
module Schemas; module MyNamespace
|
5
|
+
### Primary Schema Class ###
|
6
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
7
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
8
|
+
|
9
|
+
### Attribute Accessors ###
|
10
|
+
# @return [String]
|
11
|
+
attr_accessor :id
|
12
|
+
# @return [Integer]
|
13
|
+
attr_accessor :widget_id
|
14
|
+
# @return [String]
|
15
|
+
attr_accessor :model_id
|
16
|
+
# @return [Integer]
|
17
|
+
attr_accessor :updated_at
|
18
|
+
# @return [Integer]
|
19
|
+
attr_accessor :created_at
|
20
|
+
|
21
|
+
# @override
|
22
|
+
def initialize(_from_message: false, id: nil,
|
23
|
+
widget_id: nil,
|
24
|
+
model_id: nil,
|
25
|
+
updated_at: nil,
|
26
|
+
created_at: nil)
|
27
|
+
@_from_message = _from_message
|
28
|
+
super
|
29
|
+
self.id = id
|
30
|
+
self.widget_id = widget_id
|
31
|
+
self.model_id = model_id
|
32
|
+
self.updated_at = updated_at
|
33
|
+
self.created_at = created_at
|
34
|
+
end
|
35
|
+
|
36
|
+
# @override
|
37
|
+
def schema
|
38
|
+
'WidgetTheThird'
|
39
|
+
end
|
40
|
+
|
41
|
+
# @override
|
42
|
+
def namespace
|
43
|
+
'com.my-namespace'
|
44
|
+
end
|
45
|
+
|
46
|
+
# @override
|
47
|
+
def as_json(_opts={})
|
48
|
+
{
|
49
|
+
'id' => @id,
|
50
|
+
'widget_id' => @widget_id,
|
51
|
+
'model_id' => @model_id,
|
52
|
+
'updated_at' => @updated_at,
|
53
|
+
'created_at' => @created_at
|
54
|
+
}
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end; end
|
@@ -1648,6 +1648,66 @@ module Schemas
|
|
1648
1648
|
end
|
1649
1649
|
|
1650
1650
|
|
1651
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1652
|
+
# frozen_string_literal: true
|
1653
|
+
|
1654
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1655
|
+
module Schemas
|
1656
|
+
### Primary Schema Class ###
|
1657
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1658
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1659
|
+
|
1660
|
+
### Attribute Accessors ###
|
1661
|
+
# @return [String]
|
1662
|
+
attr_accessor :id
|
1663
|
+
# @return [Integer]
|
1664
|
+
attr_accessor :widget_id
|
1665
|
+
# @return [String]
|
1666
|
+
attr_accessor :model_id
|
1667
|
+
# @return [Integer]
|
1668
|
+
attr_accessor :updated_at
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :created_at
|
1671
|
+
|
1672
|
+
# @override
|
1673
|
+
def initialize(_from_message: false, id: nil,
|
1674
|
+
widget_id: nil,
|
1675
|
+
model_id: nil,
|
1676
|
+
updated_at: nil,
|
1677
|
+
created_at: nil)
|
1678
|
+
@_from_message = _from_message
|
1679
|
+
super
|
1680
|
+
self.id = id
|
1681
|
+
self.widget_id = widget_id
|
1682
|
+
self.model_id = model_id
|
1683
|
+
self.updated_at = updated_at
|
1684
|
+
self.created_at = created_at
|
1685
|
+
end
|
1686
|
+
|
1687
|
+
# @override
|
1688
|
+
def schema
|
1689
|
+
'WidgetTheThird'
|
1690
|
+
end
|
1691
|
+
|
1692
|
+
# @override
|
1693
|
+
def namespace
|
1694
|
+
'com.my-namespace'
|
1695
|
+
end
|
1696
|
+
|
1697
|
+
# @override
|
1698
|
+
def as_json(_opts={})
|
1699
|
+
{
|
1700
|
+
'id' => @id,
|
1701
|
+
'widget_id' => @widget_id,
|
1702
|
+
'model_id' => @model_id,
|
1703
|
+
'updated_at' => @updated_at,
|
1704
|
+
'created_at' => @created_at
|
1705
|
+
}
|
1706
|
+
end
|
1707
|
+
end
|
1708
|
+
end
|
1709
|
+
|
1710
|
+
|
1651
1711
|
spec/app/lib/schema_classes/yet_another_enum.rb:
|
1652
1712
|
# frozen_string_literal: true
|
1653
1713
|
|
@@ -1653,3 +1653,63 @@ module Schemas
|
|
1653
1653
|
end
|
1654
1654
|
end
|
1655
1655
|
|
1656
|
+
|
1657
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1658
|
+
# frozen_string_literal: true
|
1659
|
+
|
1660
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1661
|
+
module Schemas
|
1662
|
+
### Primary Schema Class ###
|
1663
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1664
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1665
|
+
|
1666
|
+
### Attribute Accessors ###
|
1667
|
+
# @return [String]
|
1668
|
+
attr_accessor :id
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :widget_id
|
1671
|
+
# @return [String]
|
1672
|
+
attr_accessor :model_id
|
1673
|
+
# @return [Integer]
|
1674
|
+
attr_accessor :updated_at
|
1675
|
+
# @return [Integer]
|
1676
|
+
attr_accessor :created_at
|
1677
|
+
|
1678
|
+
# @override
|
1679
|
+
def initialize(_from_message: false, id: nil,
|
1680
|
+
widget_id: nil,
|
1681
|
+
model_id: nil,
|
1682
|
+
updated_at: nil,
|
1683
|
+
created_at: nil)
|
1684
|
+
@_from_message = _from_message
|
1685
|
+
super
|
1686
|
+
self.id = id
|
1687
|
+
self.widget_id = widget_id
|
1688
|
+
self.model_id = model_id
|
1689
|
+
self.updated_at = updated_at
|
1690
|
+
self.created_at = created_at
|
1691
|
+
end
|
1692
|
+
|
1693
|
+
# @override
|
1694
|
+
def schema
|
1695
|
+
'WidgetTheThird'
|
1696
|
+
end
|
1697
|
+
|
1698
|
+
# @override
|
1699
|
+
def namespace
|
1700
|
+
'com.my-namespace'
|
1701
|
+
end
|
1702
|
+
|
1703
|
+
# @override
|
1704
|
+
def as_json(_opts={})
|
1705
|
+
{
|
1706
|
+
'id' => @id,
|
1707
|
+
'widget_id' => @widget_id,
|
1708
|
+
'model_id' => @model_id,
|
1709
|
+
'updated_at' => @updated_at,
|
1710
|
+
'created_at' => @created_at
|
1711
|
+
}
|
1712
|
+
end
|
1713
|
+
end
|
1714
|
+
end
|
1715
|
+
|
@@ -1648,6 +1648,66 @@ module Schemas
|
|
1648
1648
|
end
|
1649
1649
|
|
1650
1650
|
|
1651
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1652
|
+
# frozen_string_literal: true
|
1653
|
+
|
1654
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1655
|
+
module Schemas
|
1656
|
+
### Primary Schema Class ###
|
1657
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1658
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1659
|
+
|
1660
|
+
### Attribute Accessors ###
|
1661
|
+
# @return [String]
|
1662
|
+
attr_accessor :id
|
1663
|
+
# @return [Integer]
|
1664
|
+
attr_accessor :widget_id
|
1665
|
+
# @return [String]
|
1666
|
+
attr_accessor :model_id
|
1667
|
+
# @return [Integer]
|
1668
|
+
attr_accessor :updated_at
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :created_at
|
1671
|
+
|
1672
|
+
# @override
|
1673
|
+
def initialize(_from_message: false, id: nil,
|
1674
|
+
widget_id: nil,
|
1675
|
+
model_id: nil,
|
1676
|
+
updated_at: nil,
|
1677
|
+
created_at: nil)
|
1678
|
+
@_from_message = _from_message
|
1679
|
+
super
|
1680
|
+
self.id = id
|
1681
|
+
self.widget_id = widget_id
|
1682
|
+
self.model_id = model_id
|
1683
|
+
self.updated_at = updated_at
|
1684
|
+
self.created_at = created_at
|
1685
|
+
end
|
1686
|
+
|
1687
|
+
# @override
|
1688
|
+
def schema
|
1689
|
+
'WidgetTheThird'
|
1690
|
+
end
|
1691
|
+
|
1692
|
+
# @override
|
1693
|
+
def namespace
|
1694
|
+
'com.my-namespace'
|
1695
|
+
end
|
1696
|
+
|
1697
|
+
# @override
|
1698
|
+
def as_json(_opts={})
|
1699
|
+
{
|
1700
|
+
'id' => @id,
|
1701
|
+
'widget_id' => @widget_id,
|
1702
|
+
'model_id' => @model_id,
|
1703
|
+
'updated_at' => @updated_at,
|
1704
|
+
'created_at' => @created_at
|
1705
|
+
}
|
1706
|
+
end
|
1707
|
+
end
|
1708
|
+
end
|
1709
|
+
|
1710
|
+
|
1651
1711
|
spec/app/lib/schema_classes/yet_another_enum.rb:
|
1652
1712
|
# frozen_string_literal: true
|
1653
1713
|
|
@@ -1653,3 +1653,63 @@ module Schemas
|
|
1653
1653
|
end
|
1654
1654
|
end
|
1655
1655
|
|
1656
|
+
|
1657
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1658
|
+
# frozen_string_literal: true
|
1659
|
+
|
1660
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1661
|
+
module Schemas
|
1662
|
+
### Primary Schema Class ###
|
1663
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1664
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1665
|
+
|
1666
|
+
### Attribute Accessors ###
|
1667
|
+
# @return [String]
|
1668
|
+
attr_accessor :id
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :widget_id
|
1671
|
+
# @return [String]
|
1672
|
+
attr_accessor :model_id
|
1673
|
+
# @return [Integer]
|
1674
|
+
attr_accessor :updated_at
|
1675
|
+
# @return [Integer]
|
1676
|
+
attr_accessor :created_at
|
1677
|
+
|
1678
|
+
# @override
|
1679
|
+
def initialize(_from_message: false, id: nil,
|
1680
|
+
widget_id: nil,
|
1681
|
+
model_id: nil,
|
1682
|
+
updated_at: nil,
|
1683
|
+
created_at: nil)
|
1684
|
+
@_from_message = _from_message
|
1685
|
+
super
|
1686
|
+
self.id = id
|
1687
|
+
self.widget_id = widget_id
|
1688
|
+
self.model_id = model_id
|
1689
|
+
self.updated_at = updated_at
|
1690
|
+
self.created_at = created_at
|
1691
|
+
end
|
1692
|
+
|
1693
|
+
# @override
|
1694
|
+
def schema
|
1695
|
+
'WidgetTheThird'
|
1696
|
+
end
|
1697
|
+
|
1698
|
+
# @override
|
1699
|
+
def namespace
|
1700
|
+
'com.my-namespace'
|
1701
|
+
end
|
1702
|
+
|
1703
|
+
# @override
|
1704
|
+
def as_json(_opts={})
|
1705
|
+
{
|
1706
|
+
'id' => @id,
|
1707
|
+
'widget_id' => @widget_id,
|
1708
|
+
'model_id' => @model_id,
|
1709
|
+
'updated_at' => @updated_at,
|
1710
|
+
'created_at' => @created_at
|
1711
|
+
}
|
1712
|
+
end
|
1713
|
+
end
|
1714
|
+
end
|
1715
|
+
|
@@ -1648,6 +1648,66 @@ module Schemas
|
|
1648
1648
|
end
|
1649
1649
|
|
1650
1650
|
|
1651
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1652
|
+
# frozen_string_literal: true
|
1653
|
+
|
1654
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1655
|
+
module Schemas
|
1656
|
+
### Primary Schema Class ###
|
1657
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1658
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1659
|
+
|
1660
|
+
### Attribute Accessors ###
|
1661
|
+
# @return [String]
|
1662
|
+
attr_accessor :id
|
1663
|
+
# @return [Integer]
|
1664
|
+
attr_accessor :widget_id
|
1665
|
+
# @return [String]
|
1666
|
+
attr_accessor :model_id
|
1667
|
+
# @return [Integer]
|
1668
|
+
attr_accessor :updated_at
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :created_at
|
1671
|
+
|
1672
|
+
# @override
|
1673
|
+
def initialize(_from_message: false, id: nil,
|
1674
|
+
widget_id: nil,
|
1675
|
+
model_id: nil,
|
1676
|
+
updated_at: nil,
|
1677
|
+
created_at: nil)
|
1678
|
+
@_from_message = _from_message
|
1679
|
+
super
|
1680
|
+
self.id = id
|
1681
|
+
self.widget_id = widget_id
|
1682
|
+
self.model_id = model_id
|
1683
|
+
self.updated_at = updated_at
|
1684
|
+
self.created_at = created_at
|
1685
|
+
end
|
1686
|
+
|
1687
|
+
# @override
|
1688
|
+
def schema
|
1689
|
+
'WidgetTheThird'
|
1690
|
+
end
|
1691
|
+
|
1692
|
+
# @override
|
1693
|
+
def namespace
|
1694
|
+
'com.my-namespace'
|
1695
|
+
end
|
1696
|
+
|
1697
|
+
# @override
|
1698
|
+
def as_json(_opts={})
|
1699
|
+
{
|
1700
|
+
'id' => @id,
|
1701
|
+
'widget_id' => @widget_id,
|
1702
|
+
'model_id' => @model_id,
|
1703
|
+
'updated_at' => @updated_at,
|
1704
|
+
'created_at' => @created_at
|
1705
|
+
}
|
1706
|
+
end
|
1707
|
+
end
|
1708
|
+
end
|
1709
|
+
|
1710
|
+
|
1651
1711
|
spec/app/lib/schema_classes/yet_another_enum.rb:
|
1652
1712
|
# frozen_string_literal: true
|
1653
1713
|
|
@@ -1653,3 +1653,63 @@ module Schemas
|
|
1653
1653
|
end
|
1654
1654
|
end
|
1655
1655
|
|
1656
|
+
|
1657
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1658
|
+
# frozen_string_literal: true
|
1659
|
+
|
1660
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1661
|
+
module Schemas
|
1662
|
+
### Primary Schema Class ###
|
1663
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1664
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1665
|
+
|
1666
|
+
### Attribute Accessors ###
|
1667
|
+
# @return [String]
|
1668
|
+
attr_accessor :id
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :widget_id
|
1671
|
+
# @return [String]
|
1672
|
+
attr_accessor :model_id
|
1673
|
+
# @return [Integer]
|
1674
|
+
attr_accessor :updated_at
|
1675
|
+
# @return [Integer]
|
1676
|
+
attr_accessor :created_at
|
1677
|
+
|
1678
|
+
# @override
|
1679
|
+
def initialize(_from_message: false, id: nil,
|
1680
|
+
widget_id: nil,
|
1681
|
+
model_id: nil,
|
1682
|
+
updated_at: nil,
|
1683
|
+
created_at: nil)
|
1684
|
+
@_from_message = _from_message
|
1685
|
+
super
|
1686
|
+
self.id = id
|
1687
|
+
self.widget_id = widget_id
|
1688
|
+
self.model_id = model_id
|
1689
|
+
self.updated_at = updated_at
|
1690
|
+
self.created_at = created_at
|
1691
|
+
end
|
1692
|
+
|
1693
|
+
# @override
|
1694
|
+
def schema
|
1695
|
+
'WidgetTheThird'
|
1696
|
+
end
|
1697
|
+
|
1698
|
+
# @override
|
1699
|
+
def namespace
|
1700
|
+
'com.my-namespace'
|
1701
|
+
end
|
1702
|
+
|
1703
|
+
# @override
|
1704
|
+
def as_json(_opts={})
|
1705
|
+
{
|
1706
|
+
'id' => @id,
|
1707
|
+
'widget_id' => @widget_id,
|
1708
|
+
'model_id' => @model_id,
|
1709
|
+
'updated_at' => @updated_at,
|
1710
|
+
'created_at' => @created_at
|
1711
|
+
}
|
1712
|
+
end
|
1713
|
+
end
|
1714
|
+
end
|
1715
|
+
|
@@ -1648,6 +1648,66 @@ module Schemas
|
|
1648
1648
|
end
|
1649
1649
|
|
1650
1650
|
|
1651
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1652
|
+
# frozen_string_literal: true
|
1653
|
+
|
1654
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1655
|
+
module Schemas
|
1656
|
+
### Primary Schema Class ###
|
1657
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1658
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1659
|
+
|
1660
|
+
### Attribute Accessors ###
|
1661
|
+
# @return [String]
|
1662
|
+
attr_accessor :id
|
1663
|
+
# @return [Integer]
|
1664
|
+
attr_accessor :widget_id
|
1665
|
+
# @return [String]
|
1666
|
+
attr_accessor :model_id
|
1667
|
+
# @return [Integer]
|
1668
|
+
attr_accessor :updated_at
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :created_at
|
1671
|
+
|
1672
|
+
# @override
|
1673
|
+
def initialize(_from_message: false, id: nil,
|
1674
|
+
widget_id: nil,
|
1675
|
+
model_id: nil,
|
1676
|
+
updated_at: nil,
|
1677
|
+
created_at: nil)
|
1678
|
+
@_from_message = _from_message
|
1679
|
+
super
|
1680
|
+
self.id = id
|
1681
|
+
self.widget_id = widget_id
|
1682
|
+
self.model_id = model_id
|
1683
|
+
self.updated_at = updated_at
|
1684
|
+
self.created_at = created_at
|
1685
|
+
end
|
1686
|
+
|
1687
|
+
# @override
|
1688
|
+
def schema
|
1689
|
+
'WidgetTheThird'
|
1690
|
+
end
|
1691
|
+
|
1692
|
+
# @override
|
1693
|
+
def namespace
|
1694
|
+
'com.my-namespace'
|
1695
|
+
end
|
1696
|
+
|
1697
|
+
# @override
|
1698
|
+
def as_json(_opts={})
|
1699
|
+
{
|
1700
|
+
'id' => @id,
|
1701
|
+
'widget_id' => @widget_id,
|
1702
|
+
'model_id' => @model_id,
|
1703
|
+
'updated_at' => @updated_at,
|
1704
|
+
'created_at' => @created_at
|
1705
|
+
}
|
1706
|
+
end
|
1707
|
+
end
|
1708
|
+
end
|
1709
|
+
|
1710
|
+
|
1651
1711
|
spec/app/lib/schema_classes/yet_another_enum.rb:
|
1652
1712
|
# frozen_string_literal: true
|
1653
1713
|
|
@@ -1653,3 +1653,63 @@ module Schemas
|
|
1653
1653
|
end
|
1654
1654
|
end
|
1655
1655
|
|
1656
|
+
|
1657
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1658
|
+
# frozen_string_literal: true
|
1659
|
+
|
1660
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1661
|
+
module Schemas
|
1662
|
+
### Primary Schema Class ###
|
1663
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1664
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1665
|
+
|
1666
|
+
### Attribute Accessors ###
|
1667
|
+
# @return [String]
|
1668
|
+
attr_accessor :id
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :widget_id
|
1671
|
+
# @return [String]
|
1672
|
+
attr_accessor :model_id
|
1673
|
+
# @return [Integer]
|
1674
|
+
attr_accessor :updated_at
|
1675
|
+
# @return [Integer]
|
1676
|
+
attr_accessor :created_at
|
1677
|
+
|
1678
|
+
# @override
|
1679
|
+
def initialize(_from_message: false, id: nil,
|
1680
|
+
widget_id: nil,
|
1681
|
+
model_id: nil,
|
1682
|
+
updated_at: nil,
|
1683
|
+
created_at: nil)
|
1684
|
+
@_from_message = _from_message
|
1685
|
+
super
|
1686
|
+
self.id = id
|
1687
|
+
self.widget_id = widget_id
|
1688
|
+
self.model_id = model_id
|
1689
|
+
self.updated_at = updated_at
|
1690
|
+
self.created_at = created_at
|
1691
|
+
end
|
1692
|
+
|
1693
|
+
# @override
|
1694
|
+
def schema
|
1695
|
+
'WidgetTheThird'
|
1696
|
+
end
|
1697
|
+
|
1698
|
+
# @override
|
1699
|
+
def namespace
|
1700
|
+
'com.my-namespace'
|
1701
|
+
end
|
1702
|
+
|
1703
|
+
# @override
|
1704
|
+
def as_json(_opts={})
|
1705
|
+
{
|
1706
|
+
'id' => @id,
|
1707
|
+
'widget_id' => @widget_id,
|
1708
|
+
'model_id' => @model_id,
|
1709
|
+
'updated_at' => @updated_at,
|
1710
|
+
'created_at' => @created_at
|
1711
|
+
}
|
1712
|
+
end
|
1713
|
+
end
|
1714
|
+
end
|
1715
|
+
|
@@ -1648,6 +1648,66 @@ module Schemas
|
|
1648
1648
|
end
|
1649
1649
|
|
1650
1650
|
|
1651
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1652
|
+
# frozen_string_literal: true
|
1653
|
+
|
1654
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1655
|
+
module Schemas
|
1656
|
+
### Primary Schema Class ###
|
1657
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1658
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1659
|
+
|
1660
|
+
### Attribute Accessors ###
|
1661
|
+
# @return [String]
|
1662
|
+
attr_accessor :id
|
1663
|
+
# @return [Integer]
|
1664
|
+
attr_accessor :widget_id
|
1665
|
+
# @return [String]
|
1666
|
+
attr_accessor :model_id
|
1667
|
+
# @return [Integer]
|
1668
|
+
attr_accessor :updated_at
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :created_at
|
1671
|
+
|
1672
|
+
# @override
|
1673
|
+
def initialize(_from_message: false, id: nil,
|
1674
|
+
widget_id: nil,
|
1675
|
+
model_id: nil,
|
1676
|
+
updated_at: nil,
|
1677
|
+
created_at: nil)
|
1678
|
+
@_from_message = _from_message
|
1679
|
+
super
|
1680
|
+
self.id = id
|
1681
|
+
self.widget_id = widget_id
|
1682
|
+
self.model_id = model_id
|
1683
|
+
self.updated_at = updated_at
|
1684
|
+
self.created_at = created_at
|
1685
|
+
end
|
1686
|
+
|
1687
|
+
# @override
|
1688
|
+
def schema
|
1689
|
+
'WidgetTheThird'
|
1690
|
+
end
|
1691
|
+
|
1692
|
+
# @override
|
1693
|
+
def namespace
|
1694
|
+
'com.my-namespace'
|
1695
|
+
end
|
1696
|
+
|
1697
|
+
# @override
|
1698
|
+
def as_json(_opts={})
|
1699
|
+
{
|
1700
|
+
'id' => @id,
|
1701
|
+
'widget_id' => @widget_id,
|
1702
|
+
'model_id' => @model_id,
|
1703
|
+
'updated_at' => @updated_at,
|
1704
|
+
'created_at' => @created_at
|
1705
|
+
}
|
1706
|
+
end
|
1707
|
+
end
|
1708
|
+
end
|
1709
|
+
|
1710
|
+
|
1651
1711
|
spec/app/lib/schema_classes/yet_another_enum.rb:
|
1652
1712
|
# frozen_string_literal: true
|
1653
1713
|
|
@@ -1653,3 +1653,63 @@ module Schemas
|
|
1653
1653
|
end
|
1654
1654
|
end
|
1655
1655
|
|
1656
|
+
|
1657
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1658
|
+
# frozen_string_literal: true
|
1659
|
+
|
1660
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1661
|
+
module Schemas
|
1662
|
+
### Primary Schema Class ###
|
1663
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1664
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1665
|
+
|
1666
|
+
### Attribute Accessors ###
|
1667
|
+
# @return [String]
|
1668
|
+
attr_accessor :id
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :widget_id
|
1671
|
+
# @return [String]
|
1672
|
+
attr_accessor :model_id
|
1673
|
+
# @return [Integer]
|
1674
|
+
attr_accessor :updated_at
|
1675
|
+
# @return [Integer]
|
1676
|
+
attr_accessor :created_at
|
1677
|
+
|
1678
|
+
# @override
|
1679
|
+
def initialize(_from_message: false, id: nil,
|
1680
|
+
widget_id: nil,
|
1681
|
+
model_id: nil,
|
1682
|
+
updated_at: nil,
|
1683
|
+
created_at: nil)
|
1684
|
+
@_from_message = _from_message
|
1685
|
+
super
|
1686
|
+
self.id = id
|
1687
|
+
self.widget_id = widget_id
|
1688
|
+
self.model_id = model_id
|
1689
|
+
self.updated_at = updated_at
|
1690
|
+
self.created_at = created_at
|
1691
|
+
end
|
1692
|
+
|
1693
|
+
# @override
|
1694
|
+
def schema
|
1695
|
+
'WidgetTheThird'
|
1696
|
+
end
|
1697
|
+
|
1698
|
+
# @override
|
1699
|
+
def namespace
|
1700
|
+
'com.my-namespace'
|
1701
|
+
end
|
1702
|
+
|
1703
|
+
# @override
|
1704
|
+
def as_json(_opts={})
|
1705
|
+
{
|
1706
|
+
'id' => @id,
|
1707
|
+
'widget_id' => @widget_id,
|
1708
|
+
'model_id' => @model_id,
|
1709
|
+
'updated_at' => @updated_at,
|
1710
|
+
'created_at' => @created_at
|
1711
|
+
}
|
1712
|
+
end
|
1713
|
+
end
|
1714
|
+
end
|
1715
|
+
|
@@ -1733,3 +1733,63 @@ module Schemas; module Com; module MyNamespace
|
|
1733
1733
|
end
|
1734
1734
|
end; end; end
|
1735
1735
|
|
1736
|
+
|
1737
|
+
spec/app/lib/schema_classes/schemas/com/my_namespace/widget_the_third.rb:
|
1738
|
+
# frozen_string_literal: true
|
1739
|
+
|
1740
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1741
|
+
module Schemas; module Com; module MyNamespace
|
1742
|
+
### Primary Schema Class ###
|
1743
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1744
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1745
|
+
|
1746
|
+
### Attribute Accessors ###
|
1747
|
+
# @return [String]
|
1748
|
+
attr_accessor :id
|
1749
|
+
# @return [Integer]
|
1750
|
+
attr_accessor :widget_id
|
1751
|
+
# @return [String]
|
1752
|
+
attr_accessor :model_id
|
1753
|
+
# @return [Integer]
|
1754
|
+
attr_accessor :updated_at
|
1755
|
+
# @return [Integer]
|
1756
|
+
attr_accessor :created_at
|
1757
|
+
|
1758
|
+
# @override
|
1759
|
+
def initialize(_from_message: false, id: nil,
|
1760
|
+
widget_id: nil,
|
1761
|
+
model_id: nil,
|
1762
|
+
updated_at: nil,
|
1763
|
+
created_at: nil)
|
1764
|
+
@_from_message = _from_message
|
1765
|
+
super
|
1766
|
+
self.id = id
|
1767
|
+
self.widget_id = widget_id
|
1768
|
+
self.model_id = model_id
|
1769
|
+
self.updated_at = updated_at
|
1770
|
+
self.created_at = created_at
|
1771
|
+
end
|
1772
|
+
|
1773
|
+
# @override
|
1774
|
+
def schema
|
1775
|
+
'WidgetTheThird'
|
1776
|
+
end
|
1777
|
+
|
1778
|
+
# @override
|
1779
|
+
def namespace
|
1780
|
+
'com.my-namespace'
|
1781
|
+
end
|
1782
|
+
|
1783
|
+
# @override
|
1784
|
+
def as_json(_opts={})
|
1785
|
+
{
|
1786
|
+
'id' => @id,
|
1787
|
+
'widget_id' => @widget_id,
|
1788
|
+
'model_id' => @model_id,
|
1789
|
+
'updated_at' => @updated_at,
|
1790
|
+
'created_at' => @created_at
|
1791
|
+
}
|
1792
|
+
end
|
1793
|
+
end
|
1794
|
+
end; end; end
|
1795
|
+
|
@@ -1733,3 +1733,63 @@ module Schemas; module MyNamespace
|
|
1733
1733
|
end
|
1734
1734
|
end; end
|
1735
1735
|
|
1736
|
+
|
1737
|
+
spec/app/lib/schema_classes/schemas/my_namespace/widget_the_third.rb:
|
1738
|
+
# frozen_string_literal: true
|
1739
|
+
|
1740
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1741
|
+
module Schemas; module MyNamespace
|
1742
|
+
### Primary Schema Class ###
|
1743
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1744
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1745
|
+
|
1746
|
+
### Attribute Accessors ###
|
1747
|
+
# @return [String]
|
1748
|
+
attr_accessor :id
|
1749
|
+
# @return [Integer]
|
1750
|
+
attr_accessor :widget_id
|
1751
|
+
# @return [String]
|
1752
|
+
attr_accessor :model_id
|
1753
|
+
# @return [Integer]
|
1754
|
+
attr_accessor :updated_at
|
1755
|
+
# @return [Integer]
|
1756
|
+
attr_accessor :created_at
|
1757
|
+
|
1758
|
+
# @override
|
1759
|
+
def initialize(_from_message: false, id: nil,
|
1760
|
+
widget_id: nil,
|
1761
|
+
model_id: nil,
|
1762
|
+
updated_at: nil,
|
1763
|
+
created_at: nil)
|
1764
|
+
@_from_message = _from_message
|
1765
|
+
super
|
1766
|
+
self.id = id
|
1767
|
+
self.widget_id = widget_id
|
1768
|
+
self.model_id = model_id
|
1769
|
+
self.updated_at = updated_at
|
1770
|
+
self.created_at = created_at
|
1771
|
+
end
|
1772
|
+
|
1773
|
+
# @override
|
1774
|
+
def schema
|
1775
|
+
'WidgetTheThird'
|
1776
|
+
end
|
1777
|
+
|
1778
|
+
# @override
|
1779
|
+
def namespace
|
1780
|
+
'com.my-namespace'
|
1781
|
+
end
|
1782
|
+
|
1783
|
+
# @override
|
1784
|
+
def as_json(_opts={})
|
1785
|
+
{
|
1786
|
+
'id' => @id,
|
1787
|
+
'widget_id' => @widget_id,
|
1788
|
+
'model_id' => @model_id,
|
1789
|
+
'updated_at' => @updated_at,
|
1790
|
+
'created_at' => @created_at
|
1791
|
+
}
|
1792
|
+
end
|
1793
|
+
end
|
1794
|
+
end; end
|
1795
|
+
|
@@ -1648,6 +1648,66 @@ module Schemas
|
|
1648
1648
|
end
|
1649
1649
|
|
1650
1650
|
|
1651
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1652
|
+
# frozen_string_literal: true
|
1653
|
+
|
1654
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1655
|
+
module Schemas
|
1656
|
+
### Primary Schema Class ###
|
1657
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1658
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1659
|
+
|
1660
|
+
### Attribute Accessors ###
|
1661
|
+
# @return [String]
|
1662
|
+
attr_accessor :id
|
1663
|
+
# @return [Integer]
|
1664
|
+
attr_accessor :widget_id
|
1665
|
+
# @return [String]
|
1666
|
+
attr_accessor :model_id
|
1667
|
+
# @return [Integer]
|
1668
|
+
attr_accessor :updated_at
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :created_at
|
1671
|
+
|
1672
|
+
# @override
|
1673
|
+
def initialize(_from_message: false, id: nil,
|
1674
|
+
widget_id: nil,
|
1675
|
+
model_id: nil,
|
1676
|
+
updated_at: nil,
|
1677
|
+
created_at: nil)
|
1678
|
+
@_from_message = _from_message
|
1679
|
+
super
|
1680
|
+
self.id = id
|
1681
|
+
self.widget_id = widget_id
|
1682
|
+
self.model_id = model_id
|
1683
|
+
self.updated_at = updated_at
|
1684
|
+
self.created_at = created_at
|
1685
|
+
end
|
1686
|
+
|
1687
|
+
# @override
|
1688
|
+
def schema
|
1689
|
+
'WidgetTheThird'
|
1690
|
+
end
|
1691
|
+
|
1692
|
+
# @override
|
1693
|
+
def namespace
|
1694
|
+
'com.my-namespace'
|
1695
|
+
end
|
1696
|
+
|
1697
|
+
# @override
|
1698
|
+
def as_json(_opts={})
|
1699
|
+
{
|
1700
|
+
'id' => @id,
|
1701
|
+
'widget_id' => @widget_id,
|
1702
|
+
'model_id' => @model_id,
|
1703
|
+
'updated_at' => @updated_at,
|
1704
|
+
'created_at' => @created_at
|
1705
|
+
}
|
1706
|
+
end
|
1707
|
+
end
|
1708
|
+
end
|
1709
|
+
|
1710
|
+
|
1651
1711
|
spec/app/lib/schema_classes/yet_another_enum.rb:
|
1652
1712
|
# frozen_string_literal: true
|
1653
1713
|
|
@@ -1653,3 +1653,63 @@ module Schemas
|
|
1653
1653
|
end
|
1654
1654
|
end
|
1655
1655
|
|
1656
|
+
|
1657
|
+
spec/app/lib/schema_classes/widget_the_third.rb:
|
1658
|
+
# frozen_string_literal: true
|
1659
|
+
|
1660
|
+
# This file is autogenerated by Deimos, Do NOT modify
|
1661
|
+
module Schemas
|
1662
|
+
### Primary Schema Class ###
|
1663
|
+
# Autogenerated Schema for Record at com.my-namespace.WidgetTheThird
|
1664
|
+
class WidgetTheThird < Deimos::SchemaClass::Record
|
1665
|
+
|
1666
|
+
### Attribute Accessors ###
|
1667
|
+
# @return [String]
|
1668
|
+
attr_accessor :id
|
1669
|
+
# @return [Integer]
|
1670
|
+
attr_accessor :widget_id
|
1671
|
+
# @return [String]
|
1672
|
+
attr_accessor :model_id
|
1673
|
+
# @return [Integer]
|
1674
|
+
attr_accessor :updated_at
|
1675
|
+
# @return [Integer]
|
1676
|
+
attr_accessor :created_at
|
1677
|
+
|
1678
|
+
# @override
|
1679
|
+
def initialize(_from_message: false, id: nil,
|
1680
|
+
widget_id: nil,
|
1681
|
+
model_id: nil,
|
1682
|
+
updated_at: nil,
|
1683
|
+
created_at: nil)
|
1684
|
+
@_from_message = _from_message
|
1685
|
+
super
|
1686
|
+
self.id = id
|
1687
|
+
self.widget_id = widget_id
|
1688
|
+
self.model_id = model_id
|
1689
|
+
self.updated_at = updated_at
|
1690
|
+
self.created_at = created_at
|
1691
|
+
end
|
1692
|
+
|
1693
|
+
# @override
|
1694
|
+
def schema
|
1695
|
+
'WidgetTheThird'
|
1696
|
+
end
|
1697
|
+
|
1698
|
+
# @override
|
1699
|
+
def namespace
|
1700
|
+
'com.my-namespace'
|
1701
|
+
end
|
1702
|
+
|
1703
|
+
# @override
|
1704
|
+
def as_json(_opts={})
|
1705
|
+
{
|
1706
|
+
'id' => @id,
|
1707
|
+
'widget_id' => @widget_id,
|
1708
|
+
'model_id' => @model_id,
|
1709
|
+
'updated_at' => @updated_at,
|
1710
|
+
'created_at' => @created_at
|
1711
|
+
}
|
1712
|
+
end
|
1713
|
+
end
|
1714
|
+
end
|
1715
|
+
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: deimos-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.1.
|
4
|
+
version: 2.1.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel Orner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-08-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: avro_turf
|
@@ -577,6 +577,7 @@ files:
|
|
577
577
|
- spec/schemas/com/my-namespace/Wibble.avsc
|
578
578
|
- spec/schemas/com/my-namespace/Widget.avsc
|
579
579
|
- spec/schemas/com/my-namespace/WidgetTheSecond.avsc
|
580
|
+
- spec/schemas/com/my-namespace/WidgetTheThird.avsc
|
580
581
|
- spec/schemas/com/my-namespace/my-suborg/MyLongNamespaceSchema.avsc
|
581
582
|
- spec/schemas/com/my-namespace/request/CreateTopic.avsc
|
582
583
|
- spec/schemas/com/my-namespace/request/Index.avsc
|
@@ -609,6 +610,7 @@ files:
|
|
609
610
|
- spec/schemas/my_namespace/wibble.rb
|
610
611
|
- spec/schemas/my_namespace/widget.rb
|
611
612
|
- spec/schemas/my_namespace/widget_the_second.rb
|
613
|
+
- spec/schemas/my_namespace/widget_the_third.rb
|
612
614
|
- spec/snapshots/consumers-no-nest.snap
|
613
615
|
- spec/snapshots/consumers.snap
|
614
616
|
- spec/snapshots/consumers_and_producers-no-nest.snap
|
@@ -707,6 +709,7 @@ test_files:
|
|
707
709
|
- spec/schemas/com/my-namespace/Wibble.avsc
|
708
710
|
- spec/schemas/com/my-namespace/Widget.avsc
|
709
711
|
- spec/schemas/com/my-namespace/WidgetTheSecond.avsc
|
712
|
+
- spec/schemas/com/my-namespace/WidgetTheThird.avsc
|
710
713
|
- spec/schemas/com/my-namespace/my-suborg/MyLongNamespaceSchema.avsc
|
711
714
|
- spec/schemas/com/my-namespace/request/CreateTopic.avsc
|
712
715
|
- spec/schemas/com/my-namespace/request/Index.avsc
|
@@ -739,6 +742,7 @@ test_files:
|
|
739
742
|
- spec/schemas/my_namespace/wibble.rb
|
740
743
|
- spec/schemas/my_namespace/widget.rb
|
741
744
|
- spec/schemas/my_namespace/widget_the_second.rb
|
745
|
+
- spec/schemas/my_namespace/widget_the_third.rb
|
742
746
|
- spec/snapshots/consumers-no-nest.snap
|
743
747
|
- spec/snapshots/consumers.snap
|
744
748
|
- spec/snapshots/consumers_and_producers-no-nest.snap
|