Skip to content

Commit 96e8d54

Browse files
authored
Minor refactor to use RuleRegistry (#33) (#2309)
* Minor refactor to use RuleRegistry * Minor cleanup
1 parent 5be2102 commit 96e8d54

File tree

17 files changed

+106
-79
lines changed

17 files changed

+106
-79
lines changed

src/Confluent.SchemaRegistry.Serdes.Avro/AvroDeserializer.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public class AvroDeserializer<T> : IAsyncDeserializer<T>
3939
{
4040
private ISchemaRegistryClient schemaRegistryClient;
4141
private AvroDeserializerConfig config;
42-
private IList<IRuleExecutor> ruleExecutors;
42+
private RuleRegistry ruleRegistry;
4343

4444
private IAsyncDeserializer<T> deserializerImpl;
4545

@@ -64,11 +64,11 @@ public AvroDeserializer(ISchemaRegistryClient schemaRegistryClient, IEnumerable<
6464
{
6565
}
6666

67-
public AvroDeserializer(ISchemaRegistryClient schemaRegistryClient, AvroDeserializerConfig config = null, IList<IRuleExecutor> ruleExecutors = null)
67+
public AvroDeserializer(ISchemaRegistryClient schemaRegistryClient, AvroDeserializerConfig config = null, RuleRegistry ruleRegistry = null)
6868
{
6969
this.schemaRegistryClient = schemaRegistryClient;
7070
this.config = config;
71-
this.ruleExecutors = ruleExecutors ?? new List<IRuleExecutor>();
71+
this.ruleRegistry = ruleRegistry ?? RuleRegistry.GlobalInstance;
7272

7373
if (config == null) { return; }
7474

@@ -129,8 +129,8 @@ public async Task<T> DeserializeAsync(ReadOnlyMemory<byte> data, bool isNull, Se
129129
if (deserializerImpl == null)
130130
{
131131
deserializerImpl = (typeof(T) == typeof(GenericRecord))
132-
? (IAsyncDeserializer<T>)new GenericDeserializerImpl(schemaRegistryClient, config, ruleExecutors)
133-
: new SpecificDeserializerImpl<T>(schemaRegistryClient, config, ruleExecutors);
132+
? (IAsyncDeserializer<T>)new GenericDeserializerImpl(schemaRegistryClient, config, ruleRegistry)
133+
: new SpecificDeserializerImpl<T>(schemaRegistryClient, config, ruleRegistry);
134134
}
135135

136136
return isNull ? default : await deserializerImpl.DeserializeAsync(data, isNull, context)

src/Confluent.SchemaRegistry.Serdes.Avro/AvroSerializer.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public class AvroSerializer<T> : IAsyncSerializer<T>
3939
{
4040
private ISchemaRegistryClient schemaRegistryClient;
4141
private AvroSerializerConfig config;
42-
private IList<IRuleExecutor> ruleExecutors;
42+
private RuleRegistry ruleRegistry;
4343

4444
private IAsyncSerializer<T> serializerImpl;
4545

@@ -82,11 +82,11 @@ public AvroSerializer(ISchemaRegistryClient schemaRegistryClient, IEnumerable<Ke
8282
/// Serializer configuration properties (refer to
8383
/// <see cref="AvroSerializerConfig" />)
8484
/// </param>
85-
public AvroSerializer(ISchemaRegistryClient schemaRegistryClient, AvroSerializerConfig config = null, IList<IRuleExecutor> ruleExecutors = null)
85+
public AvroSerializer(ISchemaRegistryClient schemaRegistryClient, AvroSerializerConfig config = null, RuleRegistry ruleRegistry = null)
8686
{
8787
this.schemaRegistryClient = schemaRegistryClient;
8888
this.config = config;
89-
this.ruleExecutors = ruleExecutors ?? new List<IRuleExecutor>();
89+
this.ruleRegistry = ruleRegistry ?? RuleRegistry.GlobalInstance;
9090

9191
if (config == null) { return; }
9292

@@ -147,8 +147,8 @@ public async Task<byte[]> SerializeAsync(T value, SerializationContext context)
147147
{
148148
serializerImpl = typeof(T) == typeof(GenericRecord)
149149
? (IAsyncSerializer<T>)new GenericSerializerImpl(
150-
schemaRegistryClient, config, ruleExecutors)
151-
: new SpecificSerializerImpl<T>(schemaRegistryClient, config, ruleExecutors);
150+
schemaRegistryClient, config, ruleRegistry)
151+
: new SpecificSerializerImpl<T>(schemaRegistryClient, config, ruleRegistry);
152152
}
153153

154154
return await serializerImpl.SerializeAsync(value, context)

src/Confluent.SchemaRegistry.Serdes.Avro/GenericDeserializerImpl.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ internal class GenericDeserializerImpl : AsyncDeserializer<GenericRecord, Avro.S
4141
public GenericDeserializerImpl(
4242
ISchemaRegistryClient schemaRegistryClient,
4343
AvroDeserializerConfig config,
44-
IList<IRuleExecutor> ruleExecutors) : base(schemaRegistryClient, config, ruleExecutors)
44+
RuleRegistry ruleRegistry) : base(schemaRegistryClient, config, ruleRegistry)
4545
{
4646
if (config == null) { return; }
4747

src/Confluent.SchemaRegistry.Serdes.Avro/GenericSerializerImpl.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ internal class GenericSerializerImpl : AsyncSerializer<GenericRecord, Avro.Schem
3838
public GenericSerializerImpl(
3939
ISchemaRegistryClient schemaRegistryClient,
4040
AvroSerializerConfig config,
41-
IList<IRuleExecutor> ruleExecutors) : base(schemaRegistryClient, config, ruleExecutors)
41+
RuleRegistry ruleRegistry) : base(schemaRegistryClient, config, ruleRegistry)
4242
{
4343
if (config == null) { return; }
4444

src/Confluent.SchemaRegistry.Serdes.Avro/SpecificDeserializerImpl.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ internal class SpecificDeserializerImpl<T> : AsyncDeserializer<T, Avro.Schema>
4949
public SpecificDeserializerImpl(
5050
ISchemaRegistryClient schemaRegistryClient,
5151
AvroDeserializerConfig config,
52-
IList<IRuleExecutor> ruleExecutors) : base(schemaRegistryClient, config, ruleExecutors)
52+
RuleRegistry ruleRegistry) : base(schemaRegistryClient, config, ruleRegistry)
5353
{
5454
if (typeof(ISpecificRecord).IsAssignableFrom(typeof(T)))
5555
{

src/Confluent.SchemaRegistry.Serdes.Avro/SpecificSerializerImpl.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ public SpecificWriter<T> AvroWriter
8686
public SpecificSerializerImpl(
8787
ISchemaRegistryClient schemaRegistryClient,
8888
AvroSerializerConfig config,
89-
IList<IRuleExecutor> ruleExecutors) : base(schemaRegistryClient, config, ruleExecutors)
89+
RuleRegistry ruleRegistry) : base(schemaRegistryClient, config, ruleRegistry)
9090
{
9191
Type writerType = typeof(T);
9292
if (writerType != typeof(ISpecificRecord))

src/Confluent.SchemaRegistry.Serdes.Json/JsonDeserializer.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@ public JsonDeserializer(ISchemaRegistryClient schemaRegistryClient, IEnumerable<
8080
}
8181

8282
public JsonDeserializer(ISchemaRegistryClient schemaRegistryClient, JsonDeserializerConfig config,
83-
JsonSchemaGeneratorSettings jsonSchemaGeneratorSettings = null, IList<IRuleExecutor> ruleExecutors = null)
84-
: base(schemaRegistryClient, config, ruleExecutors)
83+
JsonSchemaGeneratorSettings jsonSchemaGeneratorSettings = null, RuleRegistry ruleRegistry = null)
84+
: base(schemaRegistryClient, config, ruleRegistry)
8585
{
8686
this.jsonSchemaGeneratorSettings = jsonSchemaGeneratorSettings;
8787

src/Confluent.SchemaRegistry.Serdes.Json/JsonSerializer.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ public class JsonSerializer<T> : AsyncSerializer<T, JsonSchema> where T : class
8282
/// JSON schema generator settings.
8383
/// </param>
8484
public JsonSerializer(ISchemaRegistryClient schemaRegistryClient, JsonSerializerConfig config = null,
85-
JsonSchemaGeneratorSettings jsonSchemaGeneratorSettings = null, IList<IRuleExecutor> ruleExecutors = null)
86-
: base(schemaRegistryClient, config, ruleExecutors)
85+
JsonSchemaGeneratorSettings jsonSchemaGeneratorSettings = null, RuleRegistry ruleRegistry = null)
86+
: base(schemaRegistryClient, config, ruleRegistry)
8787
{
8888
this.jsonSchemaGeneratorSettings = jsonSchemaGeneratorSettings;
8989

@@ -136,8 +136,8 @@ public JsonSerializer(ISchemaRegistryClient schemaRegistryClient, JsonSerializer
136136
/// JSON schema generator settings.
137137
/// </param>
138138
public JsonSerializer(ISchemaRegistryClient schemaRegistryClient, Schema schema, JsonSerializerConfig config = null,
139-
JsonSchemaGeneratorSettings jsonSchemaGeneratorSettings = null, IList<IRuleExecutor> ruleExecutors = null)
140-
: this(schemaRegistryClient, config, jsonSchemaGeneratorSettings, ruleExecutors)
139+
JsonSchemaGeneratorSettings jsonSchemaGeneratorSettings = null, RuleRegistry ruleRegistry = null)
140+
: this(schemaRegistryClient, config, jsonSchemaGeneratorSettings, ruleRegistry)
141141
{
142142
foreach (var reference in schema.References)
143143
{

src/Confluent.SchemaRegistry.Serdes.Protobuf/ProtobufDeserializer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ public ProtobufDeserializer(ISchemaRegistryClient schemaRegistryClient, IEnumera
7070
}
7171

7272
public ProtobufDeserializer(ISchemaRegistryClient schemaRegistryClient, ProtobufDeserializerConfig config,
73-
IList<IRuleExecutor> ruleExecutors = null) : base(schemaRegistryClient, config, ruleExecutors)
73+
RuleRegistry ruleRegistry = null) : base(schemaRegistryClient, config, ruleRegistry)
7474
{
7575
this.parser = new MessageParser<T>(() => new T());
7676

src/Confluent.SchemaRegistry.Serdes.Protobuf/ProtobufSerializer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ namespace Confluent.SchemaRegistry.Serdes
7171
/// Initialize a new instance of the ProtobufSerializer class.
7272
/// </summary>
7373
public ProtobufSerializer(ISchemaRegistryClient schemaRegistryClient, ProtobufSerializerConfig config = null,
74-
IList<IRuleExecutor> ruleExecutors = null) : base(schemaRegistryClient, config, ruleExecutors)
74+
RuleRegistry ruleRegistry = null) : base(schemaRegistryClient, config, ruleRegistry)
7575
{
7676
if (config == null)
7777
{

0 commit comments

Comments
 (0)