package com.github.wicketoracle.html.panel;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author Andrew Hall
*
*/
public final class DynamicResult
{
private List<String> resultHeaders = new ArrayList<String>();
private List<List<String>> results = new ArrayList<List<String>>();
/**
* Constructor
*/
public DynamicResult( final ResultSet pResultSet ) throws SQLException
{
final ResultSetMetaData resultSetMetaData = pResultSet.getMetaData();
final int numCols = resultSetMetaData.getColumnCount();
for ( int i = 1 ; i <= numCols ; i++ )
{
final String columnName = resultSetMetaData.getColumnName( i );
resultHeaders.add( columnName );
}
while ( pResultSet.next() )
{
List<String> resultRow = new ArrayList<String>();
for ( int j = 0 ; j < numCols ; j++ )
{
resultRow.add( pResultSet.getString( j + 1 ) );
}
results.add( resultRow );
}
}
public List<String> getResultHeaders()
{
return resultHeaders;
}
public List<List<String>> getResults()
{
return results;
}
}