Implement a MessageHandler which handles Deposit event Messages
The implementation should be added the skeleton DepositMessageHandler
A deposit needs to be sent to an ExternalSystem, and
information must be stored about a deposit for later display to users. Persistence should be done using
a DepositPersistence instance. For the purpose of this
task, we do not require an implementation of DepositPersistence
, just adding the required methods to the interface
would suffice.
- Messages are delivered with at-least-once delivery guarantee.
- The
ExternalSystem
is not idempotent, it is a critical need to ensure that a deposit is never sent twice. - If you wish to make use of a Transactional Persistence Layer, please make it clear what assumptions are made