Пример #1
0
        protected override void Application_Start()
        {
            base.Application_Start();
            AppSettings = MefHttpApplication.ApplicationContainer.GetExportedValue <IApplicationSettingsService>();

            AreaRegistration.RegisterAllAreas();
            RegisterRoutes(RouteTable.Routes, AppSettings.HideHomePage);

            var databaseSchemaManager = MefHttpApplication.ApplicationContainer.GetExportedValue <IDatabaseSchemaManagerService>();
            var searchService         = MefHttpApplication.ApplicationContainer.GetExportedValue <TicketSearchService>();
            var ticketService         = MefHttpApplication.ApplicationContainer.GetExportedValue <ITicketService>();

            databaseSchemaManager.EnsureSchemaVersion();

            searchService.InitializeSearch(ticketService);

            var securityService = MefHttpApplication.ApplicationContainer.GetExportedValue <ISecurityService>();

            //timer is initialized by the service, but we have to hold a reference to it here or it will be garbage collected
            //  in SQL Security Environments, this will just return null; there is no timer
            SecurityRefreshTimer = securityService.InitializeSecurityCacheRefreshTimer();

            DerelictAttachmentsTimer = new System.Timers.Timer();
            int derelictInterval = 300000;

            DerelictAttachmentsTimer.Elapsed  += new System.Timers.ElapsedEventHandler(DerelictAttachmentsTimer_Elapsed);
            DerelictAttachmentsTimer.Interval  = derelictInterval;
            DerelictAttachmentsTimer.AutoReset = true;
            DerelictAttachmentsTimer.Start();

            if (AppSettings.EmailNotificationsEnabled())
            {
                EmaiNotificationsTimer = new System.Timers.Timer();

                int emailInterval = AppSettings.EmailDeliveryTimerIntervalMinutes * 60000;

                EmaiNotificationsTimer.Elapsed  += new System.Timers.ElapsedEventHandler(EmaiNotificationsTimer_Elapsed);
                EmaiNotificationsTimer.Interval  = emailInterval;
                EmaiNotificationsTimer.AutoReset = true;
                EmaiNotificationsTimer.Start();
            }
        }
Пример #2
0
        protected override void Application_Start()
        {
            
            base.Application_Start();
            AppSettings = MefHttpApplication.ApplicationContainer.GetExportedValue<IApplicationSettingsService>();

            AreaRegistration.RegisterAllAreas();
            RegisterRoutes(RouteTable.Routes, AppSettings.HideHomePage);

            var databaseSchemaManager = MefHttpApplication.ApplicationContainer.GetExportedValue<IDatabaseSchemaManagerService>();
            var searchService = MefHttpApplication.ApplicationContainer.GetExportedValue<TicketSearchService>();
            var ticketService = MefHttpApplication.ApplicationContainer.GetExportedValue<ITicketService>();
            
            databaseSchemaManager.EnsureSchemaVersion();

            searchService.InitializeSearch(ticketService);

            var securityService = MefHttpApplication.ApplicationContainer.GetExportedValue<ISecurityService>();

            //timer is initialized by the service, but we have to hold a reference to it here or it will be garbage collected
            //  in SQL Security Environments, this will just return null; there is no timer
            SecurityRefreshTimer = securityService.InitializeSecurityCacheRefreshTimer();

            DerelictAttachmentsTimer = new System.Timers.Timer();
            int derelictInterval = 300000;
            DerelictAttachmentsTimer.Elapsed += new System.Timers.ElapsedEventHandler(DerelictAttachmentsTimer_Elapsed);
            DerelictAttachmentsTimer.Interval = derelictInterval;
            DerelictAttachmentsTimer.AutoReset = true;
            DerelictAttachmentsTimer.Start();

            if (AppSettings.EmailNotificationsEnabled())
            {

                EmaiNotificationsTimer = new System.Timers.Timer();

                int emailInterval = AppSettings.EmailDeliveryTimerIntervalMinutes * 60000;

                EmaiNotificationsTimer.Elapsed += new System.Timers.ElapsedEventHandler(EmaiNotificationsTimer_Elapsed);
                EmaiNotificationsTimer.Interval = emailInterval;
                EmaiNotificationsTimer.AutoReset = true;
                EmaiNotificationsTimer.Start();

            }
        }