Skip to content

Commit bd679d9

Browse files
bieluclaude
andcommitted
refactor: infer binding type name from TBinding and drop BOMs
Address review feedback on the shared binding loader: - LoadBindings no longer takes the binding type name as a parameter; it is derived from the TBinding interface name for the diagnostic message. - Remove the UTF-8 byte-order mark from the files touched by this change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 parent 8772aa9 commit bd679d9

9 files changed

Lines changed: 20 additions & 18 deletions

‎src/ByteBard.AsyncAPI.Readers/BindingDeserializer.cs‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace ByteBard.AsyncAPI.Readers
1+
namespace ByteBard.AsyncAPI.Readers
22
{
33
using System.Collections.Generic;
44
using System.Linq;
@@ -23,13 +23,15 @@ public static T LoadBinding<T>(string nodeName, ParseNode node, FixedFieldMap<T>
2323
}
2424

2525
internal static AsyncApiBindings<TBinding> LoadBindings<TBinding>(
26-
string bindingType,
2726
MapNode mapNode,
2827
IDictionary<string, IBindingParser<TBinding>> parsers,
2928
PatternFieldMap<AsyncApiBindings<TBinding>> patternFields)
3029
where TBinding : IBinding
3130
{
3231
var context = mapNode.Context;
32+
33+
// TBinding is the binding interface (e.g. IChannelBinding), so drop the leading "I" for the diagnostic.
34+
var bindingType = typeof(TBinding).Name.Substring(1);
3335
var bindings = new AsyncApiBindings<TBinding>();
3436
foreach (var property in mapNode)
3537
{

‎src/ByteBard.AsyncAPI.Readers/V2/AsyncApiChannelBindingDeserializer.cs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace ByteBard.AsyncAPI.Readers
1+
namespace ByteBard.AsyncAPI.Readers
22
{
33
using ByteBard.AsyncAPI.Extensions;
44
using ByteBard.AsyncAPI.Models;
@@ -22,7 +22,7 @@ internal static AsyncApiBindings<IChannelBinding> LoadChannelBindings(ParseNode
2222
return new AsyncApiBindingsReference<IChannelBinding>(pointer);
2323
}
2424

25-
return BindingDeserializer.LoadBindings("ChannelBinding", mapNode, node.Context.ChannelBindingParsers, channelBindingPatternFields);
25+
return BindingDeserializer.LoadBindings(mapNode, node.Context.ChannelBindingParsers, channelBindingPatternFields);
2626
}
2727
}
2828
}

‎src/ByteBard.AsyncAPI.Readers/V2/AsyncApiMessageBindingDeserializer.cs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace ByteBard.AsyncAPI.Readers
1+
namespace ByteBard.AsyncAPI.Readers
22
{
33
using ByteBard.AsyncAPI.Extensions;
44
using ByteBard.AsyncAPI.Models;
@@ -22,7 +22,7 @@ internal static AsyncApiBindings<IMessageBinding> LoadMessageBindings(ParseNode
2222
return new AsyncApiBindingsReference<IMessageBinding>(pointer);
2323
}
2424

25-
return BindingDeserializer.LoadBindings("MessageBinding", mapNode, node.Context.MessageBindingParsers, messageBindingPatternFields);
25+
return BindingDeserializer.LoadBindings(mapNode, node.Context.MessageBindingParsers, messageBindingPatternFields);
2626
}
2727
}
2828
}

‎src/ByteBard.AsyncAPI.Readers/V2/AsyncApiOperationBindingDeserializer.cs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace ByteBard.AsyncAPI.Readers
1+
namespace ByteBard.AsyncAPI.Readers
22
{
33
using ByteBard.AsyncAPI.Extensions;
44
using ByteBard.AsyncAPI.Models;
@@ -22,7 +22,7 @@ internal static AsyncApiBindings<IOperationBinding> LoadOperationBindings(ParseN
2222
return new AsyncApiBindingsReference<IOperationBinding>(pointer);
2323
}
2424

25-
return BindingDeserializer.LoadBindings("OperationBinding", mapNode, node.Context.OperationBindingParsers, operationBindingPatternFields);
25+
return BindingDeserializer.LoadBindings(mapNode, node.Context.OperationBindingParsers, operationBindingPatternFields);
2626
}
2727
}
2828
}

‎src/ByteBard.AsyncAPI.Readers/V2/AsyncApiServerBindingDeserializer.cs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace ByteBard.AsyncAPI.Readers
1+
namespace ByteBard.AsyncAPI.Readers
22
{
33
using ByteBard.AsyncAPI.Extensions;
44
using ByteBard.AsyncAPI.Models;
@@ -22,7 +22,7 @@ internal static AsyncApiBindings<IServerBinding> LoadServerBindings(ParseNode no
2222
return new AsyncApiBindingsReference<IServerBinding>(pointer);
2323
}
2424

25-
return BindingDeserializer.LoadBindings("ServerBinding", mapNode, node.Context.ServerBindingParsers, serverBindingPatternFields);
25+
return BindingDeserializer.LoadBindings(mapNode, node.Context.ServerBindingParsers, serverBindingPatternFields);
2626
}
2727
}
2828
}

‎src/ByteBard.AsyncAPI.Readers/V3/AsyncApiChannelBindingDeserializer.cs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace ByteBard.AsyncAPI.Readers
1+
namespace ByteBard.AsyncAPI.Readers
22
{
33
using ByteBard.AsyncAPI.Extensions;
44
using ByteBard.AsyncAPI.Models;
@@ -22,7 +22,7 @@ internal static AsyncApiBindings<IChannelBinding> LoadChannelBindings(ParseNode
2222
return new AsyncApiBindingsReference<IChannelBinding>(pointer);
2323
}
2424

25-
return BindingDeserializer.LoadBindings("ChannelBinding", mapNode, node.Context.ChannelBindingParsers, channelBindingPatternFields);
25+
return BindingDeserializer.LoadBindings(mapNode, node.Context.ChannelBindingParsers, channelBindingPatternFields);
2626
}
2727
}
2828
}

‎src/ByteBard.AsyncAPI.Readers/V3/AsyncApiMessageBindingDeserializer.cs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace ByteBard.AsyncAPI.Readers
1+
namespace ByteBard.AsyncAPI.Readers
22
{
33
using ByteBard.AsyncAPI.Extensions;
44
using ByteBard.AsyncAPI.Models;
@@ -22,7 +22,7 @@ internal static AsyncApiBindings<IMessageBinding> LoadMessageBindings(ParseNode
2222
return new AsyncApiBindingsReference<IMessageBinding>(pointer);
2323
}
2424

25-
return BindingDeserializer.LoadBindings("MessageBinding", mapNode, node.Context.MessageBindingParsers, messageBindingPatternFields);
25+
return BindingDeserializer.LoadBindings(mapNode, node.Context.MessageBindingParsers, messageBindingPatternFields);
2626
}
2727
}
2828
}

‎src/ByteBard.AsyncAPI.Readers/V3/AsyncApiOperationBindingDeserializer.cs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace ByteBard.AsyncAPI.Readers
1+
namespace ByteBard.AsyncAPI.Readers
22
{
33
using ByteBard.AsyncAPI.Extensions;
44
using ByteBard.AsyncAPI.Models;
@@ -22,7 +22,7 @@ internal static AsyncApiBindings<IOperationBinding> LoadOperationBindings(ParseN
2222
return new AsyncApiBindingsReference<IOperationBinding>(pointer);
2323
}
2424

25-
return BindingDeserializer.LoadBindings("OperationBinding", mapNode, node.Context.OperationBindingParsers, operationBindingPatternFields);
25+
return BindingDeserializer.LoadBindings(mapNode, node.Context.OperationBindingParsers, operationBindingPatternFields);
2626
}
2727
}
2828
}

‎src/ByteBard.AsyncAPI.Readers/V3/AsyncApiServerBindingDeserializer.cs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace ByteBard.AsyncAPI.Readers
1+
namespace ByteBard.AsyncAPI.Readers
22
{
33
using ByteBard.AsyncAPI.Extensions;
44
using ByteBard.AsyncAPI.Models;
@@ -22,7 +22,7 @@ internal static AsyncApiBindings<IServerBinding> LoadServerBindings(ParseNode no
2222
return new AsyncApiBindingsReference<IServerBinding>(pointer);
2323
}
2424

25-
return BindingDeserializer.LoadBindings("ServerBinding", mapNode, node.Context.ServerBindingParsers, serverBindingPatternFields);
25+
return BindingDeserializer.LoadBindings(mapNode, node.Context.ServerBindingParsers, serverBindingPatternFields);
2626
}
2727
}
2828
}

0 commit comments

Comments
 (0)