Commit Graph

14 Commits

Author SHA1 Message Date
Rikitav bf66431089 * Added "INamedFilter" to tagging filters. Required for fallbacking system
* AnonymousCompiledFilter now has undependent realization
* All internal filters now implement INamedFilter interface
* Added new static methods to "Filter" class
* Added Filters fallbacking system
* Added "FiltersFallback" method in "UpdatehandlerBase"
* Changed filters validating system to be able to report failed filters
* Added "FiltersFallbackReport" class
* Added "FormReport" Property to "UpdateHandlerAttributeBase"
* Version incremented
2025-08-08 17:04:56 +04:00
Rikitav e790f31495 * Implemented IDisposable interface for handlers and added virtual method if such needed 2025-08-04 05:22:43 +04:00
Rikitav a794b6ed54 * Version incremented
* Added ability to handle errors during filters validation inside Handlers
* Moved Result class to root directory
* Added FilterOrigin enum
2025-08-04 05:11:59 +04:00
Rikitav 6635d00648 * Code cleanup
* Moved handler execution logic from "DescribedHandlerInfo" to "UpdateHandlerBase"
* Added logging message on handler described
2025-08-04 04:25:00 +04:00
Rikitav 1e0b5078c6 Fixed logging call inside main lib 2025-08-03 03:42:27 +04:00
Rikitav b14d848537 * Added new namespace "Aspects" and types dedicated for aspected handlers processing, including Pre\Post processors
* Added new DescriptorAspectsSet class, used for mamanging and executing aspects of handlers
* Processors can prevent handlers execution using Result.Fault()
* Added field to DescribedHandlerInfo for getting descriptor from which this handler was described
* Removed unused reflection extension methods
2025-08-03 00:28:10 +04:00
Rikitav 7d1ce6ea22 * Added mising XML summaries
* Obsolete code comments cleanup
2025-08-02 03:33:35 +04:00
Rikitav 16d11990ec * Added Result class to communicate with router from handler
* Removed "ExecuteOnlyFirstFoundHanlder" in sake of testing new Result pattern based routing system
* Removed obsolete option property "DescendDescriptorIndex"
* Changed router logic
* Changed handlers pool logic
2025-08-02 02:32:38 +04:00
Rikitav 49310439e0 * Renamed "LeveledDebug" to "Alligator", cuz its funny name
* Changed debug writing to trace writing inside "Alligator"
* Added "HostedTelegramBotInfo" representing hosted version of ITelegramBotInfo. Provides access to services and configuration
* Filters now can acces services and configuration using new "HostedTelegramBotInfo" through context.BotInfo property
2025-08-01 13:50:21 +04:00
Rikitav 5320c9ec20 * Changed public API overview generator behaviour, now working only in DEBUG builds
* Fixed wrong LeveldDebug method calls after moving logic from providers to router
* Added independent "IndentFlags" property to inner debugger class
* Fixed debug logging in few places
* Removed "ICollectingOptions" and merged it with new options abstract "ITelegratorOptions"
* Added WebHook version of hosting class
2025-07-28 20:35:48 +04:00
Rikitav b01d576564 * Little renaming in StateKeeping namespace
* Changed "FilterAnnotation{T}" to work withou type specific sub-classes
* Changed interfaces "IUpdateRouter" and "IHandlersProvider" to match their names more correctly. Before filter validating was on providers, now its router works AS ITS SHOULD BE
2025-07-27 14:19:40 +04:00
Rikitav b86699a65e * Improved "MessageChatTypeFilter", now accepts flagged version of "ChatType" enum. "ChatTypeFlags"
* Added classes to reactive update filter annotations implementation "FilterAnnotation"
* "CollectHandlersDowmainWide" method moved as extension to IHandlersCollection and added method "CollectHandlerAssemblyWide" named respectfully
* Added "DefaultRouterExceptionHandler" to reactive implement "IRouterExceptionHandler" from function delegate
* Small bug fixes in API overview generator logic
2025-07-26 21:03:42 +04:00
Rikitav cec7c88b6a * Renamed "concurrency" parameters in handlers attributes to more relevant and intuitive "importance" parameter
* Added debug logging helper that use default Debug tracer to trace filter, providers, routers and pool execution
* Added debug logging for failing during handlers resolving, filters
* Added new "CreateEmptyBuilder" methods for TelegramBotHost class
* Addede ability to name handlers using "DisplayNameAttribute". This name is writed to descriptor's "DisplayString" property
* Fixed missing summaries inside Hosting library
2025-07-26 00:01:46 +04:00
Rikitav 33d1f6218a Добавьте файлы проекта. 2025-07-24 23:19:59 +04:00