Package erki.talk.clients.erki.event

Examples of erki.talk.clients.erki.event.Event


                                eventQueue.wait();
                            } catch (InterruptedException e) {
                            }
                           
                        } else {
                            Event event = eventQueue.poll();
                            Logger.info(Controller.this, "Dispatching " + event
                                    + " (" + eventQueue.size() + " event"
                                    + (eventQueue.size() == 1 ? "" : "s")
                                    + " left).");
                           
                            synchronized (eventObservers) {
                               
                                if (eventObservers
                                        .containsKey(event.getClass())
                                        && !eventObservers
                                                .get(event.getClass())
                                                .isEmpty()) {
                                   
                                    /*
                                     * This conversion to array prevents
                                     * ConcurrentModificationExceptions if one
                                     * of the events triggers the deregistration
                                     * of an observer.
                                     */
                                    EventObserver[] observers = eventObservers
                                            .get(event.getClass()).toArray(
                                                    new EventObserver[0]);
                                   
                                    for (EventObserver observer : observers) {
                                        observer.inform(event);
                                    }
                                   
                                } else {
                                    Logger.warning(Controller.this, "No one "
                                            + "observes "
                                            + event.getClass().getSimpleName()
                                            + "s!");
                                    dispatchEvent(new OutputTextEvent(
                                            "No one observes "
                                                    + event.getClass()
                                                            .getSimpleName()
                                                    + "s!", Formatter
                                                    .getWarningFormat()));
                                }
                            }
View Full Code Here

TOP

Related Classes of erki.talk.clients.erki.event.Event

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.