Class Column

All Implemented Interfaces:
Bindable<JaxbHbmColumnType>, Cloneable<Column>

public class Column extends Selection<JaxbHbmColumnType> implements Cloneable<Column>
An implementation of Selection that represents a logical column.
  • Constructor Details

    • Column

      public Column(String name)
      Create a column with just a name.
      Parameters:
      name - the name of the column
    • Column

      public Column(String name, boolean quoted)
      Create a column with just a name.
      Parameters:
      name - the name of the column
      quoted - whether the name is to be quoted or not
    • Column

      public Column(String name, Long length, Integer scale, Integer precision, String sqlType, String read, String write)
      Creates a column without a non-quoted name.
      Parameters:
      name - the name of the column, never null
      length - the length, may be null
      scale - the scale, may be null
      precision - the precision, may be null
      sqlType - the sql-type, may be null
      read - the custom read, may be null
      write - the custom write, may be null
    • Column

      public Column(String name, Long length, Integer scale, Integer precision, String sqlType, String read, String write, boolean quoted)
      Creates a column
      Parameters:
      name - the name of the column, never null
      length - the length, may be null
      scale - the scale, may be null
      precision - the precision, may be null
      sqlType - the sql-type, may be null
      read - the custom read, may be null
      write - the custom write, may be null
      quoted - whether to quote the column name or not
    • Column

      public Column(Column other)
      Copy constructor that performs a deep-copy.
      Parameters:
      other - the column to copy
  • Method Details

    • getName

      public String getName()
    • setName

      public void setName(String name)
    • deepCopy

      public Column deepCopy()
      Description copied from interface: Cloneable
      Creates a new, deep-copied instance of this object
      Specified by:
      deepCopy in interface Cloneable<Column>
      Returns:
      a deep-copy clone of the referenced object
    • build

      public JaxbHbmColumnType build()
      Description copied from interface: Bindable
      Builds the specified binded class type.
      Specified by:
      build in interface Bindable<JaxbHbmColumnType>
      Returns:
      instance of the bindable class type, never null
    • from

      public static Column from(Selectable selectable)
      Creates an Envers column mapping from an Hibernate ORM column mapping.
      Parameters:
      selectable - the ORM column mapping
      Returns:
      the envers column mapping