Mercurial > hg > monetdb-java
view src/main/java/nl/cwi/monetdb/embedded/mapping/AbstractResultTable.java @ 41:3a19ebf83af6 embedded
Arranged code in packages and starting tables integration.
author | Pedro Ferreira <pedro.ferreira@monetdbsolutions.com> |
---|---|
date | Mon, 07 Nov 2016 23:31:02 +0100 (2016-11-07) |
parents | |
children | dfea8468cd1a |
line wrap: on
line source
package nl.cwi.monetdb.embedded.mapping; import nl.cwi.monetdb.embedded.env.AbstractConnectionResult; import nl.cwi.monetdb.embedded.env.MonetDBEmbeddedConnection; /** * Base class for statement results with data * * @author <a href="mailto:pedro.ferreira@monetdbsolutions.com">Pedro Ferreira</a> */ public abstract class AbstractResultTable extends AbstractConnectionResult { public AbstractResultTable(MonetDBEmbeddedConnection connection) { super(connection); } /** * Returns an array of columns in the result set; * * @return An array of columns in the result set; */ protected abstract AbstractColumn<?>[] getColumns(); /** * Returns the number of columns in the result set. * * @return Number of columns */ public abstract int getNumberOfColumns(); /** * Returns the number of rows in the result set. * * @return Number of rows */ public abstract int getNumberOfRows(); /** * Get the columns names as a string array. * * @return The columns names array */ public String[] getColumnNames() { int i = 0; String[] result = new String[this.getNumberOfColumns()]; for(AbstractColumn col : this.getColumns()) { result[i] = col.getColumnName(); } return result; } /** * Get the columns types as a string array. * * @return The columns types array */ public String[] getColumnTypes() { int i = 0; String[] result = new String[this.getNumberOfColumns()]; for(AbstractColumn col : this.getColumns()) { result[i] = col.getColumnType(); } return result; } /** * Get the Java mappings as a MonetDBToJavaMapping array. * * @return The columns MonetDBToJavaMapping array */ public MonetDBToJavaMapping[] getMappings() { int i = 0; MonetDBToJavaMapping[] result = new MonetDBToJavaMapping[this.getNumberOfColumns()]; for(AbstractColumn col : this.getColumns()) { result[i] = col.getMapping(); } return result; } /** * Get the columns digits as a int array. * * @return The columns digits array */ public int[] getColumnDigits() { int i = 0; int[] result = new int[this.getNumberOfColumns()]; for(AbstractColumn col : this.getColumns()) { result[i] = col.getColumnDigits(); } return result; } /** * Get the columns scales as a int array. * * @return The columns scales array */ public int[] getColumnScales() { int i = 0; int[] result = new int[this.getNumberOfColumns()]; for(AbstractColumn col :this.getColumns()) { result[i] = col.getColumnScale(); } return result; } }