Adding throwPendingUpdates to QuickStart in BBB

This commit is contained in:
Florian Zevedei 2024-07-03 15:56:50 +02:00
parent 39e68a2089
commit 1f1aa1f0ee
2 changed files with 12 additions and 9 deletions

View File

@ -73,14 +73,14 @@ public class BotBaseBuilder : IAPIKeySelectionStage, IMessageLoopSelectionStage,
}
public IBuildingStage QuickStart(string apiKey, Type startForm)
public IBuildingStage QuickStart(string apiKey, Type startForm, bool throwPendingUpdates = false)
{
_apiKey = apiKey;
_factory = new DefaultStartFormFactory(startForm);
DefaultMessageLoop();
NoProxy();
NoProxy(throwPendingUpdates);
OnlyStart();
@ -94,7 +94,7 @@ public class BotBaseBuilder : IAPIKeySelectionStage, IMessageLoopSelectionStage,
}
public IBuildingStage QuickStart<T>(string apiKey)
public IBuildingStage QuickStart<T>(string apiKey, bool throwPendingUpdates = false)
where T : FormBase
{
_apiKey = apiKey;
@ -102,7 +102,7 @@ public class BotBaseBuilder : IAPIKeySelectionStage, IMessageLoopSelectionStage,
DefaultMessageLoop();
NoProxy();
NoProxy(throwPendingUpdates);
OnlyStart();
@ -115,14 +115,14 @@ public class BotBaseBuilder : IAPIKeySelectionStage, IMessageLoopSelectionStage,
return this;
}
public IBuildingStage QuickStart(string apiKey, IStartFormFactory startFormFactory)
public IBuildingStage QuickStart(string apiKey, IStartFormFactory startFormFactory, bool throwPendingUpdates = false)
{
_apiKey = apiKey;
_factory = startFormFactory;
DefaultMessageLoop();
NoProxy();
NoProxy(throwPendingUpdates);
OnlyStart();

View File

@ -20,16 +20,18 @@ public interface IAPIKeySelectionStage
/// </summary>
/// <param name="apiKey"></param>
/// <param name="StartForm"></param>
/// <param name="throwPendingUpdates">Indicates if all pending Telegram.Bot.Types.Updates should be thrown out before start polling.</param>
/// <returns></returns>
IBuildingStage QuickStart(string apiKey, Type StartForm);
IBuildingStage QuickStart(string apiKey, Type StartForm, bool throwPendingUpdates = false);
/// <summary>
/// Quick and easy way to create a BotBase instance.
/// Uses: DefaultMessageLoop, NoProxy, OnlyStart, NoSerialization, DefaultLanguage
/// </summary>
/// <param name="apiKey"></param>
/// <param name="throwPendingUpdates">Indicates if all pending Telegram.Bot.Types.Updates should be thrown out before start polling.</param>
/// <returns></returns>
IBuildingStage QuickStart<T>(string apiKey) where T : FormBase;
IBuildingStage QuickStart<T>(string apiKey , bool throwPendingUpdates = false) where T : FormBase;
/// <summary>
/// Quick and easy way to create a BotBase instance.
@ -37,6 +39,7 @@ public interface IAPIKeySelectionStage
/// </summary>
/// <param name="apiKey"></param>
/// <param name="StartFormFactory"></param>
/// <param name="throwPendingUpdates">Indicates if all pending Telegram.Bot.Types.Updates should be thrown out before start polling.</param>
/// <returns></returns>
IBuildingStage QuickStart(string apiKey, IStartFormFactory StartFormFactory);
IBuildingStage QuickStart(string apiKey, IStartFormFactory StartFormFactory, bool throwPendingUpdates = false);
}