code: public Position get(Position pos, Map<K, Event<V>> map) {
          ArrayList<Event<K>> list = new ArrayList<Event<K>>(1000);
          Position nextPos = get(pos, list);
          
          for(Event<K> evt : list) {
              K key = evt.getValue();
              if(key != null) {
                  try {
                      V value = get(key);
                      map.put(key, new SimpleEvent<V>(value, evt.getClock()));
                  } catch(Exception e) {
                      logger.warn(e.getMessage());
                  }
              }
          }
          
          return nextPos;
      }
docs: Gets a number of value events starting from a give position in the Retention.
  The number of events is determined internally by the Retention and it is
  up to the batch size.
  
  @param pos - the retention position from where events will be read
  @param map - the result map (keys to value events) to fill in
  @return the next position from where new events will be read.