/// <summary> /// スタートページの変換を行います /// </summary> /// <param name="kindFlags">変換を行う種類のビットフラグ</param> /// <returns>変換したデータ</returns> public string Parse(StartPageParseKind kindFlags) { if (kindFlags.HasFlag(StartPageParseKind.BoardList)) { this.BoardListParse(); } if (kindFlags.HasFlag(StartPageParseKind.FavoriteThreads)) { this.FavoriteListParse(); } if (kindFlags.HasFlag(StartPageParseKind.RecentlyThread)) { this.RecentlyListParse(); } if (kindFlags.HasFlag(StartPageParseKind.ReleaseNote)) { this.ReleaseNoteParse(); } if (kindFlags.HasFlag(StartPageParseKind.TwochDeny)) { this.TwochDenyParse(); } if (kindFlags.HasFlag(StartPageParseKind.TwochServer)) { this.TwochServerParse(); } return(this.data); }
/// <summary> /// このインスタンスにおいて使用する機能を取得します /// </summary> /// <returns>使用する機能を収めたビットフラグ</returns> public StartPageParseKind CheckUseFunction() { StartPageParseKind spp = 0; if (this.data.IndexOf("<denylist/>", StringComparison.CurrentCultureIgnoreCase) != -1) { spp = StartPageParseKind.TwochDeny | spp; } if (this.data.IndexOf("<server/>", StringComparison.CurrentCultureIgnoreCase) != -1) { spp = StartPageParseKind.TwochServer | spp; } if (this.data.IndexOf("<release/>", StringComparison.CurrentCultureIgnoreCase) != -1) { spp = StartPageParseKind.ReleaseNote | spp; } if (this.data.IndexOf("<boardlist/>", StringComparison.CurrentCultureIgnoreCase) != -1) { spp = StartPageParseKind.BoardList | spp; } if (this.data.IndexOf("<favoritethread/>", StringComparison.CurrentCultureIgnoreCase) != -1) { spp = StartPageParseKind.FavoriteThreads | spp; } if (this.data.IndexOf("<recentlythread/>", StringComparison.CurrentCultureIgnoreCase) != -1) { spp = StartPageParseKind.RecentlyThread | spp; } return(spp); }