observer.acknowledge(this, tx);
   public synchronized void acknowledge(Transaction tx) throws Throwable   {      // deals with the race condition when acknowledgment arrives before the delivery      // is returned back to the sending delivery observer      if (tx == null)      {         //TODO Why don't we set done to true if the ack is transactional???         //     http://jira.jboss.org/jira/browse/JBMESSAGING-173         done = true;      }      observer.acknowledge(this, tx);   }