content: package com.alimama.mdrill.jdbc;
  
  
  import java.sql.SQLException;
  import java.util.ArrayList;
  import java.util.Arrays;
  import java.util.Iterator;
  import java.util.List;
  import java.util.Properties;
  
  import org.apache.commons.logging.Log;
  import org.apache.commons.logging.LogFactory;
  
  
  public class MdrillQueryResultSet extends MdrillBaseResultSet{
  
  	  public static final Log LOG = LogFactory.getLog(MdrillQueryResultSet.class);
  	  private int fetchSize = 50;
  	  private Iterator<List<Object>> fetchedRowsItr;
  	  private SqlParser parser;
  	  Long total;
  	  public Long getTotal() {
  		return total;
  	}
  
  	public void setTotal(Long total) {
  		this.total = total;
  	}
  
  	public MdrillQueryResultSet(SqlParser parser,List<List<Object>> results,Long total) throws SQLException {
  		this.setTotal(total);
  	    this.parser = parser;
  	    this.fetchedRowsItr=results.iterator();
  	    init();
  	    row = Arrays.asList(new Object[parser.colsAliasNames.length]);
  	  }
  
  	  Properties props= new Properties();
  	  private void init() throws SQLException {
  	    try {
  	      columnNames = new ArrayList<String>();
  	      columnTypes = new ArrayList<String>();
  
  	      for(int i=0;i<parser.colsAliasNames.length;i++)
  	      {
  	    	  String aliasName=parser.colsAliasNames[i];
  	    	  String type="STRING";
  	    	  columnNames.add(aliasName);
  	    	  columnTypes.add(type);
  	      }
  
  	    } catch (Exception ex) {
  	      ex.printStackTrace();
  	      throw new SQLException("Could not create ResultSet: " + ex.getMessage(), ex);
  	    }
  	  }
  
  	  
  	  public void close() throws SQLException {
  	    
  	  }
  
  	  public boolean next() throws SQLException {
  	    if(this.fetchedRowsItr.hasNext())
  	    {
  	    	this.row=this.fetchedRowsItr.next();
  	    	return true;
  	    }
  
  	    return false;
  	  }
  
  	  
  	  public void setFetchSize(int rows) throws SQLException {
  	    fetchSize = rows;
  	  }
  
  	  
  	  public int getFetchSize() throws SQLException {
  	    return fetchSize;
  	  }
  
  	
  	public <T> T getObject(int arg0, Class<T> arg1) throws SQLException {
  		// TODO Auto-generated method stub
  		return null;
  	}
  
  	
  	public <T> T getObject(String arg0, Class<T> arg1) throws SQLException {
  		// TODO Auto-generated method stub
  		return null;
  	}
  
  	  
  }
  