code: @Override
      public void ack(Object msgId)
      {
          KestrelSourceId sourceId = (KestrelSourceId) msgId;
          KestrelClientInfo info = this.clientInfoList.get(sourceId.getIndex());
  
          //if the transaction didn't exist, it just returns false. so this code works
          //even if client gets blacklisted, disconnects, and kestrel puts the item
          //back on the queue
          try
          {
              if (info.getClient() != null)
              {
                  Set<Long> xids = Sets.newHashSet(sourceId.getId());
                  info.getClient().confirm(this.queueName, xids);
              }
          }
          catch (TException e)
          {
              blacklist(info, e);
          }
      }
docs: {@inheritDoc}