|
13 | 13 | using TelegramMediaRelayBot.TelegramBot.Sessions; |
14 | 14 | using TelegramMediaRelayBot.Database; |
15 | 15 | using TelegramMediaRelayBot.Database.Interfaces; |
| 16 | +using Microsoft.Extensions.DependencyInjection; |
16 | 17 |
|
17 | 18 | namespace TelegramMediaRelayBot.TelegramBot.Handlers.ICallBackQuery; |
18 | 19 |
|
19 | 20 |
|
20 | 21 | public class SendToAllContactsSessionCommand : IBotCallbackQueryHandlers |
21 | 22 | { |
22 | | - private readonly TGBot _tgBot; |
| 23 | + private readonly IServiceProvider _serviceProvider; |
23 | 24 | private readonly IContactGetter _contactGetterRepository; |
24 | 25 | private readonly IUserGetter _userGetter; |
25 | 26 |
|
26 | 27 | public SendToAllContactsSessionCommand( |
27 | | - TGBot tgBot, |
| 28 | + IServiceProvider serviceProvider, |
28 | 29 | IContactGetter contactGetterRepository, |
29 | 30 | IUserGetter userGetter) |
30 | 31 | { |
31 | | - _tgBot = tgBot; |
| 32 | + _serviceProvider = serviceProvider; |
32 | 33 | _contactGetterRepository = contactGetterRepository; |
33 | 34 | _userGetter = userGetter; |
34 | 35 | } |
@@ -65,22 +66,23 @@ await botClient.EditMessageText( |
65 | 66 | cancellationToken: ct |
66 | 67 | ); |
67 | 68 |
|
68 | | - _ = _tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, targetUserIds, caption: session.Caption ?? ""); |
| 69 | + var tgBot = _serviceProvider.GetRequiredService<TGBot>(); |
| 70 | + _ = tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, targetUserIds, caption: session.Caption ?? ""); |
69 | 71 | } |
70 | 72 | } |
71 | 73 |
|
72 | 74 | public class SendToDefaultGroupsSessionCommand : IBotCallbackQueryHandlers |
73 | 75 | { |
74 | | - private readonly TGBot _tgBot; |
| 76 | + private readonly IServiceProvider _serviceProvider; |
75 | 77 | private readonly IUserGetter _userGetter; |
76 | 78 | private readonly IGroupGetter _groupGetter; |
77 | 79 |
|
78 | 80 | public SendToDefaultGroupsSessionCommand( |
79 | | - TGBot tgBot, |
| 81 | + IServiceProvider serviceProvider, |
80 | 82 | IUserGetter userGetter, |
81 | 83 | IGroupGetter groupGetter) |
82 | 84 | { |
83 | | - _tgBot = tgBot; |
| 85 | + _serviceProvider = serviceProvider; |
84 | 86 | _userGetter = userGetter; |
85 | 87 | _groupGetter = groupGetter; |
86 | 88 | } |
@@ -120,17 +122,18 @@ await botClient.EditMessageText( |
120 | 122 | cancellationToken: ct |
121 | 123 | ); |
122 | 124 |
|
123 | | - _ = _tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, targetUserIds, caption: session.Caption ?? ""); |
| 125 | + var tgBot = _serviceProvider.GetRequiredService<TGBot>(); |
| 126 | + _ = tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, targetUserIds, caption: session.Caption ?? ""); |
124 | 127 | } |
125 | 128 | } |
126 | 129 |
|
127 | 130 | public class SendOnlyToMeSessionCommand : IBotCallbackQueryHandlers |
128 | 131 | { |
129 | | - private readonly TGBot _tgBot; |
| 132 | + private readonly IServiceProvider _serviceProvider; |
130 | 133 |
|
131 | | - public SendOnlyToMeSessionCommand(TGBot tgBot) |
| 134 | + public SendOnlyToMeSessionCommand(IServiceProvider serviceProvider) |
132 | 135 | { |
133 | | - _tgBot = tgBot; |
| 136 | + _serviceProvider = serviceProvider; |
134 | 137 | } |
135 | 138 |
|
136 | 139 | public string Name => "send_only_to_me:"; |
@@ -159,24 +162,25 @@ await botClient.EditMessageText( |
159 | 162 | cancellationToken: ct |
160 | 163 | ); |
161 | 164 |
|
162 | | - _ = _tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, caption: session.Caption ?? ""); |
| 165 | + var tgBot = _serviceProvider.GetRequiredService<TGBot>(); |
| 166 | + _ = tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, caption: session.Caption ?? ""); |
163 | 167 | } |
164 | 168 | } |
165 | 169 |
|
166 | 170 | public class SendToSpecifiedGroupsSessionCommand : IBotCallbackQueryHandlers |
167 | 171 | { |
168 | | - private readonly TGBot _tgBot; |
| 172 | + private readonly IServiceProvider _serviceProvider; |
169 | 173 | private readonly IUserGetter _userGetter; |
170 | 174 | private readonly IGroupGetter _groupGetter; |
171 | 175 | private readonly IDefaultActionGetter _defaultActionGetter; |
172 | 176 |
|
173 | 177 | public SendToSpecifiedGroupsSessionCommand( |
174 | | - TGBot tgBot, |
| 178 | + IServiceProvider serviceProvider, |
175 | 179 | IUserGetter userGetter, |
176 | 180 | IGroupGetter groupGetter, |
177 | 181 | IDefaultActionGetter defaultActionGetter) |
178 | 182 | { |
179 | | - _tgBot = tgBot; |
| 183 | + _serviceProvider = serviceProvider; |
180 | 184 | _userGetter = userGetter; |
181 | 185 | _groupGetter = groupGetter; |
182 | 186 | _defaultActionGetter = defaultActionGetter; |
@@ -224,22 +228,23 @@ await botClient.EditMessageText( |
224 | 228 | cancellationToken: ct |
225 | 229 | ); |
226 | 230 |
|
227 | | - _ = _tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, targetUserIds, caption: session.Caption ?? ""); |
| 231 | + var tgBot = _serviceProvider.GetRequiredService<TGBot>(); |
| 232 | + _ = tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, targetUserIds, caption: session.Caption ?? ""); |
228 | 233 | } |
229 | 234 | } |
230 | 235 |
|
231 | 236 | public class SendToSpecifiedUsersSessionCommand : IBotCallbackQueryHandlers |
232 | 237 | { |
233 | | - private readonly TGBot _tgBot; |
| 238 | + private readonly IServiceProvider _serviceProvider; |
234 | 239 | private readonly IUserGetter _userGetter; |
235 | 240 | private readonly IDefaultActionGetter _defaultActionGetter; |
236 | 241 |
|
237 | 242 | public SendToSpecifiedUsersSessionCommand( |
238 | | - TGBot tgBot, |
| 243 | + IServiceProvider serviceProvider, |
239 | 244 | IUserGetter userGetter, |
240 | 245 | IDefaultActionGetter defaultActionGetter) |
241 | 246 | { |
242 | | - _tgBot = tgBot; |
| 247 | + _serviceProvider = serviceProvider; |
243 | 248 | _userGetter = userGetter; |
244 | 249 | _defaultActionGetter = defaultActionGetter; |
245 | 250 | } |
@@ -280,7 +285,8 @@ await botClient.EditMessageText( |
280 | 285 | cancellationToken: ct |
281 | 286 | ); |
282 | 287 |
|
283 | | - _ = _tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, targetUserIds, caption: session.Caption ?? ""); |
| 288 | + var tgBot = _serviceProvider.GetRequiredService<TGBot>(); |
| 289 | + _ = tgBot.HandleMediaRequest(botClient, session.Url, chatId, statusMessage, targetUserIds, caption: session.Caption ?? ""); |
284 | 290 | } |
285 | 291 | } |
286 | 292 |
|
|
0 commit comments