code: @Override
      public Iterator iterate()
      {
          EntityMetadata m = getEntityMetadata();
          Client client = persistenceDelegeator.getClient(m);
          return new ResultIterator((MongoDBClient) client, m,
                  createMongoQuery(m, getKunderaQuery().getFilterClauseQueue()), getOrderByClause(m),
                  getKeys(m, getKunderaQuery().getResult()), persistenceDelegeator,
                  getFetchSize() != null ? getFetchSize() : this.maxResult);
      }
docs: /*
  (non-Javadoc)
  
  @see com.impetus.kundera.query.QueryImpl#iterate()