1.6 KiB
1.6 KiB
Why
TickerService exposes start() and stop() to ordinary consumers even though the current Nenjim architecture makes the Hub the lifecycle owner and models active implementations separately through NenjimProcess. This leaks process control through a domain service API and promises a stop lifecycle that the canonical process contract does not support.
What Changes
- BREAKING: Remove
start()andstop()from the publicTickerServicecontract. - Keep
TickerServiceImplas both the lifecycle-free service view and the Hub-startedNenjimProcessview. - Remove the implementation's public general stop operation while retaining private rollback that stops every
PriceSourcestarted during a failed startup attempt. - Keep
PriceSourcelifecycle contracts, latest-price behavior, persistence, Registry resolution, and Hub startup wiring unchanged. - Update the canonical Ticker specification, JavaDoc, and Nenjim documentation to describe Hub-owned lifecycle.
Capabilities
Modified Capabilities
assetaz-ticker-service: Separates the ordinary latest-price service API from Hub-owned process startup and limits source stopping to failed-start cleanup.
Impact
- Changes the public
com.r35157.assetaz.services.ticker.TickerServicesource contract and the public methods ofTickerServiceImpl. - Existing callers must stop invoking Ticker lifecycle through the service view; the Hub continues to invoke startup through
NenjimProcess. - Adds no common stop/restart support, shutdown orchestration, source lifecycle changes, dependencies, or automated tests.