using System;
using System.Threading.Tasks;
namespace MediaBrowser.Controller.Plugins
{
///
/// 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
/// interface.
///
public interface IServerEntryPoint : IDisposable
{
///
/// Run the initialization for this module. This method is invoked at application start.
///
/// A representing the asynchronous operation.
Task RunAsync();
}
}