List of usage examples for org.apache.wicket.event IEvent dontBroadcastDeeper
void dontBroadcastDeeper();
From source file:org.onexus.website.api.events.EventPanel.java
License:Apache License
@Override public void onEvent(IEvent<?> event) { if (event.getPayload() instanceof AbstractEvent) { AjaxRequestTarget target = RequestCycle.get().find(AjaxRequestTarget.class); if (target != null) { Class<?> currentEventClass = event.getPayload().getClass(); for (Class<?> eventClass : registeredEvents) { if (eventClass.isAssignableFrom(currentEventClass)) { onRegisteredEvent(target, (AbstractEvent) event.getPayload()); event.dontBroadcastDeeper(); return; }/*from ww w . ja v a 2 s .c o m*/ } } } }
From source file:org.wicketstuff.event.annotation.AnnotationEventSink.java
License:Apache License
private void onEvent(final Set<Method> onEventMethods, final Object sink, final Object payload, final IEvent<?> event) { try {//from w w w . j av a 2 s . c o m for (Method method : onEventMethods) { if (canCallListenerInterface(sink, method)) { OnEvent onEvent = method.getAnnotation(OnEvent.class); if (isPayloadApplicableToHandler(onEvent, payload)) { Object result = method.invoke(sink, payload); if (result instanceof Visit<?>) { Visit<?> visit = (Visit<?>) result; if (visit.isDontGoDeeper()) { event.dontBroadcastDeeper(); } else if (visit.isStopped()) { event.stop(); break; } } else if (onEvent.stop()) { event.stop(); break; } } } } } catch (InvocationTargetException e) { if (e.getCause() instanceof ReplaceHandlerException) { throw ((ReplaceHandlerException) e.getCause()); } else { throw new IllegalStateException("Failed to invoke @OnEvent method", e); } } catch (IllegalAccessException e) { throw new IllegalStateException("Failed to invoke @OnEvent method", e); } }