/** * <b>Callback</b>. Called by superclass when event may be handled. * * <p><b>Do not use <code>PassUp</code> in this method as the event is passed up by default by the * superclass after this method returns !</b> * * @return boolean Defaults to true. If false, event will not be passed up the stack. */ public boolean handleUpEvent(Event evt) { switch (evt.getType()) { case Event.CONNECT_OK: // sent by someone else, but WE are responsible for sending this ! case Event.DISCONNECT_OK: // dito (e.g. sent by UDP layer) return false; case Event.SET_LOCAL_ADDRESS: local_addr = (Address) evt.getArg(); if (print_local_addr) { System.out.println( "\n-------------------------------------------------------\n" + "2.1GMS: address is " + local_addr + "\n-------------------------------------------------------"); } return true; // pass up case Event.SUSPECT: try { event_queue.add(evt); } catch (Exception e) { } return true; // pass up case Event.MERGE: try { event_queue.add(evt); } catch (Exception e) { } return false; // don't pass up case Event.FLUSH_OK: synchronized (flush_mutex) { flush_rsp = (FlushRsp) evt.getArg(); flush_mutex.notify(); } return false; // don't pass up case Event.REBROADCAST_MSGS_OK: synchronized (rebroadcast_mutex) { rebroadcast_mutex.notify(); } return false; // don't pass up } return impl.handleUpEvent(evt); }