diff --git a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/GuidAction.Extensions.cs b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/GuidAction.Extensions.cs index 3f7f2b7..95d7388 100644 --- a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/GuidAction.Extensions.cs +++ b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/GuidAction.Extensions.cs @@ -1,11 +1,12 @@ using TelegramBotBase.Base; +using TelegramBotBase.Form; namespace TelegramBotBase.Experiments.ActionManager.Actions { public static class GuidAction_Extensions { - public static void AddGuidAction(this ExternalActionManager manager, string method, Func action) + public static void AddGuidAction(this ExternalActionManager manager, string method, Func action) { manager.Add(new GuidAction(method, action)); } diff --git a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/GuidAction.cs b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/GuidAction.cs index 44b11c3..f055cb1 100644 --- a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/GuidAction.cs +++ b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/GuidAction.cs @@ -7,11 +7,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions { public string Method { get; set; } + CallbackData? _lastData { get; set; } + Guid? _lastValue { get; set; } - Func Action; + Func Action; - public GuidAction(string method, Func action) + public GuidAction(string method, Func action) { Method = method; Action = action; @@ -32,11 +34,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions if (Guid.TryParse(cd.Value, out g)) _lastValue = g; + _lastData = cd; + return true; } - public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, ur, mr); + public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, _lastData, ur, mr); public static CallbackData GetCallback(string method, Guid guid) => new CallbackData(method, guid.ToString()); diff --git a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int32Action.Extensions.cs b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int32Action.Extensions.cs index 8d84f11..ffb19de 100644 --- a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int32Action.Extensions.cs +++ b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int32Action.Extensions.cs @@ -1,11 +1,12 @@ using TelegramBotBase.Base; +using TelegramBotBase.Form; namespace TelegramBotBase.Experiments.ActionManager.Actions { public static class Int32Action_Extensions { - public static void AddInt32Action(this ExternalActionManager manager, string method, Func action) + public static void AddInt32Action(this ExternalActionManager manager, string method, Func action) { manager.Add(new Int32Action(method, action)); } diff --git a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int32Action.cs b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int32Action.cs index ce68cc7..56e0004 100644 --- a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int32Action.cs +++ b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int32Action.cs @@ -7,11 +7,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions { public string Method { get; set; } + CallbackData? _lastData { get; set; } + int? _lastValue { get; set; } - Func Action; + Func Action; - public Int32Action(string method, Func action) + public Int32Action(string method, Func action) { Method = method; Action = action; @@ -33,11 +35,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions if (int.TryParse(cd.Value, out i)) _lastValue = i; + _lastData = cd; + return true; } - public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, ur, mr); + public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, _lastData, ur, mr); public static CallbackData GetCallback(string method, long l) => new CallbackData(method, l.ToString()); @@ -48,11 +52,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions { public string Method { get; set; } + CallbackData? _lastData { get; set; } + int? _lastValue { get; set; } - Func Action; + Func Action; - public Int32Action(string method, Func action) + public Int32Action(string method, Func action) { Method = method; Action = action; @@ -73,10 +79,12 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions if (int.TryParse(cd.Value, out i)) _lastValue = i; + _lastData = cd; + return true; } - public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, ur, mr); + public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, _lastData, ur, mr); } } diff --git a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int64Action.Extensions.cs b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int64Action.Extensions.cs index 942fefe..da097f2 100644 --- a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int64Action.Extensions.cs +++ b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int64Action.Extensions.cs @@ -1,11 +1,12 @@ using TelegramBotBase.Base; +using TelegramBotBase.Form; namespace TelegramBotBase.Experiments.ActionManager.Actions { public static class Int64Action_Extensions { - public static void AddInt64Action(this ExternalActionManager manager, string method, Func action) + public static void AddInt64Action(this ExternalActionManager manager, string method, Func action) { manager.Add(new Int64Action(method, action)); } diff --git a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int64Action.cs b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int64Action.cs index 05bc317..44a2c61 100644 --- a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int64Action.cs +++ b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/Int64Action.cs @@ -7,11 +7,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions { public string Method { get; set; } + CallbackData? _lastData { get; set; } + long? _lastValue { get; set; } - Func Action; + Func Action; - public Int64Action(string method, Func action) + public Int64Action(string method, Func action) { Method = method; Action = action; @@ -32,11 +34,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions if (long.TryParse(cd.Value, out l)) _lastValue = l; + _lastData = cd; + return true; } - public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, ur, mr); + public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, _lastData, ur, mr); public static CallbackData GetCallback(string method, long l) => new CallbackData(method, l.ToString()); @@ -47,11 +51,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions { public string Method { get; set; } + CallbackData? _lastData { get; set; } + long? _lastValue { get; set; } - Func Action; + Func Action; - public Int64Action(string method, Func action) + public Int64Action(string method, Func action) { Method = method; Action = action; @@ -72,10 +78,12 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions if (long.TryParse(cd.Value, out g)) _lastValue = g; + _lastData = cd; + return true; } - public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, ur, mr); + public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue.Value, _lastData, ur, mr); } } diff --git a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/StringAction.Extensions.cs b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/StringAction.Extensions.cs index 3b65941..920cffd 100644 --- a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/StringAction.Extensions.cs +++ b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/StringAction.Extensions.cs @@ -1,11 +1,12 @@ using TelegramBotBase.Base; +using TelegramBotBase.Form; namespace TelegramBotBase.Experiments.ActionManager.Actions { public static class StringAction_Extensions { - public static void AddStringAction(this ExternalActionManager manager, string method, Func action) + public static void AddStringAction(this ExternalActionManager manager, string method, Func action) { manager.Add(new StringAction(method, action)); } diff --git a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/StringAction.cs b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/StringAction.cs index 1833996..dc4dd9c 100644 --- a/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/StringAction.cs +++ b/Experiments/ExternalActionManager/TelegramBotBase.Experiments/ActionManager/Actions/StringAction.cs @@ -7,11 +7,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions { public string Method { get; set; } + CallbackData? _lastData { get; set; } + String? _lastValue { get; set; } - Func Action; + Func Action; - public StringAction(string method, Func action) + public StringAction(string method, Func action) { Method = method; Action = action; @@ -30,11 +32,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions _lastValue = cd.Value; + _lastData = cd; + return true; } - public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue, ur, mr); + public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue, _lastData, ur, mr); public static CallbackData GetCallback(string method, string str) => new CallbackData(method, str); @@ -45,11 +49,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions { public string Method { get; set; } + CallbackData? _lastData { get; set; } + String? _lastValue { get; set; } - Func Action; + Func Action; - public StringAction(string method, Func action) + public StringAction(string method, Func action) { Method = method; Action = action; @@ -67,11 +73,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions _lastValue = cd.Value; + _lastData = cd; + return true; } - public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue, ur, mr); + public async Task DoAction(UpdateResult ur, MessageResult mr) => await Action(_lastValue, _lastData, ur, mr); } }