From f3167eda2c9d4adaae0513416d8a046a9f520a38 Mon Sep 17 00:00:00 2001 From: Victor Date: Mon, 11 Oct 2021 14:37:15 +0300 Subject: [PATCH] Add LambdaStartFormFactory.cs that allows pass parameters without creating factory class eg. BotBase bb = new BotBase(api, new LambdaStartFormFactory( () => new Start(posible, parameters) )); --- .../Base/LambdaStartFormFactory.cs | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 TelegramBotBase/Base/LambdaStartFormFactory.cs diff --git a/TelegramBotBase/Base/LambdaStartFormFactory.cs b/TelegramBotBase/Base/LambdaStartFormFactory.cs new file mode 100644 index 0000000..94bd502 --- /dev/null +++ b/TelegramBotBase/Base/LambdaStartFormFactory.cs @@ -0,0 +1,22 @@ +using TelegramBotBase.Form; +using TelegramBotBase.Interfaces; + +namespace TelegramBotBase.Base +{ + public class LambdaStartFormFactory : IStartFormFactory + { + public delegate FormBase CreateFormDelegate(); + + private readonly CreateFormDelegate _lambda; + + public LambdaStartFormFactory(CreateFormDelegate lambda) + { + _lambda = lambda; + } + + public FormBase CreateForm() + { + return _lambda(); + } + } +} \ No newline at end of file