jellyfin/MediaBrowser.Controller/Plugins/IServerEntryPoint.cs

27 lines
878 B
C#
Raw Normal View History

using System;
2019-01-27 07:40:37 -07:00
using System.Threading.Tasks;
2018-12-27 16:27:57 -07:00
namespace MediaBrowser.Controller.Plugins
{
/// <summary>
2020-02-10 02:26:28 -07:00
/// Represents an entry point for a module in the application. This interface is scanned for automatically and
/// provides a hook to initialize the module at application start.
/// The entry point can additionally be flagged as a pre-startup task by implementing the
2020-02-10 02:26:28 -07:00
/// <see cref="IRunBeforeStartup"/> interface.
2018-12-27 16:27:57 -07:00
/// </summary>
public interface IServerEntryPoint : IDisposable
{
/// <summary>
2020-02-10 02:26:28 -07:00
/// Run the initialization for this module. This method is invoked at application start.
2018-12-27 16:27:57 -07:00
/// </summary>
2019-01-27 07:40:37 -07:00
Task RunAsync();
2018-12-27 16:27:57 -07:00
}
2020-02-10 02:26:28 -07:00
/// <summary>
/// Indicates that a <see cref="IServerEntryPoint"/> should be invoked as a pre-startup task.
/// </summary>
2018-12-27 16:27:57 -07:00
public interface IRunBeforeStartup
{
}
}