updatePayload method
Implement in subclasses to update the payload with the new value.
Implementation
@override
SubmitServiceEvent updatePayload(
SubmitServiceEvent originalPayload,
String newValue,
) {
final updatedPayload = originalPayload.deepCopy();
updatedPayload.updateServiceAdminNewEmail = newValue;
if (originalEmail == updatedPayload.updateServiceAdminNewEmail) {
updatedPayload.event.updateServiceAdmin.filter = serviceState.filter;
} else {
final emails = allowedEmails.keys.toList();
emails.remove(originalEmail);
emails.add(updatedPayload.updateServiceAdminNewEmail);
final bloom = BloomFilterProcessor(
size: serviceState.filter.size,
hashCount: serviceState.filter.hashCount,
)..addAll(emails);
updatedPayload.event.updateServiceAdmin.filter = BloomFilter()
..size = bloom.size
..hashCount = bloom.hashCount
..bitArray = bloom.bitArray;
}
return updatedPayload;
}