deimos-ruby 2.5.3 → 2.6.0.pre.beta1
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 +2 -0
- data/README.md +20 -9
- data/deimos-ruby.gemspec +1 -0
- data/docs/CONFIGURATION.md +11 -4
- data/lib/deimos/active_record_consume/batch_consumption.rb +1 -1
- data/lib/deimos/active_record_consume/message_consumption.rb +2 -2
- data/lib/deimos/active_record_consumer.rb +1 -1
- data/lib/deimos/active_record_producer.rb +1 -1
- data/lib/deimos/config/configuration.rb +34 -11
- data/lib/deimos/ext/producer_middleware.rb +2 -2
- data/lib/deimos/logging.rb +9 -0
- data/lib/deimos/producer.rb +5 -5
- data/lib/deimos/schema_backends/avro_base.rb +7 -36
- data/lib/deimos/schema_class.rb +72 -0
- data/lib/deimos/transcoder.rb +6 -6
- data/lib/deimos/utils/schema_class.rb +14 -47
- data/lib/deimos/version.rb +1 -1
- data/lib/deimos.rb +3 -3
- data/lib/tasks/deimos.rake +16 -4
- data/regenerate_test_schema_classes.rb +12 -3
- data/spec/active_record_batch_consumer_association_spec.rb +1 -1
- data/spec/active_record_batch_consumer_spec.rb +1 -1
- data/spec/active_record_consume/batch_consumption_spec.rb +1 -1
- data/spec/active_record_consumer_spec.rb +3 -3
- data/spec/active_record_producer_spec.rb +1 -1
- data/spec/batch_consumer_spec.rb +2 -2
- data/spec/consumer_spec.rb +9 -9
- data/spec/schema_class_spec.rb +65 -0
- data/spec/schemas/my_namespace/generated.rb +4 -4
- data/spec/schemas/my_namespace/my_long_namespace_schema.rb +2 -2
- data/spec/schemas/my_namespace/my_nested_schema.rb +3 -3
- data/spec/schemas/my_namespace/my_schema.rb +2 -2
- data/spec/schemas/my_namespace/my_schema_compound_key.rb +2 -2
- data/spec/schemas/my_namespace/my_schema_id_key.rb +2 -2
- data/spec/schemas/my_namespace/my_schema_key.rb +2 -2
- data/spec/schemas/my_namespace/my_schema_with_boolean.rb +2 -2
- data/spec/schemas/my_namespace/my_schema_with_circular_reference.rb +3 -3
- data/spec/schemas/my_namespace/my_schema_with_complex_type.rb +6 -6
- data/spec/schemas/my_namespace/my_schema_with_date_time.rb +2 -2
- data/spec/schemas/my_namespace/my_schema_with_id.rb +2 -2
- data/spec/schemas/my_namespace/my_schema_with_title.rb +2 -2
- data/spec/schemas/my_namespace/my_schema_with_union_type.rb +6 -6
- data/spec/schemas/my_namespace/my_schema_with_unique_id.rb +2 -2
- data/spec/schemas/my_namespace/my_updated_schema.rb +1 -1
- data/spec/schemas/my_namespace/request/create_topic.rb +2 -2
- data/spec/schemas/my_namespace/request/index.rb +2 -2
- data/spec/schemas/my_namespace/request/update_request.rb +2 -2
- data/spec/schemas/my_namespace/response/create_topic.rb +2 -2
- data/spec/schemas/my_namespace/response/index.rb +2 -2
- data/spec/schemas/my_namespace/response/update_response.rb +2 -2
- data/spec/schemas/my_namespace/wibble.rb +2 -2
- data/spec/schemas/my_namespace/widget.rb +2 -2
- data/spec/schemas/my_namespace/widget_the_second.rb +2 -2
- data/spec/schemas/my_namespace/widget_the_third.rb +2 -2
- data/spec/spec_helper.rb +2 -2
- data/spec/utils/db_poller_spec.rb +1 -1
- metadata +18 -27
- data/lib/deimos/schema_class/base.rb +0 -62
- data/lib/deimos/schema_class/enum.rb +0 -49
- data/lib/deimos/schema_class/record.rb +0 -100
- data/lib/generators/deimos/schema_class/templates/schema_class.rb.tt +0 -8
- data/lib/generators/deimos/schema_class/templates/schema_enum.rb.tt +0 -13
- data/lib/generators/deimos/schema_class/templates/schema_record.rb.tt +0 -102
- data/lib/generators/deimos/schema_class_generator.rb +0 -369
- data/spec/generators/schema_class/my_schema_spec.rb +0 -16
- data/spec/generators/schema_class/my_schema_with_circular_reference_spec.rb +0 -98
- data/spec/generators/schema_class/my_schema_with_complex_types_spec.rb +0 -237
- data/spec/generators/schema_class_generator_spec.rb +0 -283
- data/spec/snapshots/consumers-no-nest.snap +0 -1740
- data/spec/snapshots/consumers.snap +0 -1720
- data/spec/snapshots/consumers_and_producers-no-nest.snap +0 -1740
- data/spec/snapshots/consumers_and_producers.snap +0 -1720
- data/spec/snapshots/consumers_circular-no-nest.snap +0 -1740
- data/spec/snapshots/consumers_circular.snap +0 -1720
- data/spec/snapshots/consumers_complex_types-no-nest.snap +0 -1740
- data/spec/snapshots/consumers_complex_types.snap +0 -1720
- data/spec/snapshots/consumers_nested-no-nest.snap +0 -1740
- data/spec/snapshots/consumers_nested.snap +0 -1720
- data/spec/snapshots/namespace_folders.snap +0 -1800
- data/spec/snapshots/namespace_map.snap +0 -1800
- data/spec/snapshots/producers_with_key-no-nest.snap +0 -1740
- data/spec/snapshots/producers_with_key.snap +0 -1720
|
@@ -1,13 +1,22 @@
|
|
|
1
1
|
#! /usr/bin/env ruby
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
2
4
|
require 'action_controller/railtie'
|
|
3
5
|
require 'deimos'
|
|
4
6
|
require 'deimos/metrics/mock'
|
|
5
7
|
require 'deimos/tracing/mock'
|
|
6
|
-
|
|
7
|
-
require_relative 'lib/deimos/utils/schema_class'
|
|
8
|
+
require 'avro_gen/generator'
|
|
8
9
|
|
|
9
10
|
class DeimosApp < Rails::Application
|
|
10
11
|
end
|
|
11
12
|
DeimosApp.initialize!
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
# Schema class generation now lives in the avro-gen-ruby gem. Derive the configs
|
|
15
|
+
# from the configured Kafka topics (so keyed records keep their tombstone /
|
|
16
|
+
# payload_key helpers) and delegate to AvroGen.
|
|
17
|
+
configs = Deimos.karafka_configs.filter_map do |config|
|
|
18
|
+
next if config.schema.nil?
|
|
19
|
+
|
|
20
|
+
{ schema: config.schema, namespace: config.namespace, key_config: config.key_config }
|
|
21
|
+
end
|
|
22
|
+
AvroGen::Generator.new.generate_from_configs(configs)
|
|
@@ -119,7 +119,7 @@ RSpec.describe Deimos::ActiveRecordConsume::BatchConsumption do
|
|
|
119
119
|
end
|
|
120
120
|
|
|
121
121
|
it 'for schema classes' do
|
|
122
|
-
klass = Class.new(
|
|
122
|
+
klass = Class.new(AvroGen::SchemaClass::Record) do
|
|
123
123
|
attr_accessor :some_name
|
|
124
124
|
|
|
125
125
|
# @override
|
|
@@ -59,7 +59,7 @@ module ActiveRecordConsumerTest
|
|
|
59
59
|
|
|
60
60
|
Time.zone = 'Eastern Time (US & Canada)'
|
|
61
61
|
|
|
62
|
-
schema_class = Class.new(
|
|
62
|
+
schema_class = Class.new(AvroGen::SchemaClass::Record) do
|
|
63
63
|
def schema
|
|
64
64
|
'MySchema'
|
|
65
65
|
end
|
|
@@ -88,7 +88,7 @@ module ActiveRecordConsumerTest
|
|
|
88
88
|
end
|
|
89
89
|
stub_const('Schemas::MySchema', schema_class)
|
|
90
90
|
|
|
91
|
-
schema_datetime_class = Class.new(
|
|
91
|
+
schema_datetime_class = Class.new(AvroGen::SchemaClass::Record) do
|
|
92
92
|
def schema
|
|
93
93
|
'MySchemaWithDateTimes'
|
|
94
94
|
end
|
|
@@ -164,7 +164,7 @@ module ActiveRecordConsumerTest
|
|
|
164
164
|
end
|
|
165
165
|
end
|
|
166
166
|
Deimos.configure do |config|
|
|
167
|
-
config.
|
|
167
|
+
config.avrogen.use_full_namespace = true
|
|
168
168
|
end
|
|
169
169
|
end
|
|
170
170
|
|
data/spec/batch_consumer_spec.rb
CHANGED
|
@@ -51,14 +51,14 @@ module ConsumerTest
|
|
|
51
51
|
|
|
52
52
|
let(:schema_class_batch) do
|
|
53
53
|
batch.map do |p|
|
|
54
|
-
|
|
54
|
+
AvroGen::SchemaClass.instance(p, 'MySchema', 'com.my-namespace')
|
|
55
55
|
end
|
|
56
56
|
end
|
|
57
57
|
let(:use_schema_classes) { true }
|
|
58
58
|
|
|
59
59
|
before(:each) do
|
|
60
60
|
Deimos.configure do |config|
|
|
61
|
-
config.
|
|
61
|
+
config.avrogen.use_full_namespace = true
|
|
62
62
|
end
|
|
63
63
|
end
|
|
64
64
|
|
data/spec/consumer_spec.rb
CHANGED
|
@@ -48,8 +48,8 @@ module ConsumerTest
|
|
|
48
48
|
|
|
49
49
|
before(:each) do
|
|
50
50
|
Deimos.configure do |config|
|
|
51
|
-
config.
|
|
52
|
-
config.
|
|
51
|
+
config.avrogen.use_full_namespace = true
|
|
52
|
+
config.avrogen.schema_namespace_map = {
|
|
53
53
|
'com' => 'Schemas',
|
|
54
54
|
'com.my-namespace.my-suborg' => %w(Schemas MyNamespace)
|
|
55
55
|
}
|
|
@@ -62,7 +62,7 @@ module ConsumerTest
|
|
|
62
62
|
'some_int' => 123 }) do |payload, _metadata|
|
|
63
63
|
expect(payload['test_id']).to eq('foo')
|
|
64
64
|
expect(payload['some_int']).to eq(123)
|
|
65
|
-
|
|
65
|
+
end
|
|
66
66
|
end
|
|
67
67
|
|
|
68
68
|
it 'should consume a nil message' do
|
|
@@ -77,7 +77,7 @@ module ConsumerTest
|
|
|
77
77
|
'some_int' => 123 }) do |payload, _metadata|
|
|
78
78
|
expect(payload['test_id']).to eq('foo')
|
|
79
79
|
expect(payload['some_int']).to eq(123)
|
|
80
|
-
|
|
80
|
+
end
|
|
81
81
|
end
|
|
82
82
|
|
|
83
83
|
it 'should fail on invalid message' do
|
|
@@ -160,7 +160,7 @@ module ConsumerTest
|
|
|
160
160
|
before(:each) do
|
|
161
161
|
set_karafka_config(:use_schema_classes, true)
|
|
162
162
|
Deimos.configure do |config|
|
|
163
|
-
config.
|
|
163
|
+
config.avrogen.use_full_namespace = true
|
|
164
164
|
end
|
|
165
165
|
end
|
|
166
166
|
|
|
@@ -196,7 +196,7 @@ module ConsumerTest
|
|
|
196
196
|
expect(payload['test_id']).to eq('foo')
|
|
197
197
|
expect(payload['some_int']).to eq(1)
|
|
198
198
|
expect(payload['super_int']).to eq(9000)
|
|
199
|
-
|
|
199
|
+
end
|
|
200
200
|
end
|
|
201
201
|
|
|
202
202
|
end
|
|
@@ -205,8 +205,8 @@ module ConsumerTest
|
|
|
205
205
|
before(:each) do
|
|
206
206
|
set_karafka_config(:use_schema_classes, true)
|
|
207
207
|
Deimos.configure do |config|
|
|
208
|
-
config.
|
|
209
|
-
config.
|
|
208
|
+
config.avrogen.use_full_namespace = true
|
|
209
|
+
config.avrogen.schema_namespace_map = {
|
|
210
210
|
'com' => 'Schemas',
|
|
211
211
|
'com.my-namespace.my-suborg' => %w(Schemas MyNamespace)
|
|
212
212
|
}
|
|
@@ -255,7 +255,7 @@ module ConsumerTest
|
|
|
255
255
|
expect(payload['some_nested_record']['some_int']).to eq(1)
|
|
256
256
|
expect(payload.to_h).not_to have_key('additional_field')
|
|
257
257
|
expect(payload.to_h['some_nested_record']).not_to have_key('additional_field')
|
|
258
|
-
|
|
258
|
+
end
|
|
259
259
|
|
|
260
260
|
end
|
|
261
261
|
end
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Schema class generation moved to the avro-gen-ruby gem. These specs cover the
|
|
4
|
+
# backwards-compatible shims that keep the old Deimos constants working for
|
|
5
|
+
# users who haven't yet run `rake avro:upgrade`.
|
|
6
|
+
RSpec.describe Deimos::SchemaClass do
|
|
7
|
+
describe 'deprecated constants' do
|
|
8
|
+
it 'resolves to the AvroGen equivalents' do
|
|
9
|
+
expect(Deimos::SchemaClass::Base).to be(AvroGen::SchemaClass::Base)
|
|
10
|
+
expect(Deimos::SchemaClass::Record).to be(AvroGen::SchemaClass::Record)
|
|
11
|
+
expect(Deimos::SchemaClass::Enum).to be(AvroGen::SchemaClass::Enum)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
it 'emits a deprecation warning when an old constant is referenced' do
|
|
15
|
+
allow(Deimos::Logging).to receive(:deprecate)
|
|
16
|
+
# Stub const_set so re-resolving doesn't emit an "already initialized" warning.
|
|
17
|
+
allow(described_class).to receive(:const_set)
|
|
18
|
+
|
|
19
|
+
expect(described_class.const_missing(:Record)).to be(AvroGen::SchemaClass::Record)
|
|
20
|
+
expect(Deimos::Logging).to have_received(:deprecate).
|
|
21
|
+
with(a_string_matching(/Deimos::SchemaClass::Record is deprecated/))
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
it 'raises NameError for genuinely unknown constants' do
|
|
25
|
+
expect { Deimos::SchemaClass::NotARealClass }.to raise_error(NameError)
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
describe Deimos::Utils::SchemaClass do
|
|
30
|
+
it 'delegates to AvroGen::SchemaClass with a deprecation warning' do
|
|
31
|
+
allow(Deimos::Logging).to receive(:deprecate)
|
|
32
|
+
|
|
33
|
+
expect(described_class.modules_for('com.my-namespace')).
|
|
34
|
+
to eq(AvroGen::SchemaClass.modules_for('com.my-namespace'))
|
|
35
|
+
expect(Deimos::Logging).to have_received(:deprecate).
|
|
36
|
+
with(a_string_matching(/Deimos::Utils::SchemaClass\.modules_for is deprecated/))
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
it 'still raises NoMethodError for genuinely unknown methods' do
|
|
40
|
+
expect { described_class.not_a_real_method }.to raise_error(NoMethodError)
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
describe 'generation config' do
|
|
45
|
+
it 'forwards Deimos.config.avrogen settings to AvroGen.config' do
|
|
46
|
+
Deimos.configure do |config|
|
|
47
|
+
config.avrogen.generated_class_path = 'custom/classes'
|
|
48
|
+
config.avrogen.use_full_namespace = true
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
expect(AvroGen.config.generated_class_path).to eq('custom/classes')
|
|
52
|
+
expect(AvroGen.config.use_full_namespace).to be(true)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
it 'still honors the legacy schema setting, deprecating it in favour of avrogen' do
|
|
56
|
+
allow(Deimos::Logging).to receive(:deprecate)
|
|
57
|
+
|
|
58
|
+
Deimos.configure { |config| config.schema.generated_class_path = 'legacy/classes' }
|
|
59
|
+
|
|
60
|
+
expect(AvroGen.config.generated_class_path).to eq('legacy/classes')
|
|
61
|
+
expect(Deimos::Logging).to have_received(:deprecate).
|
|
62
|
+
with(a_string_matching(/Deimos\.config\.schema\.generated_class_path is deprecated.*avrogen/))
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.Generated
|
|
7
|
-
class Generated <
|
|
7
|
+
class Generated < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Secondary Schema Classes ###
|
|
10
10
|
# Autogenerated Schema for Record at com.my-namespace.ARecord
|
|
11
|
-
class ARecord <
|
|
11
|
+
class ARecord < AvroGen::SchemaClass::Record
|
|
12
12
|
|
|
13
13
|
### Attribute Accessors ###
|
|
14
14
|
# @return [String]
|
|
@@ -40,7 +40,7 @@ module Schemas; module MyNamespace
|
|
|
40
40
|
end
|
|
41
41
|
|
|
42
42
|
# Autogenerated Schema for Enum at com.my-namespace.AnEnum
|
|
43
|
-
class AnEnum <
|
|
43
|
+
class AnEnum < AvroGen::SchemaClass::Enum
|
|
44
44
|
# @override
|
|
45
45
|
def symbols
|
|
46
46
|
%w(sym1 sym2)
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.my-suborg.MyLongNamespaceSchema
|
|
7
|
-
class MyLongNamespaceSchema <
|
|
7
|
+
class MyLongNamespaceSchema < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MyNestedSchema
|
|
7
|
-
class MyNestedSchema <
|
|
7
|
+
class MyNestedSchema < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Secondary Schema Classes ###
|
|
10
10
|
# Autogenerated Schema for Record at com.my-namespace.MyNestedRecord
|
|
11
|
-
class MyNestedRecord <
|
|
11
|
+
class MyNestedRecord < AvroGen::SchemaClass::Record
|
|
12
12
|
|
|
13
13
|
### Attribute Accessors ###
|
|
14
14
|
# @return [Integer]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchema
|
|
7
|
-
class MySchema <
|
|
7
|
+
class MySchema < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Readers ###
|
|
10
10
|
# @return [MySchemaKey]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaCompound_key
|
|
7
|
-
class MySchemaCompoundKey <
|
|
7
|
+
class MySchemaCompoundKey < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaId_key
|
|
7
|
-
class MySchemaIdKey <
|
|
7
|
+
class MySchemaIdKey < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [Integer]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchema_key
|
|
7
|
-
class MySchemaKey <
|
|
7
|
+
class MySchemaKey < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaWithBooleans
|
|
7
|
-
class MySchemaWithBoolean <
|
|
7
|
+
class MySchemaWithBoolean < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaWithCircularReference
|
|
7
|
-
class MySchemaWithCircularReference <
|
|
7
|
+
class MySchemaWithCircularReference < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Secondary Schema Classes ###
|
|
10
10
|
# Autogenerated Schema for Record at com.my-namespace.Property
|
|
11
|
-
class Property <
|
|
11
|
+
class Property < AvroGen::SchemaClass::Record
|
|
12
12
|
|
|
13
13
|
### Attribute Accessors ###
|
|
14
14
|
# @return [Boolean, Integer, Integer, Float, Float, String, Array<Property>, Hash<String, Property>]
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaWithComplexTypes
|
|
7
|
-
class MySchemaWithComplexType <
|
|
7
|
+
class MySchemaWithComplexType < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Secondary Schema Classes ###
|
|
10
10
|
# Autogenerated Schema for Record at com.my-namespace.ARecord
|
|
11
|
-
class ARecord <
|
|
11
|
+
class ARecord < AvroGen::SchemaClass::Record
|
|
12
12
|
|
|
13
13
|
### Attribute Accessors ###
|
|
14
14
|
# @return [String]
|
|
@@ -40,7 +40,7 @@ module Schemas; module MyNamespace
|
|
|
40
40
|
end
|
|
41
41
|
|
|
42
42
|
# Autogenerated Schema for Enum at com.my-namespace.AnEnum
|
|
43
|
-
class AnEnum <
|
|
43
|
+
class AnEnum < AvroGen::SchemaClass::Enum
|
|
44
44
|
# @override
|
|
45
45
|
def symbols
|
|
46
46
|
%w(sym1 sym2)
|
|
@@ -57,7 +57,7 @@ module Schemas; module MyNamespace
|
|
|
57
57
|
end
|
|
58
58
|
|
|
59
59
|
# Autogenerated Schema for Enum at com.my-namespace.AnotherEnum
|
|
60
|
-
class AnotherEnum <
|
|
60
|
+
class AnotherEnum < AvroGen::SchemaClass::Enum
|
|
61
61
|
# @override
|
|
62
62
|
def symbols
|
|
63
63
|
%w(sym3 sym4)
|
|
@@ -74,7 +74,7 @@ module Schemas; module MyNamespace
|
|
|
74
74
|
end
|
|
75
75
|
|
|
76
76
|
# Autogenerated Schema for Enum at com.my-namespace.YetAnotherEnum
|
|
77
|
-
class YetAnotherEnum <
|
|
77
|
+
class YetAnotherEnum < AvroGen::SchemaClass::Enum
|
|
78
78
|
# @override
|
|
79
79
|
def symbols
|
|
80
80
|
%w(sym5 sym6)
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaWithDateTimes
|
|
7
|
-
class MySchemaWithDateTime <
|
|
7
|
+
class MySchemaWithDateTime < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaWithId
|
|
7
|
-
class MySchemaWithId <
|
|
7
|
+
class MySchemaWithId < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaWithTitle
|
|
7
|
-
class MySchemaWithTitle <
|
|
7
|
+
class MySchemaWithTitle < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaWithUnionType
|
|
7
|
-
class MySchemaWithUnionType <
|
|
7
|
+
class MySchemaWithUnionType < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Secondary Schema Classes ###
|
|
10
10
|
# Autogenerated Schema for Record at com.flipp.content.Record1
|
|
11
|
-
class Record1 <
|
|
11
|
+
class Record1 < AvroGen::SchemaClass::Record
|
|
12
12
|
|
|
13
13
|
### Attribute Accessors ###
|
|
14
14
|
# @return [Hash<String, Integer>]
|
|
@@ -45,7 +45,7 @@ module Schemas; module MyNamespace
|
|
|
45
45
|
end
|
|
46
46
|
|
|
47
47
|
# Autogenerated Schema for Record at com.flipp.content.Record2
|
|
48
|
-
class Record2 <
|
|
48
|
+
class Record2 < AvroGen::SchemaClass::Record
|
|
49
49
|
|
|
50
50
|
### Attribute Accessors ###
|
|
51
51
|
# @return [String]
|
|
@@ -77,7 +77,7 @@ module Schemas; module MyNamespace
|
|
|
77
77
|
end
|
|
78
78
|
|
|
79
79
|
# Autogenerated Schema for Record at com.flipp.content.Record3
|
|
80
|
-
class Record3 <
|
|
80
|
+
class Record3 < AvroGen::SchemaClass::Record
|
|
81
81
|
|
|
82
82
|
### Attribute Accessors ###
|
|
83
83
|
# @return [Float]
|
|
@@ -109,7 +109,7 @@ module Schemas; module MyNamespace
|
|
|
109
109
|
end
|
|
110
110
|
|
|
111
111
|
# Autogenerated Schema for Record at com.flipp.content.Record4
|
|
112
|
-
class Record4 <
|
|
112
|
+
class Record4 < AvroGen::SchemaClass::Record
|
|
113
113
|
|
|
114
114
|
### Attribute Accessors ###
|
|
115
115
|
# @return [Integer]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchemaWithUniqueId
|
|
7
|
-
class MySchemaWithUniqueId <
|
|
7
|
+
class MySchemaWithUniqueId < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [Integer]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module Com; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.MySchema
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace; module Request
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.request.CreateTopic
|
|
7
|
-
class CreateTopic <
|
|
7
|
+
class CreateTopic < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace; module Request
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.request.Index
|
|
7
|
-
class Index <
|
|
7
|
+
class Index < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace; module Request
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.request.UpdateRequest
|
|
7
|
-
class UpdateRequest <
|
|
7
|
+
class UpdateRequest < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace; module Response
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.response.CreateTopic
|
|
7
|
-
class CreateTopic <
|
|
7
|
+
class CreateTopic < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace; module Response
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.response.Index
|
|
7
|
-
class Index <
|
|
7
|
+
class Index < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace; module Response
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.response.UpdateResponse
|
|
7
|
-
class UpdateResponse <
|
|
7
|
+
class UpdateResponse < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [String]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# This file is autogenerated by
|
|
3
|
+
# This file is autogenerated by AvroGen, Do NOT modify
|
|
4
4
|
module Schemas; module MyNamespace
|
|
5
5
|
### Primary Schema Class ###
|
|
6
6
|
# Autogenerated Schema for Record at com.my-namespace.Wibble
|
|
7
|
-
class Wibble <
|
|
7
|
+
class Wibble < AvroGen::SchemaClass::Record
|
|
8
8
|
|
|
9
9
|
### Attribute Accessors ###
|
|
10
10
|
# @return [Integer]
|