code: public <X> DataSource<X> fromParallelCollection(SplittableIterator<X> iterator, TypeInformation<X> type) {
  		return fromParallelCollection(iterator, type, Utils.getCallLocationName());
  	}
docs: Creates a new data set that contains elements in the iterator. The iterator is splittable, allowing the
  framework to create a parallel data source that returns the elements in the iterator.
  
  <p>Because the iterator will remain unmodified until the actual execution happens, the type of data
  returned by the iterator must be given explicitly in the form of the type information.
  This method is useful for cases where the type is generic. In that case, the type class
  (as given in {@link #fromParallelCollection(SplittableIterator, Class)} does not supply all type information.
  
  @param iterator The iterator that produces the elements of the data set.
  @param type The TypeInformation for the produced data set.
  @return A DataSet representing the elements in the iterator.
  
  @see #fromParallelCollection(SplittableIterator, Class)