private bool ReadFinalList(ref NDataReader dr) { this._OutputDebug(string.Format("$$$SysConfig:ReadFinalPatchList! TsCaching.useCustomCacheOnly = {0}", TsCaching.useCustomCacheOnly)); this.m_LoadPatchListVersion = 0; this.m_LoadPatchListVersion = dr["[Header]"]["PatchVersion"]; TsPlatform.FileLog("test 1 m_LoadPatchListVersion = " + this.m_LoadPatchListVersion.ToString()); if (dr.BeginSection("[FinalList]")) { while (!dr.IsEndOfSection()) { NDataReader.Row currentRow = dr.GetCurrentRow(); if (currentRow.LineType == NDataReader.Row.TYPE.LINE_DATA) { PatchFileInfo patchFileInfo = new PatchFileInfo(); patchFileInfo.Version = ((1 >= currentRow.Values.Count) ? 0 : Convert.ToInt32(currentRow.GetColumn(1))); patchFileInfo.FileSize = ((2 >= currentRow.Values.Count) ? 0 : Convert.ToInt32(currentRow.GetColumn(2))); string text = currentRow.GetColumn(0).ToLower(); patchFileInfo.bUseCustomCache = this.CheckCustomCache(text); if (this.FilesList.ContainsKey(text)) { this._OutputDebug(string.Format("이미 등록된 파일명입니다!! {0}", text)); return(false); } this.FilesList.Add(text, patchFileInfo); } dr.NextLine(); } return(true); } return(false); }
private bool ReadFinalList2(ref NDataReader dr) { this._OutputDebug(string.Format("$$$SysConfig:ReadFinalPatchList2! TsCaching.useCustomCacheOnly = {0}", TsCaching.useCustomCacheOnly)); this.m_LoadPatchListVersion = 0; string text = string.Empty; text = dr["[Header]"]["PatchVersion"]; if (text.ToLower().Equals("final")) { this.m_LoadPatchListVersion = PatchFileInfo.VER_FINAL; } else { int.TryParse(text, out this.m_LoadPatchListVersion); } this._OutputDebug("test 3 m_LoadPatchListVersion = " + this.m_LoadPatchListVersion.ToString()); TsPlatform.FileLog("test 3 m_LoadPatchListVersion = " + this.m_LoadPatchListVersion.ToString()); bool result; try { StringBuilder stringBuilder = new StringBuilder(512); StringBuilder stringBuilder2 = new StringBuilder(512); StringBuilder stringBuilder3 = new StringBuilder(512); if (dr.BeginSection("[FinalList2]")) { while (!dr.IsEndOfSection()) { NDataReader.Row currentRow = dr.GetCurrentRow(); if (currentRow.LineType == NDataReader.Row.TYPE.LINE_DATA) { stringBuilder.Length = 0; stringBuilder.Append(currentRow.GetColumn(0)); stringBuilder = PatchFinalList.ReplaceWord(stringBuilder, false); if (stringBuilder[0] == '?') { stringBuilder.Remove(0, 1); stringBuilder3.Length = 0; stringBuilder3.Append(stringBuilder.ToString()); } else { PatchFileInfo patchFileInfo = new PatchFileInfo(currentRow); stringBuilder2.Length = 0; stringBuilder2.AppendFormat("{0}/{1}", stringBuilder3, stringBuilder); stringBuilder2 = stringBuilder2.Replace("//", "/"); string text2 = stringBuilder2.ToString(); patchFileInfo.bUseCustomCache = this.CheckCustomCache(text2); patchFileInfo.szMD5 = currentRow.GetColumn(4); if (!text2.Contains("duplicationfilelist")) { if (this.FilesList.ContainsKey(text2)) { PatchFileInfo patchFileInfo2 = new PatchFileInfo(); this.FilesList.TryGetValue(text2, out patchFileInfo2); this._OutputDebug(string.Format("Warning - duplicated patch list item : {0} / already:{1} new:{2}", text2, patchFileInfo2.nVersion, patchFileInfo.nVersion)); if (patchFileInfo2.nVersion < patchFileInfo.nVersion) { this.FilesList[text2] = patchFileInfo; } } else { this.FilesList.Add(text2, patchFileInfo); } } } } dr.NextLine(); } result = true; } else { result = false; } } catch (Exception ex) { this._OutputDebug(ex.ToString()); result = false; } return(result); }