private void TaskResultGetOrCreateCallback2(IAsyncResult ar) { TransportClassTaskResult oTransportClassTaskResult = ar.AsyncState as TransportClassTaskResult; try { TaskResultData oTaskResultData; bool bCreate; ErrorTypes eError = oTransportClassTaskResult.m_oTaskResult.GetOrCreateEnd(ar, out oTaskResultData, out bCreate); if (ErrorTypes.NoError == eError) { if (bCreate) { InputCommand cmd = oTransportClassTaskResult.m_oInputCommand; Storage oStorage = new Storage(); TransportClassStorage oTransportClassStorage = new TransportClassStorage(oTransportClassTaskResult, oTransportClassTaskResult.m_oInputCommand, oStorage, null, null); oStorage.CreateDirectoryBegin(cmd.id + "/media", CreateDirectoryCallback, oTransportClassStorage); } else { TaskResultData oTaskResultDataTemp = new TaskResultData(); oTaskResultDataTemp.eStatus = FileStatus.Ok; oTaskResultDataTemp.nStatusInfo = (int)ErrorTypes.NoError; TaskResultGetProcess(oTaskResultDataTemp, false, oTransportClassTaskResult.m_oInputCommand, oTransportClassTaskResult); } } else WriteOutputCommand(oTransportClassTaskResult, new OutputCommand(eError)); } catch { WriteOutputCommand(oTransportClassTaskResult, new OutputCommand(ErrorTypes.Unknown)); } }
private void TaskResultAddRandomKeyAsyncCallback(IAsyncResult ar) { TransportClassTaskResult oTransportClassTaskResult = ar.AsyncState as TransportClassTaskResult; try { TaskResultData oTaskResultData; ErrorTypes eError = oTransportClassTaskResult.m_oTaskResult.AddRandomKeyEnd(ar, out oTaskResultData); if (ErrorTypes.NoError == eError) { InputCommand cmd = oTransportClassTaskResult.m_oInputCommand; string sFilename; if (c_sSaveTypeCompleteAll == cmd.savetype) sFilename = "Editor.bin"; else sFilename = "Editor1.bin"; try { if (FileFormats.AVS_OFFICESTUDIO_FILE_CROSSPLATFORM_PDF == cmd.outputformat && !string.IsNullOrEmpty(cmd.data) && 0 != (cmd.data.Length % 4)) _log.ErrorFormat("Print error Request.Headers:{0}", oTransportClassTaskResult.m_oHttpContext.Request.Headers.ToString()); } catch { } byte[] aBuffer = Encoding.ASCII.GetBytes(cmd.data); MemoryStream oMemoryStream = new MemoryStream(aBuffer); Storage oStorage = new Storage(); TransportClassStorage oTransportClassStorage = new TransportClassStorage(oTransportClassTaskResult, cmd, oStorage, oMemoryStream, oTaskResultData.sKey); oStorage.WriteFileBegin(Path.Combine(oTaskResultData.sKey, sFilename), oMemoryStream, StorageWriteFileAsyncCallback, oTransportClassStorage); } else WriteOutputCommand(oTransportClassTaskResult, new OutputCommand(eError)); } catch { WriteOutputCommand(oTransportClassTaskResult, new OutputCommand(ErrorTypes.Unknown)); } }