@Override public void forwardEvent(EventTransferObject<Object> event) { this.eventManager.forwardEvent(event); }
@Test public void testWithConnector() { EventManagerBuilder eventManagerBuilder = eventManagerBuilder(); AtomicReference<Event<Object>> eventRef = new AtomicReference<>(); EventConnector eventConnector = event -> eventRef.set(event); eventManagerBuilder.setEventConnector(eventConnector); EventManager build = eventManagerBuilder.setFactory(new Factory() { @Override public EventManager createEventManager(String name, EventConnector eventConnector, StatsCollector statsCollector) { return createEventManagerConnectorShortCut("foo", eventConnector); } }).build("foo"); build.forwardEvent(testEvent); assertSame(testEvent, eventRef.get()); }
@Override public void forwardEvent(EventTransferObject<Object> event) { this.eventManager.forwardEvent(event); }
@Override public void forwardEvent(EventTransferObject<Object> event) { this.eventManager.forwardEvent(event); }
@Test public void testWithPredicateFalse() { EventManagerBuilder eventManagerBuilder = eventManagerBuilder(); AtomicReference<Event<Object>> eventRef = new AtomicReference<>(); EventConnector eventConnector = event -> eventRef.set(event); factory = new Factory() { @Override public EventManager createEventManager(String name, EventConnector eventConnector, StatsCollector statsCollector) { if (eventConnector == EventManagerBuilder.DEFAULT_NO_EVENT_CONNECTOR) { return eventManager; } else { return createEventManagerConnectorShortCut(name, eventConnector); } } public EventManager createEventManagerWithConnector(String name, EventConnector eventConnector) { return createEventManagerConnectorShortCut("foo", eventConnector); } }; FactorySPI.setFactory(factory); eventManagerBuilder.setEventConnector(eventConnector); eventManagerBuilder.addEventConnectorPredicate(objectEvent -> false); EventManager build = eventManagerBuilder.build("foo"); build.forwardEvent(testEvent); assertNull(eventRef.get()); }
@Test public void testWithPredicateTrue() { EventManagerBuilder eventManagerBuilder = eventManagerBuilder(); AtomicReference<Event<Object>> eventRef = new AtomicReference<>(); EventConnector eventConnector = event -> eventRef.set(event); factory = new Factory() { @Override public EventManager createEventManager(String name, EventConnector eventConnector, StatsCollector statsCollector) { if (eventConnector == EventManagerBuilder.DEFAULT_NO_EVENT_CONNECTOR) { return eventManager; } else { return createEventManagerConnectorShortCut(name, eventConnector); } } public EventManager createEventManagerWithConnector(String name, EventConnector eventConnector) { return createEventManagerConnectorShortCut(name, eventConnector); } }; FactorySPI.setFactory(factory); eventManagerBuilder.setEventConnector(eventConnector); eventManagerBuilder.addEventConnectorPredicate(objectEvent -> true); EventManager build = eventManagerBuilder.build("foo"); build.forwardEvent(testEvent); assertSame(testEvent, eventRef.get()); }
@Test public void testWithPredicateTwoTrue() { EventManagerBuilder eventManagerBuilder = eventManagerBuilder(); AtomicReference<Event<Object>> eventRef = new AtomicReference<>(); EventConnector eventConnector = event -> eventRef.set(event); factory = new Factory() { @Override public EventManager createEventManager(String name, EventConnector eventConnector, StatsCollector statsCollector) { if (eventConnector == EventManagerBuilder.DEFAULT_NO_EVENT_CONNECTOR) { return eventManager; } else { return createEventManagerConnectorShortCut(name, eventConnector); } } public EventManager createEventManagerWithConnector(String name, EventConnector eventConnector) { return createEventManagerConnectorShortCut(name, eventConnector); } }; FactorySPI.setFactory(factory); eventManagerBuilder.setEventConnector(eventConnector); eventManagerBuilder.addEventConnectorPredicate(objectEvent -> true); eventManagerBuilder.addEventConnectorPredicate(objectEvent -> true); EventManager build = eventManagerBuilder.build("foo"); build.forwardEvent(testEvent); assertSame(testEvent, eventRef.get()); }
@Test public void testWithPredicateTwoTrue1False() { EventManagerBuilder eventManagerBuilder = eventManagerBuilder(); AtomicReference<Event<Object>> eventRef = new AtomicReference<>(); EventConnector eventConnector = event -> eventRef.set(event); factory = new Factory() { @Override public EventManager createEventManager(String name, EventConnector eventConnector, StatsCollector statsCollector) { if (eventConnector == EventManagerBuilder.DEFAULT_NO_EVENT_CONNECTOR) { return eventManager; } else { return createEventManagerConnectorShortCut(name, eventConnector); } } public EventManager createEventManagerWithConnector(String name, EventConnector eventConnector) { return createEventManagerConnectorShortCut(name, eventConnector); } }; FactorySPI.setFactory(factory); eventManagerBuilder.setEventConnector(eventConnector); eventManagerBuilder.addEventConnectorPredicate(objectEvent -> true); eventManagerBuilder.addEventConnectorPredicate(objectEvent -> true); eventManagerBuilder.addEventConnectorPredicate(objectEvent -> false); EventManager build = eventManagerBuilder.build("foo"); build.forwardEvent(testEvent); assertNull(eventRef.get()); }