protected void assertEventHandlerClass(Class<?> eventHandlerClass, RegisteredSubscription registeredSubscription) { assertTrue("Not correct type: " + registeredSubscription.getEventSubscriberClass(), eventHandlerClass.isAssignableFrom(registeredSubscription.getEventSubscriberClass())); }
protected RegisteredSubscription getRegisteredSubscription(String subscriberId) { return getRegisteredSubscriptions().stream().filter(rs -> rs.getSubscriberId().equals(subscriberId)) .findFirst().orElseThrow(() -> new RuntimeException("cannot find subscription: " + subscriberId)); }
aggregateStore.subscribe(subscriberId, aggregatesAndEvents, subscriberOptions, de -> swimlaneBasedDispatcher.dispatch(de, eventDispatcher::dispatch)).get(20, TimeUnit.SECONDS); subscriptionsRegistry.add(new RegisteredSubscription(subscriberId, aggregatesAndEvents, eventHandlerBean.getClass())); } catch (InterruptedException | TimeoutException | ExecutionException e) { throw new EventuateSubscriptionFailedException(subscriberId, e);
protected void assertSubscribedToAggregates(RegisteredSubscription registeredSubscription, String... aggregateTypes) { assertEquals(asSet(aggregateTypes), registeredSubscription.getAggregatesAndEvents().keySet()); }
aggregateStore.subscribe(subscriberId, aggregatesAndEvents, subscriberOptions, de -> swimlaneBasedDispatcher.dispatch(de, eventDispatcher::dispatch)).get(20, TimeUnit.SECONDS); subscriptionsRegistry.add(new RegisteredSubscription(subscriberId, aggregatesAndEvents, beanClass)); } catch (InterruptedException | TimeoutException | ExecutionException e) { throw new EventuateSubscriptionFailedException(subscriberId, e);
protected void assertSubscribedToAggregateEvents(RegisteredSubscription registeredSubscription, String aggregateType, String... eventTypes) { assertEquals(asSet(eventTypes), registeredSubscription.getAggregatesAndEvents().get(aggregateType)); }