## org.apache.taglibs.standard.tag.common.sql
Class ResultImpl

    java.lang.Object
      org.apache.taglibs.standard.tag.common.sql.ResultImpl

All Implemented Interfaces:
  Result

    public class ResultImpl

extends Object
implements Result

This class creates a cached version of a `ResultSet`. It's represented as a `Result` implementation, capable of returing an array of `Row` objects containing a `Column` instance for each column in the row.

Note -- this is a private copy for the RI to avoid making the corresponding class in javax.servlet.* public.

Author:
  Hans Bergsten, Justyna Horwat

Constructor Summary
`ResultImpl(ResultSet rs, int startRow, int maxRows)` This constructor reads the ResultSet and saves a cached copy.

Method Summary
`String[]` `getColumnNames()` Returns an array of String objects.
`int` `getRowCount()` Returns the number of rows in the cached ResultSet
`SortedMap[]` `getRows()` Returns an array of SortedMap objects.
`Object[][]` `getRowsByIndex()` Returns an array of Object[] objects.
`boolean` `isLimitedByMaxRows()` Returns true of the query was limited by a maximum row setting

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ResultImpl

    public ResultImpl(ResultSet rs,
                      int startRow,
                      int maxRows)
               throws SQLException

  This constructor reads the ResultSet and saves a cached copy.

  Parameters:
    `rs` - an open `ResultSet`, positioned before the first row
    `startRow,` - beginning row to be cached
    `maxRows,` - query maximum rows limit
  Throws:
    `if` - a database error occurs
    `SQLException`

Method Detail

### getRows

    public SortedMap[] getRows()

  Returns an array of SortedMap objects. The SortedMap object key is the ColumnName and the value is the ColumnValue. SortedMap was created using the CASE_INSENSITIVE_ORDER Comparator so the key is the case insensitive representation of the ColumnName.

  Specified by:
    `getRows` in interface `Result`
  Returns:
    an array of Map, or null if there are no rows

### getRowsByIndex

    public Object[][] getRowsByIndex()

  Returns an array of Object[] objects. The first index designates the Row, the second the Column. The array stores the value at the specified row and column.

  Specified by:
    `getRowsByIndex` in interface `Result`
  Returns:
    an array of Object[], or null if there are no rows

### getColumnNames

    public String[] getColumnNames()

  Returns an array of String objects. The array represents the names of the columns arranged in the same order as in the getRowsByIndex() method.

  Specified by:
    `getColumnNames` in interface `Result`
  Returns:
    an array of String[]

### getRowCount

    public int getRowCount()

  Returns the number of rows in the cached ResultSet

  Specified by:
    `getRowCount` in interface `Result`
  Returns:
    the number of cached rows, or -1 if the Result could not be initialized due to SQLExceptions

### isLimitedByMaxRows

    public boolean isLimitedByMaxRows()

  Returns true of the query was limited by a maximum row setting

  Specified by:
    `isLimitedByMaxRows` in interface `Result`
  Returns:
    true if the query was limited by a MaxRows attribute

Copyright © 2008 Mort Bay Consulting. All Rights Reserved.