code: private void scheduleNextAction(String queryId) {
  		log(TAG, "handler is scheduling next action");
  		QueryInfo qd = queries.get(queryId);
  		if (qd == null) {
  			return;
  		}
  		if (qd.getRemainingSignals() > 0) {
  			Message msg = handler.obtainMessage(SearchMessages.SEND_SIGNAL,
  					queryId);
  			handler.sendMessageDelayed(msg, qd.getSignalPeriod());
  			qd.decrementRemainingSignals();
  		} else {
  			Message message = handler.obtainMessage(SearchMessages.SEARCH_STOPPED,qd);
  			handler.sendMessageDelayed(message, qd.getSignalPeriod());
  		}
  	}
docs: Schedules the next operation of the handler, according to the query
  settings. It uses and updates the information contained in the QueryInfo
  object. If the search operation is not terminated a message is sent to
  the handler with the proper delay; otherwise the query is eliminated and
  the event is notified to the {@link SearchPerformer}.
  
  @param queryId