Closed FokusHuk closed 3 weeks ago
/*
processors = {
CommandProccessor,
TrustedChatMessageProcessor,
UnknownChatMessageProcessor
}
TrustedChatMessageProcessor: IProcessor
{
List<IProcessor> processors
DailyActivityHandler
MonthlyActivityHandler
...
}
UnknownChatMessageProcessor : IProcessor
CommandProccessor : IProcessor
*/
/*
CommandHandler
.SetHandler(TrustedChatMessageHandler
.SetChildHandler(DailyActivityHandler)
.SetChildHandler(SomeActivityHandler
.SetHandler(AnotherHandler1)
.SetHandler(AnotherHandler2))
.SetChildHandler(MonthlyActivityHandler)
.SetHandler(UnknownChatMessageHandler)
*/
//gptHandler.Execute(message);
/*
abstract class Handler
{
Handler Handler;
List<Handler> ChildHandlers;
SetHandler(Handler handler)
{
Handler = Handler;
return Handler;
}
SetChildHandler(Handler childHandler)
{
ChildHandler = succesor;
return Handler;
}
abstract Execute(message)
{
if()
{
...
ChildHandler.Execute(message);
} esle if(Handler != null)
{
Handler.Execute(message);
}
}
}
*/
Overview
Класс выглядит просто ужасно. Точнее его пару методов. Метод ProcessTrustedChatAsync содежит нормальную такую макаронину для обработки активности, рандомного ответа в чат. Сейчас туда еще добавится код. Нужно хотябы по функциям растащить это что-ли.
DoDs