Groovy Documentation

groovy.sql
[Java] Class GroovyResultSetExtension

java.lang.Object
  groovy.lang.GroovyObjectSupport
      groovy.sql.GroovyResultSetExtension

public class GroovyResultSetExtension
extends GroovyObjectSupport

GroovyResultSetExtension implements additional logic for ResultSet. Due to the version incompatibility between java6 and java5 this methods are moved here from the original GroovyResultSet class. The methods in this class are used by the proxy GroovyResultSetProxy, which will try to invoke methods on this class before invoking it on ResultSet.

This class is not intended to be used directly. Should be used through GroovyResultSetProxy only!

Authors:
Jochen Theodorou
See Also:
GroovyResultSet
GroovyResultSetProxy


Constructor Summary
GroovyResultSetExtension(java.sql.ResultSet set)

Creates a GroovyResultSet implementation.

 
Method Summary
void add(java.util.Map values)

Adds a new row to the result set

void eachRow(Closure closure)

Call the closure once for each row in the result set.

java.lang.Object getAt(int index)

Supports integer based subscript operators for accessing at numbered columns starting at zero.

java.lang.Object getProperty(java.lang.String columnName)

Gets the value of the designated column in the current row of as an Object.

protected java.sql.ResultSet getResultSet()

Gets the current result set.

java.lang.Object invokeMethod(java.lang.String name, java.lang.Object args)

boolean next()

Moves the cursor down one row from its current position.

protected int normalizeIndex(int index)

Takes a zero based index and convert it into an SQL based 1 based index.

boolean previous()

Moves the cursor to the previous row in this getResultSet() object.

void putAt(int index, java.lang.Object newValue)

Supports integer based subscript operators for updating the values of numbered columns starting at zero.

void setProperty(java.lang.String columnName, java.lang.Object newValue)

Updates the designated column with an Object value.

java.lang.String toString()

 
Methods inherited from class GroovyObjectSupport
getMetaClass, getProperty, invokeMethod, setMetaClass, setProperty
 
Methods inherited from class java.lang.Object
java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()
 

Constructor Detail

GroovyResultSetExtension

public GroovyResultSetExtension(java.sql.ResultSet set)
Creates a GroovyResultSet implementation.
Parameters:
set - the result set


 
Method Detail

add

public void add(java.util.Map values)
Adds a new row to the result set
throws:
java.sql.SQLException if something goes wrong
Parameters:
values - a map containing the mappings for column names and values
See Also:
java.sql.ResultSet#insertRow()
ResultSet#updateObject(java.lang.String, java.lang.Object)
java.sql.ResultSet#moveToInsertRow()


eachRow

public void eachRow(Closure closure)
Call the closure once for each row in the result set.
throws:
SQLException if something goes wrong
Parameters:
closure - the closure to perform on each row


getAt

public java.lang.Object getAt(int index)
Supports integer based subscript operators for accessing at numbered columns starting at zero. Negative indices are supported, they will count from the last column backwards.
throws:
java.sql.SQLException if something goes wrong
Parameters:
index - is the number of the column to look at starting at 1
Returns:
the returned column value
See Also:
java.sql.ResultSet#getObject(int)


getProperty

public java.lang.Object getProperty(java.lang.String columnName)
Gets the value of the designated column in the current row of as an Object.
throws:
MissingPropertyException if an SQLException happens while getting the object
Parameters:
columnName - the SQL name of the column
Returns:
the returned column value
See Also:
GroovyObject.getProperty
ResultSet#getObject(java.lang.String)


getResultSet

protected java.sql.ResultSet getResultSet()
Gets the current result set.
throws:
SQLException if the result set can not be returned
Returns:
the result set


invokeMethod

public java.lang.Object invokeMethod(java.lang.String name, java.lang.Object args)


next

public boolean next()
Moves the cursor down one row from its current position. A getResultSet() cursor is initially positioned before the first row; the first call to the method next makes the first row the current row; the second call makes the second row the current row, and so on.

If an input stream is open for the current row, a call to the method next will implicitly close it. A getResultSet() object's warning chain is cleared when a new row is read.

throws:
SQLException if a database access error occurs
Returns:
true if the new current row is valid; false if there are no more rows


normalizeIndex

protected int normalizeIndex(int index)
Takes a zero based index and convert it into an SQL based 1 based index. A negative index will count backwards from the last column.
throws:
SQLException if some exception occurs finding out the column count
Parameters:
index - the raw requested index (may be negative)
Returns:
a JDBC index


previous

public boolean previous()
Moves the cursor to the previous row in this getResultSet() object.
throws:
SQLException if a database access error occurs or the result set type is TYPE_FORWARD_ONLY
Returns:
true if the cursor is on a valid row; false if it is off the result set
Since:
1.2


putAt

public void putAt(int index, java.lang.Object newValue)
Supports integer based subscript operators for updating the values of numbered columns starting at zero. Negative indices are supported, they will count from the last column backwards.
throws:
java.sql.SQLException if something goes wrong
Parameters:
index - is the number of the column to look at starting at 1
newValue - the updated value
See Also:
ResultSet#updateObject(java.lang.String, java.lang.Object)


setProperty

public void setProperty(java.lang.String columnName, java.lang.Object newValue)
Updates the designated column with an Object value.
throws:
MissingPropertyException if an SQLException happens while setting the new value
Parameters:
columnName - the SQL name of the column
newValue - the updated value
See Also:
GroovyObject.setProperty
ResultSet#updateObject(java.lang.String, java.lang.Object)


toString

public java.lang.String toString()


 

Groovy Documentation