public void testTimeout(String target) {
   QueueConsumer consumer = queueConsumers.get(target);
   Subscription subscription = (Subscription) consumer;
   if (consumer == null) return;
   synchronized (consumer) {
     if (System.currentTimeMillis() - consumer.getLastPingTime() > subscription.getTimeout()) {
       HornetQRestLogger.LOGGER.shutdownRestSubscription(consumer.getId());
       consumer.shutdown();
       queueConsumers.remove(consumer.getId());
       serviceManager.getTimeoutTask().remove(consumer.getId());
       if (subscription.isDeleteWhenIdle()) deleteSubscriberQueue(consumer);
     }
   }
 }
 @Override
 public boolean testTimeout(String target, boolean autoShutdown) {
   QueueConsumer consumer = queueConsumers.get(target);
   Subscription subscription = (Subscription) consumer;
   if (consumer == null) return false;
   if (System.currentTimeMillis() - consumer.getLastPingTime() > subscription.getTimeout()) {
     ActiveMQRestLogger.LOGGER.shutdownRestSubscription(consumer.getId());
     if (autoShutdown) {
       shutdown(consumer);
     }
     return true;
   } else {
     return false;
   }
 }