Class PrimaryKey


  • public class PrimaryKey
    extends CandidateKey
    Representation of the primary key of a table.
    • Field Detail

      • name

        protected String name
        Name of the key.
      • table

        protected Table table
        Table that the key applies to.
      • columns

        protected List<Column> columns
        Columns that the key relates to.
    • Constructor Detail

      • PrimaryKey

        public PrimaryKey​(Table table)
        Creates a primary key. A default name of the primary key is created by the constructor. This name can be overwritten.
        Parameters:
        table - Table that this is the PK for
    • Method Detail

      • size

        public int size()
        Accessor for the size.
        Returns:
        The size.
      • equals

        public boolean equals​(Object obj)
        Equality operator.
        Overrides:
        equals in class CandidateKey
        Parameters:
        obj - Object to compare against
        Returns:
        Whether they are equal.
      • hashCode

        public int hashCode()
        Hashcode operator.
        Overrides:
        hashCode in class CandidateKey
        Returns:
        The hashcode
      • toString

        public String toString()
        Stringifier method. Generates a form of the PK ready to be used in a DDL statement. e.g
        PRIMARY KEY (col1,col2)
        Overrides:
        toString in class CandidateKey
        Returns:
        The string form of this object. Ready to be used in a DDL statement.
      • setName

        public void setName​(String name)
        Mutator for the key name.
        Parameters:
        name - The key name
      • getName

        public String getName()
        Accessor for the key name.
        Returns:
        Key name
      • getTable

        public Table getTable()
        Accessor for the table
        Returns:
        table
      • getColumns

        public List<Column> getColumns()
        Accessor for the columns that the key relates to.
        Returns:
        the List of columns.
      • getColumnList

        public String getColumnList()
        Accessor for the column list
        Returns:
        The column list
      • assertSameDatastoreObject

        protected void assertSameDatastoreObject​(Column col)
        Utility to assert if the column is for a different table.
        Parameters:
        col - The column to compare with
      • setMinSize

        protected static void setMinSize​(List list,
                                         int size)
      • getColumnList

        public static String getColumnList​(List<Column> cols)
        Method to return the list of columns which the key applies to.
        Parameters:
        cols - The columns.
        Returns:
        The column list.