public void empty() {
   m_socket = null;
   m_input.empty();
   m_input = null;
   m_output.empty();
   m_output = null;
 }
 public void dump(PrintStream ps) {
   ps.print(
       "\txmlexchanger("
           + (isRunning() ? "running" : "stopped")
           + ") : "
           + "count("
           + m_porters.size()
           + "),"
           + "iqs("
           + m_input.getSize()
           + "),"
           + "oqs("
           + m_output.getSize()
           + ")\r\n");
   for (int i = 0; i < m_porters.size(); i++) {
     CMPPXMLPorter porter = (CMPPXMLPorter) m_porters.elementAt(i);
     porter.dump(ps);
   }
 }
  public void distribute() {
    CMPPDeliver deliver = (CMPPDeliver) m_output.pop();
    if (deliver != null) {
      for (int i = 0; i < m_porters.size(); i++) {
        CMPPXMLPorter porter = (CMPPXMLPorter) m_porters.elementAt(i);
        porter.m_output.push(deliver);
      }

      deliver.empty();
      deliver = null;
    }
  }
 public void checkTimeout() {
   m_input.checkTimeout();
   m_output.checkTimeout();
 }