code: private Message pollPrefetchQueue() {
          final Message message = this.prefetchedMessages.poll();
          if (message != null) {
              // message lastReceivedOffset should be up-to-date upon each poll - as recreateLink will depend on this
              this.lastReceivedMessage = message;
              this.sendFlow(1);
          }
  
          return message;
      }
docs: CONTRACT: message should be delivered to the caller of MessageReceiver.receive() only via Poll on prefetchqueue