/**
   * Returns data set after complete.
   *
   * @param event event
   */
  protected void fireDataSetReturned(PluginEvent event) {

    synchronized (myListeners) {
      Iterator itr = myListeners.iterator();
      while (itr.hasNext()) {
        try {
          if (myThreaded) {
            PluginListener current = (PluginListener) itr.next();
            ThreadedPluginListener thread = new ThreadedPluginListener(current, event);
            thread.start();
          } else {
            PluginListener current = (PluginListener) itr.next();
            current.dataSetReturned(event);
          }
        } catch (Exception e) {
          e.printStackTrace();
        }
      }
    }
  }