2013-07-09 03:47:09 +03:00
|
|
|
using Nancy.Bootstrapper;
|
2013-04-20 03:05:48 +03:00
|
|
|
using NzbDrone.Api;
|
2013-05-06 00:24:33 +03:00
|
|
|
using NzbDrone.Api.SignalR;
|
2013-05-11 02:53:50 +03:00
|
|
|
using NzbDrone.Common.Composition;
|
2013-07-09 03:47:09 +03:00
|
|
|
using NzbDrone.Common.EnvironmentInfo;
|
2013-04-20 03:05:48 +03:00
|
|
|
using NzbDrone.Core.Datastore;
|
|
|
|
using NzbDrone.Core.Organizer;
|
|
|
|
using NzbDrone.Core.RootFolders;
|
|
|
|
|
|
|
|
namespace NzbDrone
|
|
|
|
{
|
|
|
|
public class MainAppContainerBuilder : ContainerBuilderBase
|
|
|
|
{
|
2013-07-09 03:47:09 +03:00
|
|
|
public static IContainer BuildContainer(string[] args)
|
2013-04-20 03:05:48 +03:00
|
|
|
{
|
2013-07-09 03:47:09 +03:00
|
|
|
return new MainAppContainerBuilder(args).Container;
|
2013-04-20 03:05:48 +03:00
|
|
|
}
|
|
|
|
|
2013-07-09 03:47:09 +03:00
|
|
|
private MainAppContainerBuilder(string[] args)
|
2013-04-20 03:05:48 +03:00
|
|
|
: base("NzbDrone", "NzbDrone.Common", "NzbDrone.Core", "NzbDrone.Api")
|
|
|
|
{
|
2013-05-11 02:53:50 +03:00
|
|
|
AutoRegisterImplementations<NzbDronePersistentConnection>();
|
2013-04-20 03:05:48 +03:00
|
|
|
|
2013-05-11 02:53:50 +03:00
|
|
|
Container.Register(typeof(IBasicRepository<RootFolder>), typeof(BasicRepository<RootFolder>));
|
|
|
|
Container.Register(typeof(IBasicRepository<NamingConfig>), typeof(BasicRepository<NamingConfig>));
|
2013-04-20 03:05:48 +03:00
|
|
|
|
2013-05-11 02:53:50 +03:00
|
|
|
Container.Register<INancyBootstrapper, NancyBootstrapper>();
|
2013-04-20 03:05:48 +03:00
|
|
|
|
2013-07-09 03:47:09 +03:00
|
|
|
Container.Register(new StartupArguments(args));
|
|
|
|
}
|
2013-04-20 03:05:48 +03:00
|
|
|
}
|
|
|
|
}
|