/// <summary> /// onStop method, when services stop /// </summary> protected override void OnStop() { server.CloseServer(); // Update the service state to Start Pending. ServiceStatus serviceStatus = new ServiceStatus(); serviceStatus.dwCurrentState = ServiceState.SERVICE_START_PENDING; serviceStatus.dwWaitHint = 100000; SetServiceStatus(this.ServiceHandle, ref serviceStatus); IS_eventLogger.WriteEntry("In OnStop"); // Update the service state to Running. serviceStatus.dwCurrentState = ServiceState.SERVICE_RUNNING; SetServiceStatus(this.ServiceHandle, ref serviceStatus); }
/// <summary> /// onStart method, when service start, initializes the server and starts the listening to directiries. /// </summary> /// <param name="args"></param> protected override void OnStart(string[] args) { // Update the service state to Start Pending. ServiceStatus serviceStatus = new ServiceStatus(); serviceStatus.dwCurrentState = ServiceState.SERVICE_START_PENDING; serviceStatus.dwWaitHint = 100000; SetServiceStatus(this.ServiceHandle, ref serviceStatus); IS_eventLogger.WriteEntry("In Onstart"); // Update the service state to Running. serviceStatus.dwCurrentState = ServiceState.SERVICE_RUNNING; SetServiceStatus(this.ServiceHandle, ref serviceStatus); //initializing our Logger. logger = new LoggingService(); //"listening" to the logger's messaging logger.MessageRecieved += NewLogMessage; server = new ImageServer(logger); }
/* operation triggered by message is writing it to the event log */ private void NewLogMessage(object sender, Logging.Modal.MessageRecievedEventArgs e) { EventLogEntryType stat; switch (e.Status) { case MessageTypeEnum.INFO: stat = EventLogEntryType.Information; break; case MessageTypeEnum.WARNING: stat = EventLogEntryType.Warning; break; case MessageTypeEnum.FAIL: stat = EventLogEntryType.FailureAudit; break; default: stat = EventLogEntryType.Information; break; } IS_eventLogger.WriteEntry(e.Message, stat); }