public RssUpdateJob() { var configureMapper = IsThereAnyNewsAutomapper.ConfigureMapper(); var itanDatabaseContext = new ItanDatabaseContext(); var updateRepository = new EntityRepository(itanDatabaseContext, configureMapper); var infrastructure = new Infrastructure(); var importOpml = new ImportOpml(); this.service = new Service(updateRepository, configureMapper, null, infrastructure, importOpml); }
public static void RegisterDependencies() { var builder = new ContainerBuilder(); var assemblies = BuildManager.GetReferencedAssemblies().Cast <Assembly>().ToArray(); builder.RegisterControllers(assemblies); builder.RegisterAssemblyTypes(assemblies) .Where(t => t.Name.EndsWith("Repository")) .AsImplementedInterfaces(); builder.RegisterAssemblyTypes(assemblies) .Where(t => t.Name.EndsWith("Service")) .AsImplementedInterfaces(); builder.RegisterAssemblyTypes(assemblies) .Where(t => t.Name.EndsWith("Wrapper")) .AsImplementedInterfaces(); builder.RegisterType <ItanDatabaseContext>().InstancePerLifetimeScope(); builder.RegisterType <RssUpdateJob>().InstancePerLifetimeScope(); builder.RegisterType <HtmlStripper>().As <IHtmlStripper>(); builder.RegisterType <Infrastructure>().As <IInfrastructure>(); builder.RegisterType <ImportOpml>().As <IImportOpml>(); builder.RegisterType <WebConfigReaderWrapper>().As <IConfigurationReaderWrapper>(); builder.RegisterType <UserAuthentication>().As <IUserAuthentication>(); builder.RegisterType <RssSubscriptionHandler>().Keyed <ISubscriptionHandler>(StreamType.Rss); builder.RegisterType <PersonSubscriptionHandler>().Keyed <ISubscriptionHandler>(StreamType.Person); builder.RegisterType <ChannelUpdatesSubscriptionHandler>().Keyed <ISubscriptionHandler>(StreamType.ChannelUpdate); builder.RegisterType <ChannelCreationsSubscriptionHandler>().Keyed <ISubscriptionHandler>(StreamType.ChannelCreation); builder.RegisterType <ExceptionSubscriptionHandler>().Keyed <ISubscriptionHandler>(StreamType.Exception); builder.RegisterType <SubscriptionHandlerFactory>().As <ISubscriptionHandlerFactory>(); builder.Register(c => IsThereAnyNewsAutomapper.ConfigureMapper()).As <IMapper>() .InstancePerLifetimeScope(); var container = builder.Build(); DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); }
public RssUpdateJob() { var itanDatabaseContext = new ItanDatabaseContext(); var updateRepository = new UpdateRepository(itanDatabaseContext); var rssEntriesRepository = new RssEntriesRepository(itanDatabaseContext); var rssChannelsRepository = new RssChannelsRepository(itanDatabaseContext); var rssChannelUpdateRepository = new RssChannelUpdateRepository(itanDatabaseContext); var configureMapper = IsThereAnyNewsAutomapper.ConfigureMapper(); ISyndicationFeedAdapter syndicationFeedAdapter = new SyndicationFeedAdapter(configureMapper); this.updateService = new UpdateService( updateRepository, rssEntriesRepository, rssChannelsRepository, rssChannelUpdateRepository, syndicationFeedAdapter); }
public static void RegisterDependencies() { var builder = new ContainerBuilder(); builder.RegisterControllers(Assembly.GetCallingAssembly()); builder.RegisterAssemblyTypes(AppDomain.CurrentDomain.GetAssemblies()) .Where(t => t.Name.EndsWith("Repository")) .AsImplementedInterfaces(); builder.RegisterAssemblyTypes(AppDomain.CurrentDomain.GetAssemblies()) .Where(t => t.Name.EndsWith("Service")) .AsImplementedInterfaces(); builder.RegisterType <ItanDatabaseContext>().InstancePerLifetimeScope(); builder.RegisterType <RssUpdateJob>().InstancePerLifetimeScope(); builder.RegisterType <RssReadersJob>().InstancePerLifetimeScope(); builder.RegisterType <WebConfigReader>().As <IConfigurationReader>(); builder.RegisterType <OpmlReader>().As <IOpmlReader>(); builder.RegisterType <SessionProvider>().As <ISessionProvider>(); builder.RegisterType <UserAuthentication>().As <IUserAuthentication>(); builder.RegisterType <RssSubscriptionHandler>().Keyed <ISubscriptionHandler>(StreamType.Rss); builder.RegisterType <PersonSubscriptionHandler>().Keyed <ISubscriptionHandler>(StreamType.Person); builder.RegisterType <SubscriptionHandlerFactory>().As <ISubscriptionHandlerFactory>(); builder.Register(c => IsThereAnyNewsAutomapper.ConfigureMapper()).As <IMapper>() .InstancePerLifetimeScope(); var container = builder.Build(); DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); }