Skip to content

Commit

Permalink
Fix event bus complexity
Browse files Browse the repository at this point in the history
  • Loading branch information
rchomczyk committed Nov 14, 2024
1 parent 1601f3e commit 49f3a83
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 20 deletions.
3 changes: 0 additions & 3 deletions dew-common/src/dev/shiza/dew/event/EventBus.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,5 @@ public sealed interface EventBus permits EventBusImpl {

void subscribe(final Subscriber subscriber) throws SubscribingException;

void publish(final EventExecutor eventExecutor, final Event event, final String... targets)
throws EventPublishingException;

void publish(final Event event, final String... targets) throws EventPublishingException;
}
20 changes: 3 additions & 17 deletions dew-common/src/dev/shiza/dew/event/EventBusImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -33,30 +33,16 @@ public void subscribe(final Subscriber subscriber) {
}

@Override
public void publish(final EventExecutor eventExecutor, final Event event, final String... targets)
throws EventPublishingException {
public void publish(final Event event, final String... targets) {
final Set<Subscription> subscriptions =
subscriptionFacade.getSubscriptionsByEventType(event.getClass());
for (final Subscription subscription : subscriptions) {
notifySubscription(subscription, eventExecutor, event, targets);
}
}

@Override
public void publish(final Event event, final String... targets) {
if (eventExecutor == null) {
throw new EventPublishingException(
"Could not publish event, because of not specifying default event publisher.");
notifySubscription(subscription, event, targets);
}

publish(eventExecutor, event, targets);
}

private void notifySubscription(
final Subscription subscription,
final EventExecutor eventExecutor,
final Event event,
final String[] targets) {
final Subscription subscription, final Event event, final String[] targets) {
final Subscriber subscriber = subscription.subscriber();
if (hasSpecifiedTarget(targets) && isExcludedSubscription(subscriber, targets)) {
return;
Expand Down

0 comments on commit 49f3a83

Please sign in to comment.