起動・前提準備
初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
1.21.11 / 26.1+ 両対応向けの AttributeModifier 互換ヘルパ。
com.example.rankingplugin.compatcompat/AttributeModifierCompat.javaclass1.21.11 / 26.1+ 両対応向けの AttributeModifier 互換ヘルパ。 UUID ベースではなく key ベースで管理する。
1.21.11 / 26.1+ 両対応向けの AttributeModifier 互換ヘルパ。compat パッケージの 小〜中規模クラスで、責務境界の要点を確認する起点です。全面展開版では、他の重点クラスと同じ章立てで読めるように補強しています。
AttributeModifierCompatcreatereplaceremoveremoveLegacyUuidModifiersbukkitKeyadventureKeytryGetLegacyUuid初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
外部から呼ばれる公開メソッドや、対象プレイヤー・対象データ・対象ワールドを引き当てる経路です。
メモリ状態と保存状態を揃え、結果を次の呼び出しや画面表示へ繋ぐ部分です。
このクラスが前提状態を揃え、外部から利用可能な形まで立ち上がる流れです。新規依存の追加や起動失敗の調査はまずここから追います。
イベント受理、判定、状態更新、通知までの主経路です。体感不具合や想定外の分岐はこの流れのどこで止まるかを見ると切り分けやすいです。
結果を保持し、必要なら永続化し、最後に掃除まで行う出口です。画面更新だけ合って保存が壊れるケースや残骸が残るケースの確認に向きます。
| Visibility | Type | Name | 役割 |
|---|---|---|---|
| フィールドは抽出されませんでした。 | |||
| Signature | 説明 | 主要呼び出し |
|---|---|---|
private AttributeModifierCompat() | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 | 主要呼び出しなし |
| Name | Visibility | Kind | 説明 |
|---|---|---|---|
| AttributeModifierCompat | private | コンストラクタ | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 |
| create | public | メソッド | create の主要処理を担当します。 |
| create | public | メソッド | create の主要処理を担当します。 |
| replace | public | メソッド | replace の主要処理を担当します。 |
| replace | public | メソッド | replace の主要処理を担当します。 |
| replace | public | メソッド | replace の主要処理を担当します。 |
| replace | public | メソッド | replace の主要処理を担当します。 |
| remove | private | メソッド | 対象データや登録状態を削除・解除します。 |
| removeLegacyUuidModifiers | public | メソッド | 対象データや登録状態を削除・解除します。 |
| bukkitKey | private | メソッド | bukkitKey の主要処理を担当します。 |
| bukkitKey | private | メソッド | bukkitKey の主要処理を担当します。 |
| adventureKey | private | メソッド | adventureKey の主要処理を担当します。 |
| tryGetLegacyUuid | private | メソッド | tryGetLegacyUuid の主要処理を担当します。 |
| sanitizeNamespace | private | メソッド | sanitizeNamespace の主要処理を担当します。 |
| sanitizePath | private | メソッド | sanitizePath の主要処理を担当します。 |
private AttributeModifierCompat()依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。
なし
public static AttributeModifier create(Plugin plugin, String path, double amount, AttributeModifier.Operation operation)create の主要処理を担当します。
Plugin pluginString pathdouble amountAttributeModifier.Operation operationなし
public static AttributeModifier create(String namespace, String path, double amount, AttributeModifier.Operation operation)create の主要処理を担当します。
String namespaceString pathdouble amountAttributeModifier.Operation operationなし
public static void replace(Plugin plugin, AttributeInstance instance, String path, double amount, AttributeModifier.Operation operation)replace の主要処理を担当します。
Plugin pluginAttributeInstance instanceString pathdouble amountAttributeModifier.Operation operationなし
public static void replace(Plugin plugin, AttributeInstance instance, String path, double amount, AttributeModifier.Operation operation, UUID... legacyUuids)replace の主要処理を担当します。
Plugin pluginAttributeInstance instanceString pathdouble amountAttributeModifier.Operation operationUUID... legacyUuidsなし
public static void replace(String namespace, AttributeInstance instance, String path, double amount, AttributeModifier.Operation operation)replace の主要処理を担当します。
String namespaceAttributeInstance instanceString pathdouble amountAttributeModifier.Operation operationなし
public static void replace(String namespace, AttributeInstance instance, String path, double amount, AttributeModifier.Operation operation, UUID... legacyUuids)replace の主要処理を担当します。
String namespaceAttributeInstance instanceString pathdouble amountAttributeModifier.Operation operationUUID... legacyUuidsなし
private static void remove(AttributeInstance instance, NamespacedKey key, UUID... legacyUuids)対象データや登録状態を削除・解除します。
AttributeInstance instanceNamespacedKey keyUUID... legacyUuidsなし
public static void removeLegacyUuidModifiers(AttributeInstance instance, UUID... legacyUuids)対象データや登録状態を削除・解除します。
AttributeInstance instanceUUID... legacyUuidsなし
private static NamespacedKey bukkitKey(Plugin plugin, String path)bukkitKey の主要処理を担当します。
Plugin pluginString pathなし
private static NamespacedKey bukkitKey(String namespace, String path)bukkitKey の主要処理を担当します。
String namespaceString pathなし
private static Key adventureKey(NamespacedKey key)adventureKey の主要処理を担当します。
NamespacedKey keyなし
private static UUID tryGetLegacyUuid(AttributeModifier modifier)tryGetLegacyUuid の主要処理を担当します。
AttributeModifier modifierなし
private static String sanitizeNamespace(String namespace)sanitizeNamespace の主要処理を担当します。
String namespaceなし
private static String sanitizePath(String path)sanitizePath の主要処理を担当します。
String pathなし
tryGetLegacyUuid → getClass → getMethod → invoke → serialize → isBlankremoveLegacyUuidModifiers → isEmpty → getModifiers → tryGetLegacyUuid → contains → removeModifierremove → getModifier → adventureKey → removeModifier → removeLegacyUuidModifiersadventureKey → key → getNamespace → getKeyreplace → bukkitKey → remove → addModifier