Closed
Description
Why
During the ramp-up phase of the DMQ network deployment, we need to keep sending the signatures to the REST API of the leader aggregator.
What
Crate a decorator implementation of the SignaturePublisher
trait that publish on a first internal SignaturePublisher
and then to a second internal SignaturePublisher
with a custom delay.
How
- Implement a retrier decorator
SignaturePublisherRetrier
of theSignaturePublisher
trait (number of retries, delay between retries, retry policy, seeFileUploadRetryPolicy
) - Implement a delayer decorator
SignaturePublisherDelayer
of theSignaturePublisher
trait (the second publisher must be called even if the first has failed) - Implement a noop decorator
SignaturePublisherNoop
of theSignaturePublisher
trait - Update the dependency injection with:
- a delayer
SignaturePublisherDelayer
with arguments: - a
SignaturePublisherRetrier
that decorates aSignaturePublisherNoop
(will be superseded by aSignerPublisherDMQ
when available) - a
SignaturePublisherRetrier
that decorates aAggregatorHTTPClient
- a delay
- a delayer