/// <summary> /// Creates and returns a <see cref="PluginConfigurationData" /> instance containing the /// configuration data from this control. /// </summary> /// <returns>The configuration data.</returns> public PluginConfigurationData GetConfiguration() { ContentionData data = new ContentionData() { SelectedControlPanelActivities = GetControlPanelData(), SelectedContentionActivities = GetContentionActivityData() }; LocalPrintQueueInfo queue = null; PrintQueueSelectionData localQueueSelectionData = null; if (data.SelectedContentionActivities.OfType <PrintActivityData>().Any()) { PrintActivityData printData = data.SelectedContentionActivities.OfType <PrintActivityData>().Single(); queue = string.IsNullOrEmpty(printData.QueueName) ? null : new LocalPrintQueueInfo(printData.QueueName); localQueueSelectionData = (queue == null) ? null : new PrintQueueSelectionData(queue); } return(new PluginConfigurationData(data, Version) { Assets = assetSelectionControl.AssetSelectionData, Documents = documentSelectionControl.DocumentSelectionData, PrintQueues = localQueueSelectionData }); }
/// <summary> /// Initializes a new instance of the <see cref="ContentionManager"/> class. /// </summary> /// <param name="executionData"></param> public ContentionManager(PluginExecutionData executionData) { if (executionData == null) { throw new ArgumentNullException(nameof(executionData)); } _data = executionData.GetMetadata <ContentionData>(); ExecutionData = executionData; WorkflowLogger = new DeviceWorkflowLogger(executionData); }
private void ConfigureControls(ContentionData data) { //Copy Tab Controls if (data.SelectedControlPanelActivities.OfType <CopyActivityData>().Any()) { copy_checkBox.Checked = true; CopyActivityData copyData = data.SelectedControlPanelActivities.OfType <CopyActivityData>().Single(); Copies_NumericUpDown.Value = copyData.Copies; copyPageCount_NumericUpDown.Value = copyData.PageCount; } else { copy_checkBox.Checked = false; } //Scan Tab Controls if (data.SelectedControlPanelActivities.OfType <ScanActivityData>().Any()) { scan_checkBox.Checked = true; ScanActivityData scanData = data.SelectedControlPanelActivities.OfType <ScanActivityData>().Single(); switch (scanData.ScanJobType) { case ContentionScanActivityTypes.Email: emailRadioButton.Checked = true; emailAddressTextBox.Text = scanData.EmailAddress; break; case ContentionScanActivityTypes.Folder: folderRadioButton.Checked = true; folderPathTextBox.Text = scanData.FolderPath; break; case ContentionScanActivityTypes.USB: usbRadioButton.Checked = true; usbNameTextBox.Text = scanData.UsbName; break; case ContentionScanActivityTypes.JobStorage: jobStorageRadioButton.Checked = true; break; } scanPageCount_NumericUpDown.Value = scanData.PageCount; } else { scan_checkBox.Checked = false; } //Fax Tab Controls if (data.SelectedControlPanelActivities.OfType <FaxActivityData>().Any()) { faxsend_checkBox.Checked = true; FaxActivityData faxData = data.SelectedControlPanelActivities.OfType <FaxActivityData>().Single(); faxNumber_textBox.Text = faxData.FaxNumber; faxPageCount_NumericUpDown.Value = faxData.PageCount; } else { faxsend_checkBox.Checked = false; } //Print Tab Controls if (data.SelectedContentionActivities.OfType <PrintActivityData>().Any()) { print_checkBox.Checked = true; PrintActivityData printData = data.SelectedContentionActivities.OfType <PrintActivityData>().Single(); queueNameTextBox.Text = printData.QueueName; } else { print_checkBox.Checked = false; } }