protected void fireHPubReqCompleteEvent(RequestCompleteEvent evt) {
    Vector currentListenerList = null;

    synchronized (this) {
      currentListenerList = (Vector) listenerList.clone();
    }
    for (int i = 0; i < currentListenerList.size(); i++) {
      HPubReqCompleteListener listener = (HPubReqCompleteListener) currentListenerList.elementAt(i);
      listener.hPubReqComplete(evt);
    }
  }