/// <summary> /// Merge data WikiFileInfo to WikiData /// </summary> /// <param name="wfi">WikiFileInfo</param> internal void MergeWFI(WikiFileInfo wfi, WikiFile.WikiFileParse wfp = null) { if (wfi == null) { return; } this.FileType = wfi.FileType; this.FileExt = wfi.FileExt; this.FileName = wfi.FileName; this.FilePath = wfi.FilePath; this.NameSpace = wfi.NameSpace; this.IsFileNew = false; this.NsParsed = ((wfp == null) ? this.NsParsed : wfp); }
/// <summary> /// Merge data WikiFile.WikiFileParse to WikiData /// </summary> /// <param name="wfp">internal WikiFile.WikiFileParse</param> /// <param name="path">root path</param> internal void MergeWFT(WikiFile.WikiFileParse wfp, string path) { if (wfp == null) { return; } this.FileType = wfp.FolderType; if (string.IsNullOrEmpty(wfp.SearchPatern)) { this.FileExt = __getFileExt(wfp.FolderType); this.FileName = string.Format( "{0}_{1}{2}", DokuUtil.WikiFileTypeToString(wfp.FolderType), WikiFile.wikiDefaultEmptyNS, ".", this.FileExt ); } else { this.FileName = wfp.SearchPatern; this.FileExt = Path.GetExtension(this.FileName); if (string.IsNullOrEmpty(this.FileExt)) { this.FileExt = __getFileExt(wfp.FolderType); this.FileName = string.Concat( this.FileName, ".", this.FileExt ); } } this.NameSpace = wfp.NameSpacePatern; this.FilePath = Path.Combine(path, DokuUtil.WikiFileTypeToString(wfp.FolderType)); if (wfp.UriPart.Count > 0) { wfp.UriPart.ForEach(o => { this.FilePath = Path.Combine(this.FilePath, o); }); } this.FilePath = Path.Combine( this.FilePath, this.FileName ); this.FileName = Path.GetFileNameWithoutExtension(this.FileName); this.IsFileNew = true; }