Убраны старые api
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
using BotPages.Core.Abstractions;
|
||||
using BotPages.Core.Messaging;
|
||||
|
||||
namespace BotPages.Telegram;
|
||||
@@ -15,29 +14,6 @@ public static class MessageBuilderExtensions
|
||||
/// </summary>
|
||||
public static MessageBuilder WithTelegramOptions(this MessageBuilder builder, TelegramOptions options)
|
||||
{
|
||||
// Ensure bag exists
|
||||
var bag = (builder as object) switch
|
||||
{
|
||||
MessageBuilder mb => GetAdapterBag(mb) ?? CreateAndSetAdapterBag(mb),
|
||||
_ => null
|
||||
};
|
||||
|
||||
bag?.Set("telegram", options);
|
||||
return builder;
|
||||
}
|
||||
|
||||
// Reflection helpers to access private adapterOptions field on MessageBuilder
|
||||
private static AdapterOptionsBag? GetAdapterBag(MessageBuilder builder)
|
||||
{
|
||||
var fi = typeof(MessageBuilder).GetField("_adapterOptions", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
|
||||
return fi?.GetValue(builder) as AdapterOptionsBag;
|
||||
}
|
||||
|
||||
private static AdapterOptionsBag CreateAndSetAdapterBag(MessageBuilder builder)
|
||||
{
|
||||
var fi = typeof(MessageBuilder).GetField("_adapterOptions", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
|
||||
var bag = new AdapterOptionsBag();
|
||||
fi?.SetValue(builder, bag);
|
||||
return bag;
|
||||
return builder.WithAdapterOption(TelegramAdapter.AdapterType, options);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user