// we use scheduleWithFixedDelay to prevent queue-up of tasks when
// polling takes longer than the specified frequency, e.g. when the
// polled database or network is slow or returns large amounts of
// data.
PollingReceiverWorker pollingReceiverWorker = this.createWork();
ScheduledFuture schedule = connector.getScheduler().scheduleWithFixedDelay(
new PollingReceiverWorkerSchedule(pollingReceiverWorker), DEFAULT_STARTUP_DELAY,
this.getFrequency(), this.getTimeUnit());
schedules.put(schedule, pollingReceiverWorker);
if (logger.isDebugEnabled())