private async void UpdateProcessingServiceSettings() { ConfigForm.IsEnabled = false; var processingServiceSettings = new ProcessingServiceSettings { OutputDirectory = OutputDirectory.Text, TrashDirectory = TrashDirectory.Text, SequanceTime = int.Parse(SequanceTime.Text) }; await Task.Run(() => _dcsRemoteControl.SetProcessingServiceSettings(processingServiceSettings)); ConfigForm.IsEnabled = true; }
private void ProcessingServiceSettingsChanged(ProcessingServiceSettings setings) { _outputDirectory = setings.OutputDirectory; _trashDirectory = setings.TrashDirectory; _sequanceTime = setings.SequanceTime; lock (_sequances) { foreach (var sequance in _sequances.Values) { sequance.UpdateSequanceSettings(_sequanceTime); } } HostLogger.Get <ProcessingService>().Info("Settings updated..."); }
private ProcessingServiceData GetInfo() { var settings = new ProcessingServiceSettings { OutputDirectory = _outputDirectory, TrashDirectory = _trashDirectory, SequanceTime = _sequanceTime }; var info = new ProcessingServiceData { Settings = settings, Status = $"{_status} (images processed: {_processedCount}, pdf files generated: {_pdfCount})" }; return(info); }
public void SetProcessingServiceSettings(ProcessingServiceSettings processingServiceSettings) { using (var remoteControlQueue = new System.Messaging.MessageQueue(_remoteControlQueueName, QueueAccessMode.SendAndReceive)) { remoteControlQueue.Formatter = new XmlMessageFormatter(new[] { typeof(RemoteControlResult), typeof(ProcessingServiceSettingsCommand) }); var processingServiceDataRequest = new ProcessingServiceSettingsCommand { Settings = processingServiceSettings }; remoteControlQueue.Send(new Message(processingServiceDataRequest)); do { var processingServiceMessage = remoteControlQueue.GetAllMessages().FirstOrDefault(); var result = processingServiceMessage?.Body as RemoteControlResult; if (result == null) { Thread.Sleep(_callDelay); continue; } if (result.Code == RemoteControlResultCode.Error) { MessageBox.Show($"Settings weren't applied...\n\"{result.Message}\"", "MSMQ communication", MessageBoxButton.OK, MessageBoxImage.Error); } if (result.Code == RemoteControlResultCode.Success) { MessageBox.Show("Settings were successfully applied!"); } remoteControlQueue.Receive(); return; } while (true); } }