/// <summary> /// Beginining of the background worker tasks /// </summary> public void PublishData() { StartTime = DateTime.Now; Data = PrepareData(); if (File.Exists(Info.LocalFilePath) || TempImage != null || !string.IsNullOrEmpty(TempText)) { // Note: We need write text or image first if (WorkflowConfig.DestConfig.Outputs.Contains(OutputEnum.LocalDisk)) { switch (Job1) { case EDataType.Text: case EDataType.URL: WriteText(TempText); break; default: WriteImage(TempImage); break; } var ur_local = new UploadResult { Host = OutputEnum.LocalDisk.GetDescription(), LocalFilePath = Info.LocalFilePath, }; if (!WorkflowConfig.DestConfig.Outputs.Contains(OutputEnum.RemoteHost)) { ur_local.URL = ur_local.GetLocalFilePathAsUri(Info.LocalFilePath); AddUploadResult(ur_local); } } if (WorkflowConfig.DestConfig.Outputs.Contains(OutputEnum.RemoteHost)) { switch (Job1) { case EDataType.Image: UploadImage(); break; case EDataType.Text: case EDataType.URL: switch (Job2) { case JobLevel2.Translate: SetTranslationInfo( new GoogleTranslate(Engine.ConfigUI.ApiKeysConfig.GoogleApiKey).TranslateText(TranslationInfo)); SetText(TranslationInfo.Result); break; default: UploadText(); break; } break; case EDataType.File: UploadFile(); break; } } if (WorkflowConfig.DestConfig.Outputs.Contains(OutputEnum.SharedFolder)) { switch (Job1) { case EDataType.File: UploadToSharedFolder(Engine.ConfigUploaders.LocalhostSelectedFiles); break; case EDataType.Image: UploadToSharedFolder(Engine.ConfigUploaders.LocalhostSelectedImages); break; case EDataType.Text: case EDataType.URL: UploadToSharedFolder(Engine.ConfigUploaders.LocalhostSelectedText); break; } } if (WorkflowConfig.DestConfig.Outputs.Contains(OutputEnum.Email)) { SendEmail(); } if (WorkflowConfig.DestConfig.Outputs.Contains(OutputEnum.Printer)) { Print(); } if (WorkflowConfig.DestConfig.Outputs.Contains(OutputEnum.Clipboard) && WorkflowConfig.DestConfig.Outputs.Count == 1) { SetClipboardContent(); } if (UploadResults.Count > 0) { FlashIcon(); } } EndTime = DateTime.Now; }