microsoft/teams.net
Publicmirrored fromhttps://github.com/microsoft/teams.netAvailable
core/src/Microsoft.Bot.Core.Compat/CompatMiddlewareAdapter.cs
17lines · modecode
| 1 | // Copyright (c) Microsoft Corporation. |
| 2 | // Licensed under the MIT License. |
| 3 | |
| 4 | using Microsoft.Bot.Builder; |
| 5 | using Microsoft.Bot.Core.Schema; |
| 6 | |
| 7 | namespace Microsoft.Bot.Core.Compat; |
| 8 | |
| 9 | internal sealed class CompatMiddlewareAdapter(IMiddleware bfMiddleWare) : ITurnMiddleWare |
| 10 | { |
| 11 | public Task OnTurnAsync(BotApplication botApplication, CoreActivity activity, NextTurn nextTurn, CancellationToken cancellationToken = default) |
| 12 | { |
| 13 | using TurnContext turnContext = new(new CompatBotAdapter(botApplication), activity.ToCompatActivity()); |
| 14 | return bfMiddleWare.OnTurnAsync(turnContext, (activity) |
| 15 | => nextTurn(cancellationToken), cancellationToken); |
| 16 | } |
| 17 | } |
| 18 | |