|
|
@ -20,7 +20,7 @@ public class GenericEventManager {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void post(DefaultGenericEvent event,
|
|
|
|
public void post(DefaultGenericEvent event,
|
|
|
|
CompletableFuture<Boolean> future) {
|
|
|
|
CompletableFuture<GenericEvent> future) {
|
|
|
|
SubscriberRegistry subscriberRegistry = eventBus.getSubscribers();
|
|
|
|
SubscriberRegistry subscriberRegistry = eventBus.getSubscribers();
|
|
|
|
Set<Subscriber> set = subscriberRegistry.getSubscribersForTesting(event.getClass());
|
|
|
|
Set<Subscriber> set = subscriberRegistry.getSubscribersForTesting(event.getClass());
|
|
|
|
event.setListener(new WrappedListener(event.getListener(), set.size(), future));
|
|
|
|
event.setListener(new WrappedListener(event.getListener(), set.size(), future));
|
|
|
@ -33,9 +33,9 @@ public class GenericEventManager {
|
|
|
|
|
|
|
|
|
|
|
|
private int size;
|
|
|
|
private int size;
|
|
|
|
|
|
|
|
|
|
|
|
private final CompletableFuture<Boolean> future;
|
|
|
|
private final CompletableFuture<GenericEvent> future;
|
|
|
|
|
|
|
|
|
|
|
|
public WrappedListener(Listener listener, int size, CompletableFuture<Boolean> future) {
|
|
|
|
public WrappedListener(Listener listener, int size, CompletableFuture<GenericEvent> future) {
|
|
|
|
this.listener = listener;
|
|
|
|
this.listener = listener;
|
|
|
|
this.size = size;
|
|
|
|
this.size = size;
|
|
|
|
this.future = future;
|
|
|
|
this.future = future;
|
|
|
@ -47,7 +47,7 @@ public class GenericEventManager {
|
|
|
|
listener.listen(event);
|
|
|
|
listener.listen(event);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (--size == 0) {
|
|
|
|
if (--size == 0) {
|
|
|
|
future.complete(true);
|
|
|
|
future.complete(event);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|