package pluginbase.messages.messaging;
import org.jetbrains.annotations.NotNull;
import java.util.HashSet;
import java.util.Set;
class MessagerDebugBroadcast {
final Set<MessagerDebugSubscription> subscriptions = new HashSet<>();
boolean acceptSubscription(@NotNull MessagerDebugSubscription subscription) {
if (!subscriptions.contains(subscription)) {
subscriptions.add(subscription);
return true;
} else {
return false;
}
}
boolean cancelSubscription(@NotNull MessagerDebugSubscription subscription) {
if (subscriptions.contains(subscription)) {
subscriptions.remove(subscription);
return true;
} else {
return false;
}
}
boolean hasSubscription(@NotNull MessagerDebugSubscription subscription) {
return subscriptions.contains(subscription);
}
void messageRecord(@NotNull String message) {
for (MessagerDebugSubscription subscription : subscriptions) {
subscription.messageRecord(message);
}
}
}