feat: multi synced player scores
All checks were successful
Linux arm64 / Build (push) Successful in 31s
All checks were successful
Linux arm64 / Build (push) Successful in 31s
This commit is contained in:
27
app/src/main/java/common/ConsumerSignal.java
Normal file
27
app/src/main/java/common/ConsumerSignal.java
Normal file
@@ -0,0 +1,27 @@
|
||||
package common;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class ConsumerSignal<T> {
|
||||
private final Set<Consumer<T>> listeners;
|
||||
|
||||
public ConsumerSignal() {
|
||||
this.listeners = new HashSet<>();
|
||||
}
|
||||
|
||||
public void connect(Consumer<T> listener) {
|
||||
this.listeners.add(listener);
|
||||
}
|
||||
|
||||
public void clear() {
|
||||
this.listeners.clear();
|
||||
}
|
||||
|
||||
public void emit(T arg) {
|
||||
for (Consumer<T> listener : this.listeners) {
|
||||
listener.accept(arg);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user