Skip to content

refactor: convert QuestDetailGui to DI-managed singleton - #45

Merged
sysnote8main merged 1 commit into
mainfrom
feat/39-questdetailgui-di
Aug 25, 2026
Merged

refactor: convert QuestDetailGui to DI-managed singleton#45
sysnote8main merged 1 commit into
mainfrom
feat/39-questdetailgui-di

Conversation

@sysnote8main

Copy link
Copy Markdown
Contributor

Closes #39

  • object QuestDetailGui@Singleton クラス化し、SimpleQuest.plugin 静的参照 (6箇所) を除去
  • Plugindagger.Lazy<QuestManager> をコンストラクタ注入
  • BukkitQuestNotifier は DI コンテナから注入されたインスタンスを使用
  • 内部の CraftingGridListener を inner class 化して外部参照を解決

- object → @singleton クラス化 (plugin と Lazy<QuestManager> を注入)
- 循環依存 (QuestNotifier → BukkitQuestNotifier → QuestDetailGui → QuestManager
  → QuestService → QuestNotifier) は Lazy で解消
- BukkitQuestNotifier は注入されたインスタンスを使用
- 内部リスナーを inner class 化

Closes #39
@sysnote8main
sysnote8main merged commit c194582 into main Aug 25, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

refactor: QuestDetailGui から静的参照 (SimpleQuest.plugin) を除去し DI 化

1 participant