WebhookNotifierObserver.java
package com.designpatterns.behavioral.observer.applied;
import java.util.ArrayList;
import java.util.List;
public class WebhookNotifierObserver implements TransactionStatusObserver {
private final List<String> deliveredWebhooks = new ArrayList<>();
@Override
public void onStatusChanged(String transactionId, TransactionStatus newStatus) {
deliveredWebhooks.add(transactionId + ":" + newStatus);
}
public List<String> deliveredWebhooks() {
return List.copyOf(deliveredWebhooks);
}
}