Package: groovy.sql

## [Java] Class ResultSetMetaDataWrapper

- groovy.sql.ResultSetMetaDataWrapper

-     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 and description
    `ResultSetMetaDataWrapper(ResultSetMetaData target, int index)` Creates a wrapper for a single metadata column.

  - ### Methods Summary

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

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class GroovyObjectSupport` | `getMetaClass, setMetaClass`

- - ### Constructor Detail

    - #### 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 Detail

    - #### 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

    - #### 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

    - #### 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