public static async Task RunAsync([TimerTrigger("0 0 * * * *")] TimerInfo myTimer, TraceWriter log)
        {
            log.Info($"C# Timer trigger function executed at: {DateTime.Now}");

            var dependencyResolver = Ioc.Bootstrap(new FlightTrendConfig());
            var cheapestReturnFlightsRepository = dependencyResolver.GetService <ICheapestReturnFlightsRepository>();
            var cheapestFlightFinder            = dependencyResolver.GetService <ICheapestFlightFinder>();
            var clock = dependencyResolver.GetService <IClock>();

            var archives = await cheapestReturnFlightsRepository.Get();

            var newReturnFlights = await FetchUpdatedReturnFlights(cheapestFlightFinder, clock);

            await cheapestReturnFlightsRepository.Save(archives.Concat(newReturnFlights));
        }
Exemple #2
0
        protected void Application_Start()
        {
            var config = new FlightTrendConfig().LoadFromWebConfig();

            _dependencyResolver = Ioc.Bootstrap(config);

            ControllerBuilder.Current.SetControllerFactory(new FlightTrendControllerFactory(_dependencyResolver));

            AreaRegistration.RegisterAllAreas();
            GlobalConfiguration.Configure(WebApiConfig.Register);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            GlobalConfiguration.Configuration.Services.Replace(typeof(IHttpControllerActivator), new FlightTrendApiControllerFactory(_dependencyResolver));
        }