Package groovy.sql

# Class ResultSetMetaDataWrapper

java.lang.Object
groovy.lang.GroovyObjectSupport
groovy.sql.ResultSetMetaDataWrapper

All Implemented Interfaces:
  `GroovyObject`

public class ResultSetMetaDataWrapper extends GroovyObjectSupport
This class defines a wrapper for accessing a specific column in `ResultSetMetaData`. This allows iteration over columns using idiomatic Groovy, e.g.:

     meta.each {col ->
       println col.columnName
     }

All `ResultSetMetaData` column methods taking a column index are available on a column either as a no-arg getter or via a property.

This wrapper is created by an iterator invoked for `ResultSetMetaData`.

See Also:
  - `SqlExtensions`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ResultSetMetaDataWrapper(ResultSetMetaData target, int index)`
  Creates a wrapper for a single metadata column.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `getProperty(String property)`
  Resolves a metadata property by invoking the corresponding getter for this wrapper's column.
  `Object`
  `invokeMethod(String name, Object args)`
  Invokes a metadata method after prepending this wrapper's column index.
  `void`
  `setProperty(String property, Object newValue)`
  Always rejects property writes because result-set metadata is read-only.

  ### Methods inherited from class groovy.lang.GroovyObjectSupport

  `getMetaClass, setMetaClass`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ResultSetMetaDataWrapper

    public ResultSetMetaDataWrapper(ResultSetMetaData target, int index)
    Creates a wrapper for a single metadata column.
    Parameters:
      `target` - the metadata instance to wrap
      `index` - the 1-based column index represented by this wrapper

- ## Method Details

  - ### invokeMethod

    public Object invokeMethod(String name, Object args)
    Invokes a metadata method after prepending this wrapper's column index.
    Parameters:
      `name` - the metadata method name
      `args` - the original method arguments
    Returns:
      the delegated result

  - ### getProperty

    public Object getProperty(String property)
    Resolves a metadata property by invoking the corresponding getter for this wrapper's column.
    Parameters:
      `property` - the property name
    Returns:
      the resolved property value

  - ### setProperty

    public void setProperty(String property, Object newValue)
    Always rejects property writes because result-set metadata is read-only.
    Parameters:
      `property` - the property name
      `newValue` - the requested value