private void CreateThreadForSync(object translationJob) { try { string result = ""; cc.ExecuteQuery(); TranslationItemInfo itemInfo = ((ClientResult <TranslationItemInfo>)translationJob).Value; result += "DateTime.Now \n"; result += "Input: " + itemInfo.InputFile + "\n"; result += "Output: " + itemInfo.OutputFile + "\n";; result += "ErrorMessage: " + itemInfo.ErrorMessage + "\n"; result += "TranslationId: " + itemInfo.TranslationId + "\n"; result += "JobStatus....\n"; result += "Succeeded: " + itemInfo.Succeeded + "\n"; result += "Failed: " + itemInfo.Failed + "\n"; result += "Canceled: " + itemInfo.Canceled + "\n"; result += "InProgress: " + itemInfo.InProgress + "\n"; result += "NotStarted: " + itemInfo.NotStarted + "\n"; result += DateTime.Now + "\n"; result += "Done"; DispatcherOperation dop = Dispatcher.BeginInvoke(new Action <string>(PrintResult), result); } catch (Exception e) { DispatcherOperation dop = Dispatcher.BeginInvoke(new Action <string>(PrintResult), e.ToString()); } }
/// <summary> /// submit a sync job to translate a file /// </summary> /// <param name="culture">target langauge</param> /// <param name="input">full URL of input file on SharePoint</param> /// <param name="output">full URL of output file on SharePoint</param> static void AddSyncFile(string culture, string input, string output) { SyncTranslator job = createSyncTranslationJob(culture); Console.WriteLine("Adding files"); Console.WriteLine("Input: " + input); Console.WriteLine("Output: " + output); TranslationItemInfo itemInfo = job.Translate(input, output); Console.WriteLine("Targetlang: {0}", job.TargetLanguage.Name); Console.WriteLine("OutputSaveBehavior: {0}", job.OutputSaveBehavior.ToString()); PrintItemInfo(itemInfo); }
/// <summary> /// submit a sync job to translate stream /// the input file will be converted to stream and send to translation /// </summary> /// <param name="culture">target langauge</param> /// <param name="input">input file location (not on SharePoint)</param> /// <param name="output">output file location (not on SharePoint)</param> /// <param name="fileFormat">file extension of the input file</param> static void AddSyncStream(string culture, string input, string output, string fileFormat) { SyncTranslator job = createSyncTranslationJob(culture); FileStream inputStream = new FileStream(input, FileMode.Open); FileStream outputStream = new FileStream(output, FileMode.Create); TranslationItemInfo itemInfo = job.Translate(inputStream, outputStream, fileFormat); Console.WriteLine("Targetlang: {0}", job.TargetLanguage.Name); Console.WriteLine("OutputSaveBehavior: {0}", job.OutputSaveBehavior.ToString()); PrintItemInfo(itemInfo); inputStream.Close(); outputStream.Flush(); outputStream.Close(); }
static void PrintItemInfo(TranslationItemInfo itemInfo) { Console.WriteLine("Input: " + itemInfo.InputFile); Console.WriteLine("Output: " + itemInfo.OutputFile); Console.WriteLine("StartTime: " + itemInfo.StartTime); Console.WriteLine("CompleteTime: " + itemInfo.CompleteTime); Console.WriteLine("ErrorMessage: " + itemInfo.ErrorMessage); Console.WriteLine("TranslationId: " + itemInfo.TranslationId); Console.WriteLine("JobStatus...."); Console.WriteLine("Succeeded: " + itemInfo.Succeeded); Console.WriteLine("Failed: " + itemInfo.Failed); Console.WriteLine("Canceled: " + itemInfo.Canceled); Console.WriteLine("InProgress: " + itemInfo.InProgress); Console.WriteLine("NotStarted: " + itemInfo.NotStarted); }
/// <summary> /// submit a sync job to translate array of bytes /// the input file will be converted to array of bytes and send to translation /// </summary> /// <param name="culture">target langauge</param> /// <param name="input">input file location (not on SharePoint)</param> /// <param name="output">output file location (not on SharePoint)</param> /// <param name="fileFormat">file extension of the input file</param> static void AddSyncByte(string culture, string input, string output, string fileFormat) { SyncTranslator job = createSyncTranslationJob(culture); Byte[] inputByte; Byte[] outputByte; inputByte = File.ReadAllBytes(input); outputByte = null; TranslationItemInfo itemInfo = job.Translate(inputByte, out outputByte, fileFormat); Console.WriteLine("Targetlang: {0}", job.TargetLanguage.Name); Console.WriteLine("OutputSaveBehavior: {0}", job.OutputSaveBehavior.ToString()); PrintItemInfo(itemInfo); Console.WriteLine("Writing to output file"); FileStream outputStream = File.Open(output, FileMode.Create); MemoryStream memoryStream = new MemoryStream(outputByte); memoryStream.WriteTo(outputStream); outputStream.Flush(); outputStream.Close(); }
static void PrintItemInfo(TranslationItemInfo itemInfo) { Console.WriteLine("Input: " + itemInfo.InputFile); Console.WriteLine("Output: " + itemInfo.OutputFile); Console.WriteLine("StartTime: " + itemInfo.StartTime); Console.WriteLine("CompleteTime: " + itemInfo.CompleteTime); Console.WriteLine("ErrorMessage: " + itemInfo.ErrorMessage); Console.WriteLine("TranslationId: " + itemInfo.TranslationId); Console.WriteLine("JobStatus...."); Console.WriteLine("Succeeded: " + itemInfo.Succeeded); Console.WriteLine("Failed: " + itemInfo.Failed); Console.WriteLine("Canceled: " + itemInfo.Canceled); Console.WriteLine("InProgress: " + itemInfo.InProgress); Console.WriteLine("NotStarted: " + itemInfo.NotStarted); }