code: private void load(QueueItem item) throws Exception {
          int bulkLoad = store.getBulkLoad();
          bulkLoad = Math.min(getItemQueue().size(), bulkLoad);
          if (bulkLoad == 1) {
              item.setData(store.load(item.getItemId()));
          } else if (bulkLoad > 1) {
              long maxIdToLoad = -1;
              Iterator<QueueItem> iterator = getItemQueue().iterator();
              Set<Long> keySet = createHashSet(bulkLoad);
  
              keySet.add(item.getItemId());
              while (keySet.size() < bulkLoad && iterator.hasNext()) {
                  long itemId = iterator.next().getItemId();
                  if (itemId > lastIdLoaded) {
                      keySet.add(itemId);
                      maxIdToLoad = Math.max(itemId, maxIdToLoad);
                  }
              }
  
              Map<Long, Data> values = store.loadAll(keySet);
              lastIdLoaded = maxIdToLoad;
              dataMap.putAll(values);
              item.setData(getDataFromMap(item.getItemId()));
          }
      }
docs: Tries to load the data for the given queue item. The method will also try to load data in batches if configured to do so.
  <p>
  If the {@link QueueStoreWrapper#getBulkLoad()} is 1, it will just load data for the given item. Otherwise, it will
  load items for other items in the queue too by collecting the IDs of the items in the queue sequentially up to
  {@link QueueStoreWrapper#getBulkLoad()} items. While doing so, it will make sure that the ID of the initially requested
  item is also being loaded even though it is not amongst the first {@link QueueStoreWrapper#getBulkLoad()} items in the
  queue.
  
  @param item the item for which the data is being set
  @throws Exception if there is any exception. For example, when calling methods on the queue store