Adding CallbackData parameter to action calls
This commit is contained in:
parent
b8fd3badd4
commit
d572c353f6
@ -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<Guid, UpdateResult, MessageResult, Task> action)
|
||||
public static void AddGuidAction(this ExternalActionManager manager, string method, Func<Guid, CallbackData, UpdateResult, MessageResult, Task> action)
|
||||
{
|
||||
manager.Add(new GuidAction(method, action));
|
||||
}
|
||||
|
||||
@ -7,11 +7,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions
|
||||
{
|
||||
public string Method { get; set; }
|
||||
|
||||
CallbackData? _lastData { get; set; }
|
||||
|
||||
Guid? _lastValue { get; set; }
|
||||
|
||||
Func<Guid, UpdateResult, MessageResult, Task> Action;
|
||||
Func<Guid, CallbackData, UpdateResult, MessageResult, Task> Action;
|
||||
|
||||
public GuidAction(string method, Func<Guid, UpdateResult, MessageResult, Task> action)
|
||||
public GuidAction(string method, Func<Guid, CallbackData, UpdateResult, MessageResult, Task> 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());
|
||||
|
||||
|
||||
@ -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<int, UpdateResult, MessageResult, Task> action)
|
||||
public static void AddInt32Action(this ExternalActionManager manager, string method, Func<int, CallbackData, UpdateResult, MessageResult, Task> action)
|
||||
{
|
||||
manager.Add(new Int32Action(method, action));
|
||||
}
|
||||
|
||||
@ -7,11 +7,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions
|
||||
{
|
||||
public string Method { get; set; }
|
||||
|
||||
CallbackData? _lastData { get; set; }
|
||||
|
||||
int? _lastValue { get; set; }
|
||||
|
||||
Func<int, UpdateResult, MessageResult, Task> Action;
|
||||
Func<int, CallbackData, UpdateResult, MessageResult, Task> Action;
|
||||
|
||||
public Int32Action(string method, Func<int, UpdateResult, MessageResult, Task> action)
|
||||
public Int32Action(string method, Func<int, CallbackData, UpdateResult, MessageResult, Task> 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<int, UpdateResult, MessageResult, Task> Action;
|
||||
Func<int, CallbackData, UpdateResult, MessageResult, Task> Action;
|
||||
|
||||
public Int32Action(string method, Func<int, UpdateResult, MessageResult, Task> action)
|
||||
public Int32Action(string method, Func<int, CallbackData, UpdateResult, MessageResult, Task> 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);
|
||||
}
|
||||
}
|
||||
|
||||
@ -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<long, UpdateResult, MessageResult, Task> action)
|
||||
public static void AddInt64Action(this ExternalActionManager manager, string method, Func<long, CallbackData, UpdateResult, MessageResult, Task> action)
|
||||
{
|
||||
manager.Add(new Int64Action(method, action));
|
||||
}
|
||||
|
||||
@ -7,11 +7,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions
|
||||
{
|
||||
public string Method { get; set; }
|
||||
|
||||
CallbackData? _lastData { get; set; }
|
||||
|
||||
long? _lastValue { get; set; }
|
||||
|
||||
Func<long, UpdateResult, MessageResult, Task> Action;
|
||||
Func<long, CallbackData, UpdateResult, MessageResult, Task> Action;
|
||||
|
||||
public Int64Action(string method, Func<long, UpdateResult, MessageResult, Task> action)
|
||||
public Int64Action(string method, Func<long, CallbackData, UpdateResult, MessageResult, Task> 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<long, UpdateResult, MessageResult, Task> Action;
|
||||
Func<long, CallbackData, UpdateResult, MessageResult, Task> Action;
|
||||
|
||||
public Int64Action(string method, Func<long, UpdateResult, MessageResult, Task> action)
|
||||
public Int64Action(string method, Func<long, CallbackData, UpdateResult, MessageResult, Task> 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);
|
||||
}
|
||||
}
|
||||
|
||||
@ -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<String, UpdateResult, MessageResult, Task> action)
|
||||
public static void AddStringAction(this ExternalActionManager manager, string method, Func<String, CallbackData, UpdateResult, MessageResult, Task> action)
|
||||
{
|
||||
manager.Add(new StringAction(method, action));
|
||||
}
|
||||
|
||||
@ -7,11 +7,13 @@ namespace TelegramBotBase.Experiments.ActionManager.Actions
|
||||
{
|
||||
public string Method { get; set; }
|
||||
|
||||
CallbackData? _lastData { get; set; }
|
||||
|
||||
String? _lastValue { get; set; }
|
||||
|
||||
Func<string, UpdateResult, MessageResult, Task> Action;
|
||||
Func<string, CallbackData, UpdateResult, MessageResult, Task> Action;
|
||||
|
||||
public StringAction(string method, Func<string, UpdateResult, MessageResult, Task> action)
|
||||
public StringAction(string method, Func<string, CallbackData, UpdateResult, MessageResult, Task> 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<String, UpdateResult, MessageResult, Task> Action;
|
||||
Func<String, CallbackData, UpdateResult, MessageResult, Task> Action;
|
||||
|
||||
public StringAction(string method, Func<String, UpdateResult, MessageResult, Task> action)
|
||||
public StringAction(string method, Func<String, CallbackData, UpdateResult, MessageResult, Task> 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);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user