예제 #1
0
  /** @param event */
  public void pub(EventBase event) {

    String eventID = event.getEventID();

    for (int i = 0; i < listEventSubscribed.size(); i++) {

      Vector dataSubscriber = (Vector) listEventSubscribed.get(i);

      if (((String) dataSubscriber.get(1)).compareTo(eventID) == 0) {

        if ((event.getLocalHostID() != "") && (dataSubscriber.size() == 3)) {

          if (event.getLocalHostID() == ((String) dataSubscriber.get(2))) {
            // NOTIFICA AI SUBSCRIBER : EVENTO LOCALE
            Vector listaSubscriber = (Vector) dataSubscriber.get(0);

            for (int j = 0; j < listaSubscriber.size(); j++) {
              ((ISubscriberListener) listaSubscriber.get(j)).notify(event);
            }
          }
        } else {
          // NOTIFICA AI SUBSCRIBER
          Vector listaSubscriber = (Vector) dataSubscriber.get(0);

          for (int j = 0; j < listaSubscriber.size(); j++) {
            ((ISubscriberListener) listaSubscriber.get(j)).notify(event);
          }
        }
      }
    }
  }
예제 #2
0
파일: Event.java 프로젝트: babizhu/game
 /**
  * 运行此枚举所对应的包的run方法
  *
  * @param user
  * @param buf
  * @throws IOException
  */
 public void run(UserInfo user, ByteBuffer buf) throws IOException {
   eventInstance.run(user, buf);
 }