サービス生成と配線
DataSource 生成から始まり、各サービスや manager を順番に new して相互参照を結線します。依存関係の全体像はここにあります。
Ranking Plugin を担当するclassです。
com.example.rankingpluginRankingPlugin.javaclassクラス直前の Javadoc は見つかりませんでした。ソースとメソッド構成から責務を補完しています。
プラグイン全体の composition root です。サービス生成、コマンド bind、イベント登録、Web 起動、停止順序、config 再読込まで全部ここを通ります。
onEnablebindreloadAllConfigonDisableDataSource 生成から始まり、各サービスや manager を順番に new して相互参照を結線します。依存関係の全体像はここにあります。
巨大プラグインの機能を Bukkit へ表出する接点です。新規機能を繋ぐときはまずここへ差し込みます。
config 差分取り込み、Discord 再初期化、各サービスへの反映がここにあります。フル再起動せず直したい項目を扱う場所です。
未保存データ flush、Web 停止、ミニゲーム終了、Discord 切断、DataSource close の順序をここが管理します。
onEnableRankingPlugin は「全部を直接知っている」ため、起動順序がそのまま依存順序です。依存注入ミスはまずここで見つかります。
reloadAllConfig設定変更をその場で反映したいときの経路です。何が hot reload 対象で何が再起動必須かを分けて見る基準になります。
onDisable停止時は reverse dependency を意識した順で止めています。あとから追加したサービスもこの順序へ合わせるのが安全です。
| Signature | 説明 | 主要呼び出し |
|---|---|---|
| 明示コンストラクタは抽出されませんでした。 | ||
| Name | Visibility | Kind | 説明 |
|---|---|---|---|
| loadMySqlConfig | private | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| onEnable | public | メソッド | DB への問い合わせまたは更新処理を担当します。 |
| getAnimaTree | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getEventRuntime | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getDifficultyService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getDiscordLinkService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getScoreManager | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getDiscordXpService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getDiscordNotifier | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getPlayerReportService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getPlayerCardService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getMonthlyRankingRewardService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getScoreService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getLevelServantService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getCurrencyService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getOnlineStatusService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getJackpotService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getMiniJackpotService | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| getServerId | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
| bind | private | メソッド | bind の主要処理を担当します。 |
| reloadAllConfig | public | メソッド | config.yml を読み直す。 |
| onDisable | public | メソッド | onDisable の主要処理を担当します。 |
private MySQLConfig loadMySqlConfig()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public void onEnable()DB への問い合わせまたは更新処理を担当します。
なし
public com.example.rankingplugin.bingo.AnimaTreeEngine getAnimaTree()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public EventRuntimeService getEventRuntime()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public ServerDifficultyService getDifficultyService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public com.example.rankingplugin.discordlink.DiscordLinkService getDiscordLinkService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public ScoreManager getScoreManager()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public com.example.rankingplugin.discordxp.DiscordXpService getDiscordXpService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public com.example.rankingplugin.discord.DiscordNotifier getDiscordNotifier()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public PlayerReportService getPlayerReportService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public PlayerCardService getPlayerCardService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public MonthlyRankingRewardService getMonthlyRankingRewardService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public ScoreService getScoreService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public LevelServantService getLevelServantService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public CurrencyService getCurrencyService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public OnlineStatusService getOnlineStatusService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public JackpotService getJackpotService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public MiniJackpotService getMiniJackpotService()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
public String getServerId()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
private void bind(String name, CommandExecutor exec)bind の主要処理を担当します。
String nameCommandExecutor execなし
public synchronized void reloadAllConfig(CommandSender requester)config.yml を読み直す。
CommandSender requesterなし
public void onDisable()onDisable の主要処理を担当します。
なし
onDisable → shutdownRegisteredSessions → restoreSuppressedMovementForOnline → stop → shutdown → getConfigonEnable → restoreSuppressedMovementForOnline → restoreStaleJudgeVisualSnapshots → getServer → getScheduler → runTaskloadMySqlConfig → getConfig → getString → trim → getInt → isEmptyreloadAllConfig → currentTimeMillis → sendMessage → mergeDefaults → reloadConfig → shutdownGracefullybind → getCommand → getLogger → severe → setExecutor