constructor() {
        this.cache = new Map();
    }
This is a cache provider that lives very short in memory, there is no need for persistence.
It is created when scheduling an email in the batch sending service, and is then passed to the sending service. The sending service
can optionally use a passed cache provider to reuse the email body for each batch with the same segment.