コード例 #1
0
        /// <summary/>
        /// <exclude/>
        /// <devdoc>
        /// The windows service pause event.
        /// </devdoc>
        protected override void OnPause()
        {
            try
            {
                if (this.queueListener.StopListener())
                {
                    this.eventLogger.AddMessage(Header, SR.ServicePausedSuccess(this.ApplicationName));
                    LoggingDistributorEvent.Fire(this.eventLogger.GetMessage(null), false);
                    this.eventLogger.WriteToLog(null, Severity.Information);
                }
                else
                {
                    this.eventLogger.AddMessage(Header, SR.ServicePauseWarning(this.ApplicationName));

                    this.eventLogger.WriteToLog(null, Severity.Warning);
                }
            }
            catch (Exception e)
            {
                this.eventLogger.AddMessage(Header, SR.ServicePauseError(this.ApplicationName));

                this.eventLogger.WriteToLog(e, Severity.Error);
                this.Status = ServiceStatus.Shutdown;
            }
            catch
            {
                this.status = ServiceStatus.Shutdown;
            }
        }
コード例 #2
0
        /// <summary/>
        /// <exclude/>
        /// <devdoc>
        /// The windows service start event.
        /// </devdoc>
        protected override void OnStart(string[] args)
        {
            try
            {
                SanityCheck sanityCheck = new SanityCheck(this);
                sanityCheck.StartCheckTimer();

                if (this.Status == ServiceStatus.OK)
                {
                    StartMsmqListener();

                    this.eventLogger.AddMessage(Header, SR.ServiceStartComplete(this.ApplicationName));

                    LoggingDistributorEvent.Fire(this.eventLogger.GetMessage(null), true);
                    this.eventLogger.WriteToLog(null, Severity.Information);
                }
            }
            catch (Exception e)
            {
                this.eventLogger.AddMessage(Header, SR.ServiceStartError(this.ApplicationName));

                this.eventLogger.WriteToLog(e, Severity.Error);
                this.Status = ServiceStatus.Shutdown;
            }
            catch
            {
                this.Status = ServiceStatus.Shutdown;
            }
        }
コード例 #3
0
        private void StopMsmqListener()
        {
            if (this.queueListener.StopListener())
            {
                this.eventLogger.AddMessage(Header, SR.ServiceStopComplete(this.ApplicationName));

                LoggingDistributorEvent.Fire(this.eventLogger.GetMessage(null), false);
                this.eventLogger.WriteToLog(null, Severity.Information);
            }
            else
            {
                this.eventLogger.AddMessage(Header, SR.ServiceStopWarning(this.ApplicationName));

                this.eventLogger.WriteToLog(null, Severity.Warning);
            }
        }
コード例 #4
0
        /// <summary/>
        /// <exclude/>
        /// <devdoc>
        /// The windows service resume event.
        /// </devdoc>
        protected override void OnContinue()
        {
            try
            {
                this.queueListener.StartListener();
                this.eventLogger.AddMessage(Header, SR.ServiceResumeComplete(this.ApplicationName));

                LoggingDistributorEvent.Fire(this.eventLogger.GetMessage(null), true);
                this.eventLogger.WriteToLog(null, Severity.Information);
            }
            catch (Exception e)
            {
                this.eventLogger.AddMessage(Header, SR.ServiceResumeError(this.ApplicationName));

                this.eventLogger.WriteToLog(e, Severity.Error);
                this.Status = ServiceStatus.Shutdown;
            }
            catch
            {
                this.status = ServiceStatus.Shutdown;
            }
        }
コード例 #5
0
 private void FireLoggingDistributorEvent()
 {
     LoggingDistributorEvent.Fire(testMessage, true);
 }