Paradaux

PAR-293

0

Move @Singleton caches out of utils/ into the service layer

Pending ReleaseLowUnassignedTreasuryImprovement

Consistency cleanup following the ChestShop util/service split (PAR-282). Per CLAUDE.md, utils/ is for pure static helpers; DI'd @Singleton components with logic belong in the service layer.

Three classes in treasury/utils/ are pure @Singleton beans (no static methods, @Inject ctors), not pure utils:

  • AccountRedirectCache (@Inject AccountRedirectMapper; get/reload)
  • PersonalAccountCache (@Singleton; get/put/invalidate)
  • PluginSystemAccountCache (@Inject AccountService; getOrCreate)

Fix: move them to a services/cache/ subpackage; update the Guice TreasuryModule bindings + imports. Pure package move, behaviour unchanged, coverage-neutral. The genuinely-pure utils (Idempotency, Money, TreasuryConstants, UuidBin, GovDedupKeys, LoggingConfigurer, CallingPluginDetector) stay in utils/.

Resources

Comments

No comments yet.

Activity

  • tesks changed status to Status → Pending Release
  • ParadauxIO linked a commit — Commit 27fc9ff — Move the @Singleton account caches out of utils/ into services/cache/ (PAR-293)
  • tesks created the issue