public void Initialize(PluginEnvironment environment) { _activityData = new PrintQueueManagementActivityData(); _documentSelectionData = new DocumentSelectionData(); LoadDocuments(); }
public void Initialize(PluginConfigurationData configuration, PluginEnvironment environment) { _activityData = configuration?.GetMetadata <PrintQueueManagementActivityData>(); _documentSelectionData = configuration?.Documents; DynamicLocalPrintQueueDefinition definition = configuration?.PrintQueues.SelectedPrintQueues.First() as DynamicLocalPrintQueueDefinition; IPrinterInfo printDevice = ConfigurationServices.AssetInventory.GetAsset(definition.AssetId) as IPrinterInfo; _printDriver = ConfigurationServices.AssetInventory.AsInternal().GetPrintDrivers().First(n => n.PrintDriverId == definition.PrintDriverId); _localPrintQueueInfo = new DynamicLocalPrintQueueInfo(printDevice, _printDriver, definition.PrinterPort, definition.PrintDriverConfiguration); LoadDocuments(); LoadUi(); }
public PluginExecutionResult Execute(PluginExecutionData executionData) { _activityData = executionData?.GetMetadata <PrintQueueManagementActivityData>(); _documentCollection = executionData?.Documents; _localPrintQueueInfo = executionData?.PrintQueues.First() as DynamicLocalPrintQueueInfo; _taskCounter = 0; foreach (var pqmTask in _activityData.PrintQueueTasks) { activityStatus_dataGridView.DataSource = null; switch (pqmTask.Operation) { case PrintQueueOperation.Install: { pqmTask.Status = InstallPrintQueue(executionData); } break; case PrintQueueOperation.Upgrade: { UpgradePrintQueue(pqmTask, executionData.Environment.PluginSettings); } break; case PrintQueueOperation.Uninstall: { pqmTask.Status = UninstallPrintQueue(); } break; case PrintQueueOperation.Print: { pqmTask.Status = PrintDocument(pqmTask.TargetObject.ToString()); } break; case PrintQueueOperation.Cancel: { pqmTask.Status = CancelDocument(pqmTask.TargetObject.ToString(), pqmTask.Delay); } break; case PrintQueueOperation.Configure: { ConfigureQueueForm(pqmTask); } break; } activityStatus_dataGridView.Visible = false; activityStatus_dataGridView.DataSource = _activityData.PrintQueueTasks; activityStatus_dataGridView.Visible = true; _taskCounter++; } return(_activityData.PrintQueueTasks.All(x => x.Status == Status.Passed) ? new PluginExecutionResult(PluginResult.Passed) : new PluginExecutionResult(PluginResult.Failed)); }