2019-01-13 15:01:16 -05:00
|
|
|
using System;
|
2019-01-27 09:40:37 -05:00
|
|
|
using System.Threading.Tasks;
|
2018-12-27 18:27:57 -05:00
|
|
|
|
|
|
|
namespace MediaBrowser.Controller.Plugins
|
|
|
|
{
|
|
|
|
/// <summary>
|
2020-02-10 04:26:28 -05: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 applying the
|
|
|
|
/// <see cref="IRunBeforeStartup"/> interface.
|
2018-12-27 18:27:57 -05:00
|
|
|
/// </summary>
|
|
|
|
public interface IServerEntryPoint : IDisposable
|
|
|
|
{
|
|
|
|
/// <summary>
|
2020-02-10 04:26:28 -05:00
|
|
|
/// Run the initialization for this module. This method is invoked at application start.
|
2018-12-27 18:27:57 -05:00
|
|
|
/// </summary>
|
2019-01-27 09:40:37 -05:00
|
|
|
Task RunAsync();
|
2018-12-27 18:27:57 -05:00
|
|
|
}
|
|
|
|
|
2020-02-10 04:26:28 -05:00
|
|
|
/// <summary>
|
|
|
|
/// Indicates that a <see cref="IServerEntryPoint"/> should be invoked as a pre-startup task.
|
|
|
|
/// </summary>
|
2018-12-27 18:27:57 -05:00
|
|
|
public interface IRunBeforeStartup
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|