# Record Class RSColumn

java.lang.Object
java.lang.Record
org.apache.cayenne.access.jdbc.RSColumn

public record RSColumn(String rsName, int rsType, String dataRowName, ExtendedType<?> reader, DbAttribute attribute) extends Record
A descriptor of a ResultSet column.

Since:
  5.0

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `RSColumn.RowBuilder`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `RSColumn(String rsName, int rsType, String dataRowName, ExtendedType<?> reader, DbAttribute attribute)`
  Creates an instance of a `RSColumn` record class.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `DbAttribute`
  `attribute()`
  Returns the value of the `attribute` record component.
  `String`
  `dataRowName()`
  Returns the value of the `dataRowName` record component.
  `boolean`
  `equals(Object o)`
  Returns true if another object is a ColumnDescriptor with the same name and data row key.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `ExtendedType<?>`
  `reader()`
  Returns the value of the `reader` record component.
  `static RSColumn.RowBuilder`
  `rowBuilder()`
  Creates a `RSColumn.RowBuilder` that assembles the array of `RSColumn`s describing a result row.
  `String`
  `rsName()`
  Returns the value of the `rsName` record component.
  `int`
  `rsType()`
  Returns the value of the `rsType` record component.
  `final String`
  `toString()`
  Returns a string representation of this record class.

  ### Methods inherited from class Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### RSColumn

    public RSColumn(String rsName, int rsType, String dataRowName, ExtendedType<?> reader, DbAttribute attribute)
    Creates an instance of a `RSColumn` record class.
    Parameters:
      `rsName` - the value for the `rsName` record component
      `rsType` - the value for the `rsType` record component
      `dataRowName` - the value for the `dataRowName` record component
      `reader` - the value for the `reader` record component
      `attribute` - the value for the `attribute` record component

- ## Method Details

  - ### equals

    public boolean equals(Object o)
    Returns true if another object is a ColumnDescriptor with the same name and data row key. Other fields are ignored in the equality test.
    Specified by:
      `equals` in class `Record`

  - ### hashCode

    public int hashCode()
    Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
    Specified by:
      `hashCode` in class `Record`
    Returns:
      a hash code value for this object

  - ### rowBuilder

    public static RSColumn.RowBuilder rowBuilder()
    Creates a `RSColumn.RowBuilder` that assembles the array of `RSColumn`s describing a result row.
    Since:
      5.0

  - ### toString

    public final String toString()
    Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
    Specified by:
      `toString` in class `Record`
    Returns:
      a string representation of this object

  - ### rsName

    public String rsName()
    Returns the value of the `rsName` record component.
    Returns:
      the value of the `rsName` record component

  - ### rsType

    public int rsType()
    Returns the value of the `rsType` record component.
    Returns:
      the value of the `rsType` record component

  - ### dataRowName

    public String dataRowName()
    Returns the value of the `dataRowName` record component.
    Returns:
      the value of the `dataRowName` record component

  - ### reader

    public ExtendedType<?> reader()
    Returns the value of the `reader` record component.
    Returns:
      the value of the `reader` record component

  - ### attribute

    public DbAttribute attribute()
    Returns the value of the `attribute` record component.
    Returns:
      the value of the `attribute` record component