package eu.dnetlib.dlms.jdbc;

import java.sql.SQLException;

/**
 * Abstract factory for DOLResultSet instances.
 * 
 * @author lexis
 */
public abstract class AbstractResultSetFactory {

	/**
	 * Creates a DOLResultSet that holds the columns described by the array columns and that can be manipulated by the
	 * given statement.
	 * 
	 * @param stm
	 *            the DOLStatement that will own the new instance
	 * @param columns
	 *            array of ColumnInfo. each element in the array is a description of a column that composes the newly
	 *            created DOLResultSet
	 * @return a new DOLResultSey instance that can be used by the the DOLStatement stm and that will hold info on the
	 *         column descirbed by columns.
	 * @throws SQLException
	 *             creating a DOLResultSet
	 */
	public abstract DOLResultSet createDOLResultSet(DOLStatement stm, ColumnInfo[] columns) throws SQLException;
}
