Skip to content

Implement delayer and retrier decorators of the signature publisher in signer #2461

Closed
@jpraynaud

Description

@jpraynaud

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 the SignaturePublisher trait (number of retries, delay between retries, retry policy, see FileUploadRetryPolicy)
  • Implement a delayer decorator SignaturePublisherDelayer of the SignaturePublisher trait (the second publisher must be called even if the first has failed)
  • Implement a noop decorator SignaturePublisherNoop of the SignaturePublisher trait
  • Update the dependency injection with:
    • a delayer SignaturePublisherDelayer with arguments:
    • a SignaturePublisherRetrier that decorates a SignaturePublisherNoop (will be superseded by a SignerPublisherDMQ when available)
    • a SignaturePublisherRetrier that decorates a AggregatorHTTPClient
    • a delay

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions