code: @Override
  	public boolean hasNext() {
  		if (next == null) {
  			try {
  				next = readNextFromStream();
  			} catch (Exception e) {
  				throw new RuntimeException("Failed to receive next element: " + e.getMessage(), e);
  			}
  		}
  
  		return next != null;
  	}
docs: Returns true if the DataStream has more elements.
  (Note: blocks if there will be more elements, but they are not available yet.)
  @return true if the DataStream has more elements