microsoft/teams.net

Public

mirrored fromhttps://github.com/microsoft/teams.netAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
dev

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

Libraries/Microsoft.Teams.Extensions/Microsoft.Teams.Extensions.Hosting/Microsoft.Teams.Apps.Extensions/TeamsPluginService.cs

58lines · modecode

1// Copyright (c) Microsoft Corporation. All rights reserved.
2// Licensed under the MIT License.
3
4using Microsoft.Extensions.Hosting;
5using Microsoft.Extensions.Logging;
6using Microsoft.Teams.Apps.Plugins;
7
8namespace Microsoft.Teams.Apps.Extensions;
9
10public class TeamsPluginService<TPlugin> : IHostedLifecycleService where TPlugin : IPlugin
11{
12 protected TPlugin _plugin;
13 protected ILogger<TPlugin> _logger;
14
15 public TeamsPluginService(TPlugin plugin, ILogger<TPlugin> logger)
16 {
17 _plugin = plugin;
18 _logger = logger;
19 }
20
21 public Task StartingAsync(CancellationToken cancellationToken)
22 {
23 _logger.LogDebug("Starting");
24 return Task.CompletedTask;
25 }
26
27 public Task StartAsync(CancellationToken cancellationToken)
28 {
29 _logger.LogDebug("Start");
30 return Task.CompletedTask;
31 }
32
33 public Task StartedAsync(CancellationToken cancellationToken)
34 {
35 _logger.LogDebug("Started");
36 return Task.CompletedTask;
37 }
38
39 public Task StoppingAsync(CancellationToken cancellationToken)
40 {
41 _logger.LogDebug("Stopping");
42 var src = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken);
43 src.Cancel();
44 return Task.CompletedTask;
45 }
46
47 public Task StopAsync(CancellationToken cancellationToken)
48 {
49 _logger.LogDebug("Stop");
50 return Task.CompletedTask;
51 }
52
53 public Task StoppedAsync(CancellationToken cancellationToken)
54 {
55 _logger.LogDebug("Stopped");
56 return Task.CompletedTask;
57 }
58}