Files
eveo/Eve-O-Preview/ApplicationBase/IApplicationController.cs
2016-05-29 13:18:46 +03:00

26 lines
691 B
C#

namespace EveOPreview
{
/// <summary>
/// Application controller
/// </summary>
public interface IApplicationController
{
IApplicationController RegisterView<TView, TPresenter>()
where TPresenter : class, TView
where TView : IView;
IApplicationController RegisterInstance<T>(T instance);
IApplicationController RegisterService<TService, TImplementation>()
where TImplementation : class, TService;
void Run<TPresenter>()
where TPresenter : class, IPresenter;
void Run<TPresenter, TArgument>(TArgument args)
where TPresenter : class, IPresenter<TArgument>;
TService Create<TService>()
where TService : class;
}
}