/** Post event to the non-stub ancestor. */ /*package*/ void postToNonStubAncestor(StubEvent event) { Component target = event.getTarget(); for (; target != null && (target instanceof Native || target instanceof StubComponent); target = target.getParent()) ; if (target != null) Events.postEvent(new StubEvent(event, target)); } }
public StubEvent(StubEvent evt, Component target) { this(evt.getName(), target, evt._cmd, evt._uuid, evt._id, evt._data); }
public void service(Event event, Scope scope) throws Exception { final StubEvent stubevt = event instanceof StubEvent ? (StubEvent) event : null; final String uuid = stubevt != null ? stubevt.getUuid() : null; if (uuid == null || uuid.equals(getUuid())) { super.service(event, scope); } else if (_evtmap != null) { for (Object[] evtinf : _evtmap) { if (uuid.equals(evtinf[0])) { //matched ((EventListenerMap) evtinf[1]).service(event, scope, this, stubevt.getCommand()); break; //done } } postToNonStubAncestor(stubevt); } }
/** Converts an AU request to a stub event. */ public static final StubEvent getStubEvent(AuRequest request) { final Component target = request.getComponent(); final Map<String, Object> data = request.getData(); final String uuid = request.getUuid(); return new StubEvent("onStub", target, request.getCommand(), uuid, getId(target, uuid), data); }
public void service(AuRequest request, boolean everError) { Events.postEvent(StubEvent.getStubEvent(request)); }
public void service(Event event, Scope scope) throws Exception { if (event instanceof StubEvent) { EventListenerMap map = ((ComponentCtrl) this).getEventListenerMap(); if (map != null) { map.service(event, scope, this, ((StubEvent) event).getCommand()); } else postToNonStubAncestor((StubEvent) event); } else { super.service(event, scope); } }