起動・前提準備
初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
File Score Service に関するサービス層・業務処理を担当します。
com.example.rankingpluginFileScoreService.javaclassクラス直前の Javadoc は見つかりませんでした。ソースとメソッド構成から責務を補完しています。
File Score Service に関するサービス層・業務処理を担当します。(root) パッケージの 小〜中規模クラスで、責務境界の要点を確認する起点です。全面展開版では、他の重点クラスと同じ章立てで読めるように補強しています。
FileScoreServicesaveScoresaveAllsaveMonthlyScoresupdateHighScorescleanupCurrentFilecleanupHighFilegetAllScores初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
外部から呼ばれる公開メソッドや、対象プレイヤー・対象データ・対象ワールドを引き当てる経路です。
メモリ状態と保存状態を揃え、結果を次の呼び出しや画面表示へ繋ぐ部分です。
停止時やフロー終端で残る実体・タスク・キャッシュを戻す出口です。
このクラスが前提状態を揃え、外部から利用可能な形まで立ち上がる流れです。新規依存の追加や起動失敗の調査はまずここから追います。
イベント受理、判定、状態更新、通知までの主経路です。体感不具合や想定外の分岐はこの流れのどこで止まるかを見ると切り分けやすいです。
結果を保持し、必要なら永続化し、最後に掃除まで行う出口です。画面更新だけ合って保存が壊れるケースや残骸が残るケースの確認に向きます。
SQL 文字列から抽出できた主要テーブルです。スキーマ変更時の確認用です。
| Signature | 説明 | 主要呼び出し |
|---|---|---|
public FileScoreService(Plugin plugin) | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 | getDataFolder → exists → getResource → saveResource → mkdirs → createNewFile |
| Name | Visibility | Kind | 説明 |
|---|---|---|---|
| FileScoreService | public | コンストラクタ | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 |
| cleanupCurrentFile | private | メソッド | scores. |
| cleanupHighFile | private | メソッド | highscores. |
| saveScore | public | メソッド | 状態を永続化または更新し、最新状態へ反映します。 |
| getAllScores | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getTopScores | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| flush | public | メソッド | flush の主要処理を担当します。 |
| saveAll | public | メソッド | 状態を永続化または更新し、最新状態へ反映します。 |
| saveMonthlyScores | public | メソッド | 状態を永続化または更新し、最新状態へ反映します。 |
| updateHighScores | public | メソッド | 状態を永続化または更新し、最新状態へ反映します。 |
| clearCurrentScores | public | メソッド | clearCurrentScores の主要処理を担当します。 |
| getMonthlyTop | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getHighTop | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| sortedList | private | メソッド | MCID っぽくないキーを除外したうえでソートして limit 件返す |
| getScore | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getRank | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
public FileScoreService(Plugin plugin)依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。
Plugin pluginなし
private void cleanupCurrentFile()scores.
なし
private void cleanupHighFile()highscores.
なし
public void saveScore(String player, long score)状態を永続化または更新し、最新状態へ反映します。
String playerlong scoreなし
public Map<String, Long> getAllScores()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public List<Entry<String, Long>> getTopScores(int limit)必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
int limitなし
public synchronized void flush()flush の主要処理を担当します。
なし
public void saveAll()状態を永続化または更新し、最新状態へ反映します。
なし
public void saveMonthlyScores(YearMonth month, Map<String, Long> scores)状態を永続化または更新し、最新状態へ反映します。
YearMonth monthMap<String, Long> scoresなし
public void updateHighScores(Map<String, Long> scores)状態を永続化または更新し、最新状態へ反映します。
Map<String, Long> scoresなし
public void clearCurrentScores()clearCurrentScores の主要処理を担当します。
なし
public List<Entry<String, Long>> getMonthlyTop(YearMonth month, int limit)必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
YearMonth monthint limitなし
public List<Entry<String, Long>> getHighTop(int limit)必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
int limitなし
private List<Entry<String, Long>> sortedList(Map<String, Long> map, int limit)MCID っぽくないキーを除外したうえでソートして limit 件返す
Map<String, Long> mapint limitなし
public long getScore(String player)必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
String playerなし
public int getRank(String player)必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
String playerなし
FileScoreService → getDataFolder → exists → getResource → saveResource → mkdirssaveMonthlyScores → getDataFolder → format → getYear → getMonthValue → forEachsaveScore → isLikelyMcid → getOrDefault → publishScoreChanged → save → getLoggerupdateHighScores → sortedList → getKey → isLikelyMcid → getLong → getValuecleanupCurrentFile → getConfigurationSection → getKeys → isLikelyMcid → remove → save