private void doCombine() {
        if (!this.combined) {
            for (final K key : this.combineMap.keySet()) {
                final List<V> values2 = this.combineMap.get(key);
                if (values2.size() > 1) {
                    this.combineMap.remove(key);
                    this.mapReduce.combine(key, values2.iterator(), this.combineIteratorEmitter);
                }
            }
            this.combined = true;
        }
    }
@author Marko A. Rodriguez (http://markorodriguez.com)
spark-gremlin/src/main/java/org/apache/tinkerpop/gremlin/spark/process/computer/CombineIterator.java